Протокол¶
Оглавление¶
-
deviceapis/device/v1/deviceapis_device_safe_emergency_v1.proto
- GetSafeCityEmergencyStatusRequest
- GetSafeCityEmergencyStatusResponse
- GetSafeCityEmergencyStatusResponse.CurrentStatus
- PostSafeCityEmergencyStartRequest
- PostSafeCityEmergencyStartResponse
- PostSafeCityEmergencyStartResponse.Error
- PostSafeCityEmergencyStartResponse.Error.SoundFileNotFound
- PostSafeCityEmergencyStopRequest
Схема классов¶
deviceapis/device/v1/deviceapis_device_safe_emergency_v1.proto¶
Сервис управления оповещением
SafeCityEmergencyService¶
Сервис управления оповещением
| Название метода | Описание | Тип запроса | Тип ответа |
|---|---|---|---|
| PostSafeCityEmergencyStart | Старт оповещения. Где Tick - один цикл оповещения на одном или двух направлениях (трубка, динамик или трубка и динамик). playbacks_per_tick - Количество воспроизведений файла в каждом цикле оповещения на одном направлении (трубка или динамик). tick_count - Количество воспроизведений циклов оповещения. Длительность оповещения = tick_count * (Х * playbacks_per_tick (трубка) + Х * playbacks_per_tick (динамик)). total_duration - Максимальная общая длительность оповещения. По истечении total_duration секунд оповещение прекращается независимо от количества циклов | deviceapis.device.v1.PostSafeCityEmergencyStartRequest | deviceapis.device.v1.PostSafeCityEmergencyStartResponse |
| PostSafeCityEmergencyStop | Прекращение оповещения | deviceapis.device.v1.PostSafeCityEmergencyStopRequest | deviceapis.device.v1.PostSafeCityEmergencyStopResponse |
| GetSafeCityEmergencyStatus | Получение статуса оповещения | deviceapis.device.v1.GetSafeCityEmergencyStatusRequest | deviceapis.device.v1.GetSafeCityEmergencyStatusResponse |
EmergencyScenario¶
Сценарий оповещения
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| file_name | Имя файла | string | REQUIRED |
| total_duration | Максимальная общая длительность оповещения, в секундах. # Диапазон: 0..65536 | int32 | REQUIRED |
| playback_per_tick | Количество воспроизведений файла в каждом цикле оповещения на одном направлении (трубка или динамик). # Диапазон: 0..65536 | int32 | REQUIRED |
| tick_count | Количество воспроизведений циклов оповещения. # Диапазон: 0..65536 | int32 | REQUIRED |
| play_order_type | Тип проигрывания | deviceapis.device.v1.EmergencyScenario.PlayOrderType | REQUIRED |
GetSafeCityEmergencyStatusRequest¶
Запрос на получение статуса оповещения
GetSafeCityEmergencyStatusResponse¶
Ответ на запрос на получение статуса оповещения
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| data | Статус оповещения | deviceapis.device.v1.GetSafeCityEmergencyStatusResponse.CurrentStatus |
GetSafeCityEmergencyStatusResponse.CurrentStatus¶
Статус оповещения
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| is_running | Признак работающего оповещения в текущий момент | bool | REQUIRED |
| emergency_scenario_play_order_type | Тип проигрывания | deviceapis.device.v1.EmergencyScenario.PlayOrderType | |
| file_name | Имя файла | string |
PostSafeCityEmergencyStartRequest¶
Запрос на старт оповещения
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| data | Сценарий оповещения | deviceapis.device.v1.EmergencyScenario | REQUIRED |
PostSafeCityEmergencyStartResponse¶
Ответ на запрос на старт оповещения
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| error | Ошибка | optional deviceapis.device.v1.PostSafeCityEmergencyStartResponse.Error |
PostSafeCityEmergencyStartResponse.Error¶
Ошибка запроса
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| validation | Ошибка валидации | optional deviceapis.device.v1.ValidationError | |
| sound_file_not_found | Звуковой файл не найден | optional deviceapis.device.v1.PostSafeCityEmergencyStartResponse.Error.SoundFileNotFound |
PostSafeCityEmergencyStartResponse.Error.SoundFileNotFound¶
Звуковой файл не найден
PostSafeCityEmergencyStopRequest¶
Запрос на прекращение оповещения через домофон
PostSafeCityEmergencyStopResponse¶
Ответ на запрос на прекращение оповещения через домофон
EmergencyScenario.PlayOrderType¶
Тип проигрывания.
Тип: byte¶
| Номер | Тип | Название |
|---|---|---|
| 0 | PLAY_ORDER_TYPE_UNKNOWN | Значение не указано |
| 1 | HANDSET_ONLY | Только на аналоговые трубки |
| 2 | SPEAKER_ONLY | Tолько на динамик домофона |
| 3 | HANDSET_FIRST | Сначала на аналоговые трубки проигрываем заданное количество тактов, затем на динамик домофона |
| 4 | SPEAKER_FIRST | Сначала на динамик домофона проигрываем заданное количество тактов, затем на аналоговые трубки |
| 5 | HANDSET_AND_SPEAKER | Одновременно на аналоговые трубки проигрываем заданное количество тактов, затем на динамик домофона |
Скалярные типы значений¶
| .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 |