# Протокол

## Оглавление

- [deviceapis/device/v1/deviceapis_device_relay_v1.proto](#deviceapis_device_v1_deviceapis_device_relay_v1-proto)
    - [RelayService](#deviceapis-device-v1-RelayService)
  
    - [EditRelayPropsDtmfRequest](#deviceapis-device-v1-EditRelayPropsDtmfRequest)
    - [EditRelayPropsDtmfResponse](#deviceapis-device-v1-EditRelayPropsDtmfResponse)
    - [EditRelayPropsDtmfResponse.Error](#deviceapis-device-v1-EditRelayPropsDtmfResponse-Error)
    - [EditRelayPropsOpenRequest](#deviceapis-device-v1-EditRelayPropsOpenRequest)
    - [EditRelayPropsOpenResponse](#deviceapis-device-v1-EditRelayPropsOpenResponse)
    - [EditRelayPropsOpenResponse.Error](#deviceapis-device-v1-EditRelayPropsOpenResponse-Error)
    - [GetRelayDtmfListRequest](#deviceapis-device-v1-GetRelayDtmfListRequest)
    - [GetRelayDtmfListResponse](#deviceapis-device-v1-GetRelayDtmfListResponse)
    - [GetRelayOpenListRequest](#deviceapis-device-v1-GetRelayOpenListRequest)
    - [GetRelayOpenListResponse](#deviceapis-device-v1-GetRelayOpenListResponse)
    - [GetRelayStatusListRequest](#deviceapis-device-v1-GetRelayStatusListRequest)
    - [GetRelayStatusListResponse](#deviceapis-device-v1-GetRelayStatusListResponse)
    - [PostRelayCloseRequest](#deviceapis-device-v1-PostRelayCloseRequest)
    - [PostRelayCloseResponse](#deviceapis-device-v1-PostRelayCloseResponse)
    - [PostRelayCloseResponse.Error](#deviceapis-device-v1-PostRelayCloseResponse-Error)
    - [PostRelayOpenPermanentlyRequest](#deviceapis-device-v1-PostRelayOpenPermanentlyRequest)
    - [PostRelayOpenPermanentlyResponse](#deviceapis-device-v1-PostRelayOpenPermanentlyResponse)
    - [PostRelayOpenPermanentlyResponse.Error](#deviceapis-device-v1-PostRelayOpenPermanentlyResponse-Error)
    - [PostRelayOpenRequest](#deviceapis-device-v1-PostRelayOpenRequest)
    - [PostRelayOpenResponse](#deviceapis-device-v1-PostRelayOpenResponse)
    - [PostRelayOpenResponse.Error](#deviceapis-device-v1-PostRelayOpenResponse-Error)
    - [RelayDtmf](#deviceapis-device-v1-RelayDtmf)
    - [RelayOpen](#deviceapis-device-v1-RelayOpen)
    - [RelayState](#deviceapis-device-v1-RelayState)
  
    - [RelayOpen.LockType](#deviceapis-device-v1-RelayOpen-LockType)
    - [RelayState.StateType](#deviceapis-device-v1-RelayState-StateType)
  


## [Схема классов](/svg/protos/key/deviceapis/device/v1/deviceapis_device_relay_v1.proto.svg)
<a href="/svg/protos/key/deviceapis/device/v1/deviceapis_device_relay_v1.proto.svg"><img src="/svg/protos/key/deviceapis/device/v1/deviceapis_device_relay_v1.proto.svg" alt="/svg/protos/key/deviceapis/device/v1/deviceapis_device_relay_v1.proto.svg" style="height:100%;"></a>




<a name="deviceapis_device_v1_deviceapis_device_relay_v1-proto"></a>

## [deviceapis/device/v1/deviceapis_device_relay_v1.proto](/protos/key/deviceapis/device/v1/deviceapis_device_relay_v1.proto)
Сервис управления реле устройства


<a name="deviceapis-device-v1-RelayService"></a>

### RelayService
 Сервис управления реле устройства

| Название метода | Описание | Тип запроса | Тип ответа |
| --------------- | -------- | ----------- | -----------|
| <a id="deviceapis-device-v1-PostRelayClose"></a> [PostRelayClose](#deviceapis-device-v1-PostRelayClose) | Метод закрытия реле. Закрытие реле принудительно без учета времени открытия. Отмена режима постоянного открытия | [deviceapis.device.v1.PostRelayCloseRequest](#deviceapis-device-v1-PostRelayCloseRequest) | [deviceapis.device.v1.PostRelayCloseResponse](#deviceapis-device-v1-PostRelayCloseResponse) |
| <a id="deviceapis-device-v1-PostRelayOpen"></a> [PostRelayOpen](#deviceapis-device-v1-PostRelayOpen) | Метод открытия реле | [deviceapis.device.v1.PostRelayOpenRequest](#deviceapis-device-v1-PostRelayOpenRequest) | [deviceapis.device.v1.PostRelayOpenResponse](#deviceapis-device-v1-PostRelayOpenResponse) |
| <a id="deviceapis-device-v1-PostRelayOpenPermanently"></a> [PostRelayOpenPermanently](#deviceapis-device-v1-PostRelayOpenPermanently) | Метод открытия реле без дальнейшего закрытия | [deviceapis.device.v1.PostRelayOpenPermanentlyRequest](#deviceapis-device-v1-PostRelayOpenPermanentlyRequest) | [deviceapis.device.v1.PostRelayOpenPermanentlyResponse](#deviceapis-device-v1-PostRelayOpenPermanentlyResponse) |
| <a id="deviceapis-device-v1-EditRelayPropsOpen"></a> [EditRelayPropsOpen](#deviceapis-device-v1-EditRelayPropsOpen) | Метод редактирования настроек открытия реле | [deviceapis.device.v1.EditRelayPropsOpenRequest](#deviceapis-device-v1-EditRelayPropsOpenRequest) | [deviceapis.device.v1.EditRelayPropsOpenResponse](#deviceapis-device-v1-EditRelayPropsOpenResponse) |
| <a id="deviceapis-device-v1-GetRelayOpenList"></a> [GetRelayOpenList](#deviceapis-device-v1-GetRelayOpenList) | Метод получения настроек открытия реле | [deviceapis.device.v1.GetRelayOpenListRequest](#deviceapis-device-v1-GetRelayOpenListRequest) | [deviceapis.device.v1.GetRelayOpenListResponse](#deviceapis-device-v1-GetRelayOpenListResponse) |
| <a id="deviceapis-device-v1-EditRelayPropsDtmf"></a> [EditRelayPropsDtmf](#deviceapis-device-v1-EditRelayPropsDtmf) | Метод редактирования настроек DTMF реле | [deviceapis.device.v1.EditRelayPropsDtmfRequest](#deviceapis-device-v1-EditRelayPropsDtmfRequest) | [deviceapis.device.v1.EditRelayPropsDtmfResponse](#deviceapis-device-v1-EditRelayPropsDtmfResponse) |
| <a id="deviceapis-device-v1-GetRelayDtmfList"></a> [GetRelayDtmfList](#deviceapis-device-v1-GetRelayDtmfList) | Метод получения настроек DTMF реле | [deviceapis.device.v1.GetRelayDtmfListRequest](#deviceapis-device-v1-GetRelayDtmfListRequest) | [deviceapis.device.v1.GetRelayDtmfListResponse](#deviceapis-device-v1-GetRelayDtmfListResponse) |
| <a id="deviceapis-device-v1-GetRelayStatusList"></a> [GetRelayStatusList](#deviceapis-device-v1-GetRelayStatusList) | Метод получения статусов реле устройства | [deviceapis.device.v1.GetRelayStatusListRequest](#deviceapis-device-v1-GetRelayStatusListRequest) | [deviceapis.device.v1.GetRelayStatusListResponse](#deviceapis-device-v1-GetRelayStatusListResponse) |

 <!-- end services -->


<a name="deviceapis-device-v1-EditRelayPropsDtmfRequest"></a>


### [EditRelayPropsDtmfRequest](#deviceapis-device-v1-EditRelayPropsDtmfRequest)
 Запрос на установку настроек DTMF реле


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-EditRelayPropsDtmfRequest-data"></a> [data](#deviceapis-device-v1-EditRelayPropsDtmfRequest-data) | Настройки DTMF реле |    [deviceapis.device.v1.RelayDtmf](#deviceapis-device-v1-RelayDtmf) | REQUIRED|
| <a id="deviceapis-device-v1-EditRelayPropsDtmfRequest-update_mask"></a> [update_mask](#deviceapis-device-v1-EditRelayPropsDtmfRequest-update_mask) | Маска полей обновления |    [google.protobuf.FieldMask](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | <nil>|






<a name="deviceapis-device-v1-EditRelayPropsDtmfResponse"></a>


### [EditRelayPropsDtmfResponse](#deviceapis-device-v1-EditRelayPropsDtmfResponse)
 Ответ на запрос на установку настроек DTMF


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-EditRelayPropsDtmfResponse-error"></a> [error](#deviceapis-device-v1-EditRelayPropsDtmfResponse-error) | Ошибка |  optional  [deviceapis.device.v1.EditRelayPropsDtmfResponse.Error](#deviceapis-device-v1-EditRelayPropsDtmfResponse-Error) | <nil>|






<a name="deviceapis-device-v1-EditRelayPropsDtmfResponse-Error"></a>


### [EditRelayPropsDtmfResponse.Error](#deviceapis-device-v1-EditRelayPropsDtmfResponse-Error)
 Ошибка запроса на установку настроек DTMF


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-EditRelayPropsDtmfResponse-Error-validation"></a> [validation](#deviceapis-device-v1-EditRelayPropsDtmfResponse-Error-validation) | Ошибка валидации |  optional  [deviceapis.device.v1.ValidationError](#deviceapis-device-v1-ValidationError) | <nil>|






<a name="deviceapis-device-v1-EditRelayPropsOpenRequest"></a>


### [EditRelayPropsOpenRequest](#deviceapis-device-v1-EditRelayPropsOpenRequest)
 Запрос редактирования настроек открытия реле


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-EditRelayPropsOpenRequest-data"></a> [data](#deviceapis-device-v1-EditRelayPropsOpenRequest-data) | Настройки реле |    [deviceapis.device.v1.RelayOpen](#deviceapis-device-v1-RelayOpen) | REQUIRED|
| <a id="deviceapis-device-v1-EditRelayPropsOpenRequest-update_mask"></a> [update_mask](#deviceapis-device-v1-EditRelayPropsOpenRequest-update_mask) | Маска полей обновления |    [google.protobuf.FieldMask](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | <nil>|






<a name="deviceapis-device-v1-EditRelayPropsOpenResponse"></a>


### [EditRelayPropsOpenResponse](#deviceapis-device-v1-EditRelayPropsOpenResponse)
 Ответ на запрос на установку настроек открытия реле


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-EditRelayPropsOpenResponse-error"></a> [error](#deviceapis-device-v1-EditRelayPropsOpenResponse-error) | Ошибка |  optional  [deviceapis.device.v1.EditRelayPropsOpenResponse.Error](#deviceapis-device-v1-EditRelayPropsOpenResponse-Error) | <nil>|






<a name="deviceapis-device-v1-EditRelayPropsOpenResponse-Error"></a>


### [EditRelayPropsOpenResponse.Error](#deviceapis-device-v1-EditRelayPropsOpenResponse-Error)
 Ошибка запроса на установку настроек открытия реле


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-EditRelayPropsOpenResponse-Error-validation"></a> [validation](#deviceapis-device-v1-EditRelayPropsOpenResponse-Error-validation) | Ошибка валидации |  optional  [deviceapis.device.v1.ValidationError](#deviceapis-device-v1-ValidationError) | <nil>|






<a name="deviceapis-device-v1-GetRelayDtmfListRequest"></a>


### [GetRelayDtmfListRequest](#deviceapis-device-v1-GetRelayDtmfListRequest)
 Запрос получения настроек DTMF реле






<a name="deviceapis-device-v1-GetRelayDtmfListResponse"></a>


### [GetRelayDtmfListResponse](#deviceapis-device-v1-GetRelayDtmfListResponse)
 Ответ на запрос получения настроек DTMF реле


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-GetRelayDtmfListResponse-data"></a> [data](#deviceapis-device-v1-GetRelayDtmfListResponse-data) | Настройки DTMF реле |  repeated  [deviceapis.device.v1.RelayDtmf](#deviceapis-device-v1-RelayDtmf) | <nil>|






<a name="deviceapis-device-v1-GetRelayOpenListRequest"></a>


### [GetRelayOpenListRequest](#deviceapis-device-v1-GetRelayOpenListRequest)
 Запрос получения настроек открытия реле






<a name="deviceapis-device-v1-GetRelayOpenListResponse"></a>


### [GetRelayOpenListResponse](#deviceapis-device-v1-GetRelayOpenListResponse)
 Ответ на запрос получения настроек открытия реле


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-GetRelayOpenListResponse-data"></a> [data](#deviceapis-device-v1-GetRelayOpenListResponse-data) | Настройки открытия реле |  repeated  [deviceapis.device.v1.RelayOpen](#deviceapis-device-v1-RelayOpen) | <nil>|






<a name="deviceapis-device-v1-GetRelayStatusListRequest"></a>


### [GetRelayStatusListRequest](#deviceapis-device-v1-GetRelayStatusListRequest)
 Запрос получения статусов реле устройства






<a name="deviceapis-device-v1-GetRelayStatusListResponse"></a>


### [GetRelayStatusListResponse](#deviceapis-device-v1-GetRelayStatusListResponse)
 Ответ на запрос получения статусов реле устройства


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-GetRelayStatusListResponse-data"></a> [data](#deviceapis-device-v1-GetRelayStatusListResponse-data) | Список состояний реле |  repeated  [deviceapis.device.v1.RelayState](#deviceapis-device-v1-RelayState) | <nil>|






<a name="deviceapis-device-v1-PostRelayCloseRequest"></a>


### [PostRelayCloseRequest](#deviceapis-device-v1-PostRelayCloseRequest)
 Запрос закрытия реле


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-PostRelayCloseRequest-relay_index"></a> [relay_index](#deviceapis-device-v1-PostRelayCloseRequest-relay_index) | Индекс реле. Диапазон: 1..32767 |    [int32](#scalar-types) | REQUIRED|






<a name="deviceapis-device-v1-PostRelayCloseResponse"></a>


### [PostRelayCloseResponse](#deviceapis-device-v1-PostRelayCloseResponse)
 Ответ на запрос закрытия реле


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-PostRelayCloseResponse-error"></a> [error](#deviceapis-device-v1-PostRelayCloseResponse-error) | Ошибка |  optional  [deviceapis.device.v1.PostRelayCloseResponse.Error](#deviceapis-device-v1-PostRelayCloseResponse-Error) | <nil>|






<a name="deviceapis-device-v1-PostRelayCloseResponse-Error"></a>


### [PostRelayCloseResponse.Error](#deviceapis-device-v1-PostRelayCloseResponse-Error)
 Ошибка запроса закрытия реле


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-PostRelayCloseResponse-Error-validation"></a> [validation](#deviceapis-device-v1-PostRelayCloseResponse-Error-validation) | Ошибка валидации |  optional  [deviceapis.device.v1.ValidationError](#deviceapis-device-v1-ValidationError) | <nil>|






<a name="deviceapis-device-v1-PostRelayOpenPermanentlyRequest"></a>


### [PostRelayOpenPermanentlyRequest](#deviceapis-device-v1-PostRelayOpenPermanentlyRequest)
 Запрос открытия реле без дальнейшего закрытия


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-PostRelayOpenPermanentlyRequest-relay_index"></a> [relay_index](#deviceapis-device-v1-PostRelayOpenPermanentlyRequest-relay_index) | Индекс реле. Диапазон: 1..32767 |    [int32](#scalar-types) | REQUIRED|






<a name="deviceapis-device-v1-PostRelayOpenPermanentlyResponse"></a>


### [PostRelayOpenPermanentlyResponse](#deviceapis-device-v1-PostRelayOpenPermanentlyResponse)
 Ответ на запрос открытия реле без дальнейшего закрытия


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-PostRelayOpenPermanentlyResponse-error"></a> [error](#deviceapis-device-v1-PostRelayOpenPermanentlyResponse-error) | Ошибка |  optional  [deviceapis.device.v1.PostRelayOpenPermanentlyResponse.Error](#deviceapis-device-v1-PostRelayOpenPermanentlyResponse-Error) | <nil>|






<a name="deviceapis-device-v1-PostRelayOpenPermanentlyResponse-Error"></a>


### [PostRelayOpenPermanentlyResponse.Error](#deviceapis-device-v1-PostRelayOpenPermanentlyResponse-Error)
 Ошибка запроса открытия реле без дальнейшего закрытия


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-PostRelayOpenPermanentlyResponse-Error-validation"></a> [validation](#deviceapis-device-v1-PostRelayOpenPermanentlyResponse-Error-validation) | Ошибка валидации |  optional  [deviceapis.device.v1.ValidationError](#deviceapis-device-v1-ValidationError) | <nil>|






<a name="deviceapis-device-v1-PostRelayOpenRequest"></a>


### [PostRelayOpenRequest](#deviceapis-device-v1-PostRelayOpenRequest)
 Запрос открытия реле


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-PostRelayOpenRequest-relay_index"></a> [relay_index](#deviceapis-device-v1-PostRelayOpenRequest-relay_index) | Индекс реле. Диапазон: 1..32767 |    [int32](#scalar-types) | REQUIRED|
| <a id="deviceapis-device-v1-PostRelayOpenRequest-current_open_time"></a> [current_open_time](#deviceapis-device-v1-PostRelayOpenRequest-current_open_time) | Задержка в секундах. Если не передано, используется установленное значение времени открытия из настроек. Диапазон: 1..200 |    [int32](#scalar-types) | <nil>|






<a name="deviceapis-device-v1-PostRelayOpenResponse"></a>


### [PostRelayOpenResponse](#deviceapis-device-v1-PostRelayOpenResponse)
 Ответ на запрос открытия реле


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-PostRelayOpenResponse-error"></a> [error](#deviceapis-device-v1-PostRelayOpenResponse-error) | Ошибка |  optional  [deviceapis.device.v1.PostRelayOpenResponse.Error](#deviceapis-device-v1-PostRelayOpenResponse-Error) | <nil>|






<a name="deviceapis-device-v1-PostRelayOpenResponse-Error"></a>


### [PostRelayOpenResponse.Error](#deviceapis-device-v1-PostRelayOpenResponse-Error)
 Ошибка запроса открытия реле


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-PostRelayOpenResponse-Error-validation"></a> [validation](#deviceapis-device-v1-PostRelayOpenResponse-Error-validation) | Ошибка валидации |  optional  [deviceapis.device.v1.ValidationError](#deviceapis-device-v1-ValidationError) | <nil>|






<a name="deviceapis-device-v1-RelayDtmf"></a>


### [RelayDtmf](#deviceapis-device-v1-RelayDtmf)
 Настройки DTMF реле


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-RelayDtmf-relay_index"></a> [relay_index](#deviceapis-device-v1-RelayDtmf-relay_index) | Индекс реле. Диапазон: 1..32767 |    [int32](#scalar-types) | REQUIRED|
| <a id="deviceapis-device-v1-RelayDtmf-dtmf_code"></a> [dtmf_code](#deviceapis-device-v1-RelayDtmf-dtmf_code) | DTMF код. Для разных реле допускается одинаковый DTMF код. Один символ из 0,1,2,3,4,5,6,7,8,9,*,# |    [string](#scalar-types) | <nil>|






<a name="deviceapis-device-v1-RelayOpen"></a>


### [RelayOpen](#deviceapis-device-v1-RelayOpen)
 Настройки открытия реле


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-RelayOpen-relay_index"></a> [relay_index](#deviceapis-device-v1-RelayOpen-relay_index) | Индекс реле. Диапазон: 1..32767 |    [int32](#scalar-types) | REQUIRED|
| <a id="deviceapis-device-v1-RelayOpen-lock_type"></a> [lock_type](#deviceapis-device-v1-RelayOpen-lock_type) | Тип замка |    [deviceapis.device.v1.RelayOpen.LockType](#deviceapis-device-v1-RelayOpen-LockType) | <nil>|
| <a id="deviceapis-device-v1-RelayOpen-open_time_general"></a> [open_time_general](#deviceapis-device-v1-RelayOpen-open_time_general) | Общее время открытия. Диапазон: 1..200 |    [int32](#scalar-types) | <nil>|
| <a id="deviceapis-device-v1-RelayOpen-open_time_emergency"></a> [open_time_emergency](#deviceapis-device-v1-RelayOpen-open_time_emergency) | Время открытия в секундах при экстренном оповещении. При 0 - до конца экстренного оповещения. Диапазон: 0..3600 |    [int32](#scalar-types) | <nil>|






<a name="deviceapis-device-v1-RelayState"></a>


### [RelayState](#deviceapis-device-v1-RelayState)
 Состояние реле


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-RelayState-relay_index"></a> [relay_index](#deviceapis-device-v1-RelayState-relay_index) | Индекс реле. Диапазон: 1..32767 |    [int32](#scalar-types) | REQUIRED|
| <a id="deviceapis-device-v1-RelayState-state_type"></a> [state_type](#deviceapis-device-v1-RelayState-state_type) | Состояние |    [deviceapis.device.v1.RelayState.StateType](#deviceapis-device-v1-RelayState-StateType) | <nil>|





 <!-- end messages -->



<a name="deviceapis-device-v1-RelayOpen-LockType"></a>

### [RelayOpen.LockType](#deviceapis-device-v1-RelayOpen-LockType)
 Тип замка

| Номер | Тип | Название |
| ----- | --- | -------- |
| 0 | <a id="deviceapis-device-v1-RelayOpen-LockType-LOCK_TYPE_UNKNOWN"></a> [LOCK_TYPE_UNKNOWN](#deviceapis-device-v1-RelayOpen-LockType-LOCK_TYPE_UNKNOWN) | Значение не указано |
| 1 | <a id="deviceapis-device-v1-RelayOpen-LockType-ELECTROMAGNETIC"></a> [ELECTROMAGNETIC](#deviceapis-device-v1-RelayOpen-LockType-ELECTROMAGNETIC) | Электромагнитный (state_operation) |
| 2 | <a id="deviceapis-device-v1-RelayOpen-LockType-ELECTROMECHANICAL"></a> [ELECTROMECHANICAL](#deviceapis-device-v1-RelayOpen-LockType-ELECTROMECHANICAL) | Электромеханический (pulse_operation) |




<a name="deviceapis-device-v1-RelayState-StateType"></a>

### [RelayState.StateType](#deviceapis-device-v1-RelayState-StateType)
 Тип состояния

| Номер | Тип | Название |
| ----- | --- | -------- |
| 0 | <a id="deviceapis-device-v1-RelayState-StateType-STATE_TYPE_UNKNOWN"></a> [STATE_TYPE_UNKNOWN](#deviceapis-device-v1-RelayState-StateType-STATE_TYPE_UNKNOWN) | Значение не указано |
| 1 | <a id="deviceapis-device-v1-RelayState-StateType-OPEN_TEMPORARY"></a> [OPEN_TEMPORARY](#deviceapis-device-v1-RelayState-StateType-OPEN_TEMPORARY) | Открыто временно |
| 2 | <a id="deviceapis-device-v1-RelayState-StateType-CLOSED"></a> [CLOSED](#deviceapis-device-v1-RelayState-StateType-CLOSED) | Закрыто |
| 3 | <a id="deviceapis-device-v1-RelayState-StateType-OPEN_PERMANENT"></a> [OPEN_PERMANENT](#deviceapis-device-v1-RelayState-StateType-OPEN_PERMANENT) | Открыто на всегда |


 <!-- end enums -->

 <!-- end HasExtensions -->



## Скалярные типы значений
<a id="scalar-types"></a>

| .proto Type | Примечание | Python | Go | Ruby | C# | C++ | Java | PHP |
| ----------- | ---------- | ------ | -- | ---- | -- | --- | ---- | --- |
| [double](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) |  | float | float64 | Float | double | double | double | float |
| [float](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) |  | float | float32 | Float | float | float | float | float |
| [int32](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. | int | int32 | Bignum or Fixnum (as required) | int | int32 | int | integer |
| [int64](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. | int/long | int64 | Bignum | long | int64 | long | integer/string |
| [uint32](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | Uses variable-length encoding. | int/long | uint32 | Bignum or Fixnum (as required) | uint | uint32 | int | integer |
| [uint64](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | Uses variable-length encoding. | int/long | uint64 | Bignum or Fixnum (as required) | ulong | uint64 | long | integer/string |
| [sint32](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. | int | int32 | Bignum or Fixnum (as required) | int | int32 | int | integer |
| [sint64](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. | int/long | int64 | Bignum | long | int64 | long | integer/string |
| [fixed32](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | Always four bytes. More efficient than uint32 if values are often greater than 2^28. | int | uint32 | Bignum or Fixnum (as required) | uint | uint32 | int | integer |
| [fixed64](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | Always eight bytes. More efficient than uint64 if values are often greater than 2^56. | int/long | uint64 | Bignum | ulong | uint64 | long | integer/string |
| [sfixed32](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | Always four bytes. | int | int32 | Bignum or Fixnum (as required) | int | int32 | int | integer |
| [sfixed64](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | Always eight bytes. | int/long | int64 | Bignum | long | int64 | long | integer/string |
| [bool](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) |  | boolean | bool | TrueClass/FalseClass | bool | bool | boolean | boolean |
| [string](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | A string must always contain UTF-8 encoded or 7-bit ASCII text. | str/unicode | string | String (UTF-8) | string | string | String | string |
| [bytes](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | May contain any arbitrary sequence of bytes. | str | []byte | String (ASCII-8BIT) | ByteString | string | ByteString | string |

