Перейти к содержанию

Протокол

Оглавление

Схема классов

/svg/protos/key/deviceapis/device/v1/deviceapis_device_safe_emergency_v1.proto.svg

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