Протокол¶
Оглавление¶
Схема классов¶
deviceapis/device/v1/deviceapis_device_gate_v1.proto¶
Сервис управления настройками Gate режима
GateModeService¶
Сервис управления Gate режимом
| Название метода | Описание | Тип запроса | Тип ответа |
|---|---|---|---|
| GetGateMode | Метод получения Gate режима | deviceapis.device.v1.GetGateModeRequest | deviceapis.device.v1.GetGateModeResponse |
| SaveGateMode | Метод редактирования Gate режима | deviceapis.device.v1.SaveGateModeRequest | deviceapis.device.v1.SaveGateModeResponse |
GateMode¶
Настройки Gate режима
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| is_gate_mode_on | Флаг включения Gate режима. true=gate; false=ordinary | bool | |
| houses | Дома Gate режима. При редактировании массив полностью заменяется на отправленный | repeated deviceapis.device.v1.House |
GetGateModeRequest¶
Запрос получения Gate режима
GetGateModeResponse¶
Ответ на запрос получения Gate режима
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| data | Настройки Gate режима | optional deviceapis.device.v1.GateMode |
House¶
Дом Gate режима
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| address | Адрес дома | string | REQUIRED |
| prefix | Номер дома (подъезда) | string | REQUIRED |
| room_range | Диапазон квартир. Если не задан, то устройство позволяет набор любой квартиры | deviceapis.device.v1.House.RoomRange | |
| sip_server | Адрес Sip сервера. При пустом sip_server будет использован сервер SIP регистрации | string | |
| invite_template_type | Вариант подстановки номера дома и квартиры в SIP Invite. При отсутствии значения используется вариант H4LZ_F4LZ | deviceapis.device.v1.House.InviteTemplateType |
House.RoomRange¶
Диапазон квартир
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| first_room_number | Начало диапазона включительно | string | REQUIRED |
| last_room_number | Конец диапазона включительно | string | REQUIRED |
SaveGateModeRequest¶
Запрос редактирования Gate режима
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| data | Настройки Gate режима | deviceapis.device.v1.GateMode | REQUIRED |
SaveGateModeResponse¶
Ответ на запрос редактирования Gate режима
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| data | Настройки Gate режима | optional deviceapis.device.v1.GateMode | |
| error | Ошибка | optional deviceapis.device.v1.SaveGateModeResponse.Error |
SaveGateModeResponse.Error¶
Ошибка запроса
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| validation | Ошибка валидации | optional deviceapis.device.v1.ValidationError |
House.InviteTemplateType¶
Варианты подстановки номера дома и квартиры в SIP Invite
| Номер | Тип | Название |
|---|---|---|
| 0 | INVITE_TEMPLATE_TYPE_UNKNOWN | Значение не указано |
| 1 | H4LZ_F4LZ | 4 символа для номера дома с лидирующими нулями, 4 символа для номера квартиры с лидирующими нулями. Номера дома и квартиры при звонке подставляются в виде: 00120123@sip.acme.io |
| 2 | H4LZ_F4 | 4 символа для номера дома с лидирующими нулями, 4 или меньше символа для номера квартиры. Номера дома и квартиры при звонке подставляются в виде: 0012123@sip.acme.io |
| 3 | H4_F4LZ | 4 или меньше символа для номера дома, 4 символа для номера квартиры с лидирующими нулями. Номера дома и квартиры при звонке подставляются в виде: 120123@sip.acme.io |
Скалярные типы значений¶
| .proto Type | Примечание | Python | Go | Ruby | C# | C++ | Java | PHP |
|---|---|---|---|---|---|---|---|---|
| double | float | float64 | Float | double | double | double | float | |
| float | float | float32 | Float | float | float | float | float | |
| int32 | 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 | 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 | Uses variable-length encoding. | int/long | uint32 | Bignum or Fixnum (as required) | uint | uint32 | int | integer |
| uint64 | Uses variable-length encoding. | int/long | uint64 | Bignum or Fixnum (as required) | ulong | uint64 | long | integer/string |
| sint32 | 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 | 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 | 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 | 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 | Always four bytes. | int | int32 | Bignum or Fixnum (as required) | int | int32 | int | integer |
| sfixed64 | Always eight bytes. | int/long | int64 | Bignum | long | int64 | long | integer/string |
| bool | boolean | bool | TrueClass/FalseClass | bool | bool | boolean | boolean | |
| string | A string must always contain UTF-8 encoded or 7-bit ASCII text. | str/unicode | string | String (UTF-8) | string | string | String | string |
| bytes | May contain any arbitrary sequence of bytes. | str | []byte | String (ASCII-8BIT) | ByteString | string | ByteString | string |