Протокол¶
Оглавление¶
-
deviceapis/device/v1/deviceapis_device_sip_v1.proto
- EditSipAccountResponse
- EditSipAccountResponse.Error
- EditSipTimeoutSettingsRequest
- EditSipTimeoutSettingsResponse
- EditSipTimeoutSettingsResponse.Error
- GetSipAccountListRequest
- GetSipAccountListResponse
- GetSipAccountStatusListRequest
- GetSipAccountStatusListResponse
- GetSipAccountStatusListResponse.SipStatus
- GetSipTimeoutSettingsRequest
- GetSipTimeoutSettingsResponse
- SipAccount
Схема классов¶
deviceapis/device/v1/deviceapis_device_sip_v1.proto¶
Сервис управления настройками Sip
SipService¶
Сервис управления Sip
| Название метода | Описание | Тип запроса | Тип ответа |
|---|---|---|---|
| EditSipAccount | Метод редактирования Sip-аккаунта | deviceapis.device.v1.EditSipAccountRequest | deviceapis.device.v1.EditSipAccountResponse |
| GetSipAccountList | Метод получения списка Sip-аккаунтов | deviceapis.device.v1.GetSipAccountListRequest | deviceapis.device.v1.GetSipAccountListResponse |
| EditSipTimeoutSettings | Метод редактирования настроек максимального времени общения и дозвона | deviceapis.device.v1.EditSipTimeoutSettingsRequest | deviceapis.device.v1.EditSipTimeoutSettingsResponse |
| GetSipTimeoutSettings | Метод получения настроек максимального времени общения и дозвона | deviceapis.device.v1.GetSipTimeoutSettingsRequest | deviceapis.device.v1.GetSipTimeoutSettingsResponse |
| GetSipAccountStatusList | Метод получения статусов регистрации Sip-аккаунтов | deviceapis.device.v1.GetSipAccountStatusListRequest | deviceapis.device.v1.GetSipAccountStatusListResponse |
EditSipAccountRequest¶
Запрос на редактирование Sip-аккаунта
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| data | Sip-аккаунт | deviceapis.device.v1.SipAccount | REQUIRED |
| update_mask | Маска полей обновления | google.protobuf.FieldMask |
EditSipAccountResponse¶
Ответ на запрос редактирования Sip-аккаунта
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| error | Ошибка | optional deviceapis.device.v1.EditSipAccountResponse.Error |
EditSipAccountResponse.Error¶
Ошибка запроса редактирования Sip-аккаунта
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| validation | Ошибка валидации | optional deviceapis.device.v1.ValidationError |
EditSipTimeoutSettingsRequest¶
Запрос редактирования настроек максимального времени общения и дозвона
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| data | Настройки максимального времени общения и дозвона | deviceapis.device.v1.SipTimeoutSettings | REQUIRED |
| update_mask | Маска полей обновления | google.protobuf.FieldMask |
EditSipTimeoutSettingsResponse¶
Ответ на запрос редактирования настроек максимального времени общения и дозвона
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| error | Ошибка | optional deviceapis.device.v1.EditSipTimeoutSettingsResponse.Error |
EditSipTimeoutSettingsResponse.Error¶
Ошибка запроса редактирования настроек максимального времени общения и дозвона
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| validation | Ошибка валидации | optional deviceapis.device.v1.ValidationError |
GetSipAccountListRequest¶
Запрос получения списка Sip-аккаунтов
GetSipAccountListResponse¶
Ответ на запрос получения списка Sip-аккаунтов
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| data | Массив Sip-аккаунтов | repeated deviceapis.device.v1.SipAccount |
GetSipAccountStatusListRequest¶
Запрос получения статусов регистрации Sip-аккаунтов
GetSipAccountStatusListResponse¶
Ответ на запрос получения статусов регистрации Sip-аккаунтов
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| data | Статус аккаунтов Sip | repeated deviceapis.device.v1.GetSipAccountStatusListResponse.SipStatus |
GetSipAccountStatusListResponse.SipStatus¶
Статус аккаунтов Sip
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| sip_account_id | ID Sip-аккаунта | string | REQUIRED |
| state_type | Статус регистрации Sip | deviceapis.device.v1.GetSipAccountStatusListResponse.SipStatus.StateType | |
| last_attempt_register_at | Дата последней попытки регистрации UnixTime | int32 |
GetSipTimeoutSettingsRequest¶
Запрос получения настроек максимального времени общения и дозвона
GetSipTimeoutSettingsResponse¶
Ответ на запрос получения настроек максимального времени общения и дозвона
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| data | Настройки максимального времени общения и дозвона | optional deviceapis.device.v1.SipTimeoutSettings |
SipAccount¶
Sip-аккаунт
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| account_id | ID Sip-аккаунта | string | REQUIRED |
| name | Имя | google.protobuf.StringValue | |
| number | Номер | google.protobuf.StringValue | |
| user | Имя пользователя | google.protobuf.StringValue | |
| password | Пароль. Не возвращается с сервера. TODO: в генерации сваггера не показывать INPUT_ONLY поля в ответах | google.protobuf.StringValue | INPUT_ONLY |
| reg_server_address | Адрес REG-сервера. Сетевой адрес и порт. Пример: 192.168.0.1:5060, reg.acme.io:5060 | google.protobuf.StringValue | |
| sip_server_address | Адрес SIP-сервера. Сетевой адрес и порт. Пример: 192.168.0.1:5060, sip.acme.io:5060 | google.protobuf.StringValue | |
| sip_proxy_address | Адрес SIP-прокси. Сетевой адрес и порт. Пример: 192.168.0.1:5060, proxy.acme.io:5060 | google.protobuf.StringValue |
SipTimeoutSettings¶
Настройки максимального времени общения и дозвона
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| call_timeout | Максимальное время дозвона в секундах | int32 | |
| talk_timeout | Максимальное время общения в секундах | int32 |
GetSipAccountStatusListResponse.SipStatus.StateType¶
Тип состояния Sip-аккаунта
| Номер | Тип | Название |
|---|---|---|
| 0 | STATE_TYPE_UNKNOWN | Значение не указано |
| 1 | REGISTERING | Клиент отправил REGISTER запрос, но ответ от сервера ещё не получен. Идёт попытка регистрации |
| 2 | REGISTERED | Успешная регистрация. SIP-сервер подтвердил регистрацию, клиент готов принимать звонки |
| 3 | UNREGISTERED | Клиент отключился или не регистрировался. Возможные причины: Клиент отправил UNREGISTER; Истек срок регистрации (expires) |
| 4 | REGISTRATION_FAILED | Ошибка при попытке регистрации. Возможные причины: Неверный логин/пароль; SIP-сервер недоступен; Ошибка в конфигурации (порт, протокол, IP) |
| 5 | TIMEOUT | Нет ответа от сервера в течение времени ожидания. Возможные причины: Проблемы с сетью; SIP-сервер не отвечает; Нет ответа от сервера в течение времени ожидания |
| 6 | DISABLED | SIP клиент остановлен вручную или отключён по конфигурации. Не выполняется даже попытка регистрации |
Скалярные типы значений¶
| .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 |