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

Протокол

Оглавление

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

/svg/protos/key/keyapis/exchange/v1/keyapis_exchange_message_v1.proto.svg

keyapis/exchange/v1/keyapis_exchange_message_v1.proto

Сервис реализует функционал передачи сообщений. Это альтернативный путь передачии команд в реальном времени в exchange минуя NATS

MessageService

Сервис передачи сообщений

Название метода Описание Тип запроса Тип ответа
PostMessageFullDuplex Полнодуплексный метод отправки задач и получения их результатов выполнения. Метод доступен для: admin, service, application(exchange:edit) keyapis.exchange.v1.PostMessageFullDuplexRequest stream keyapis.exchange.v1.PostMessageFullDuplexResponse stream
PostMessagePushCall Метод отправки задач и получения их результатов выполнения. Метод доступен для: admin, service, application(exchange:edit) keyapis.exchange.v1.PostMessagePushCallRequest keyapis.exchange.v1.PostMessagePushCallResponse
PostMessageMobilePushCall Метод отправки задач и получения их результатов выполнения для мобильного приложения. Метод доступен для: admin, service keyapis.exchange.v1.PostMessageMobilePushCallRequest keyapis.exchange.v1.PostMessageMobilePushCallResponse

MessageMobilePushCall

Звонковое сообщение для мобильных приложений

Поле Описание Тип Признак
message Сообщение keyapis.exchange.v1.MessageMobilePushCall.Message REQUIRED
push_call Звонковый пуш keyapis.exchange.v1.MessageMobilePushCall.PushCall REQUIRED

MessageMobilePushCall.Message

Сообщение

Поле Описание Тип Признак
title Заголовок уведомления string REQUIRED
device_id Идентификатор устройства источника int32 REQUIRED
device_title Название устройства источника google.protobuf.StringValue
device_camera_id Идентификатор камеры устройства источника. Тип: Guid google.protobuf.StringValue
sip_token SIP-токен string REQUIRED
sip_server_host Адрес SIP сервера google.protobuf.StringValue
sip_server_port Порт SIP сервера google.protobuf.Int32Value
sip_account_login Логин SIP аккаунта google.protobuf.StringValue
sip_account_password Пароль SIP аккаунта google.protobuf.StringValue
stun_server_host Адрес STUN сервера google.protobuf.StringValue
stun_server_port Порт STUN сервера google.protobuf.Int32Value
call_created_at Момент инициации звонка google.protobuf.Timestamp REQUIRED

MessageMobilePushCall.PushCall

Звонковый пуш

Поле Описание Тип Признак
token Пуш-токен адресата звонка string REQUIRED
type Тип пуш-токена keyapis.exchange.v1.MessageMobilePushCall.PushCall.Type REQUIRED

MessagePushCall

Звонковое сообщение

Поле Описание Тип Признак
message Сообщение keyapis.exchange.v1.MessagePushCall.Message REQUIRED
push_call Звонковый пуш keyapis.exchange.v1.MessagePushCall.PushCall REQUIRED

MessagePushCall.Message

Сообщение

Поле Описание Тип Признак
title Заголовок уведомления string REQUIRED
device_id Идентификатор устройства источника int32 REQUIRED
device_title Название устройства источника google.protobuf.StringValue
device_camera_id Идентификатор камеры устройства источника. Тип: Guid google.protobuf.StringValue
sip_server_host Адрес SIP сервера string REQUIRED
sip_server_port Порт SIP сервера int32 REQUIRED
sip_account_login Логин SIP аккаунта string REQUIRED
sip_account_password Пароль SIP аккаунта string REQUIRED
call_created_at Момент инициации звонка google.protobuf.Timestamp REQUIRED

MessagePushCall.PushCall

Звонковый пуш

Поле Описание Тип Признак
token Пуш-токен адресата звонка string REQUIRED
type Тип пуш-токена keyapis.exchange.v1.MessagePushCall.PushCall.Type REQUIRED

PostMessageFullDuplexRequest

Поток отправляемых событий

Поле Описание Тип Признак
request_id Идентификатор запроса string REQUIRED
post_message_push_call Отправка звонкового сообщения optional keyapis.exchange.v1.PostMessagePushCallRequest

PostMessageFullDuplexResponse

Поток ответов на задачи

Поле Описание Тип Признак
request_id Идентификатор ответа string REQUIRED
post_message_push_call Ответ на отправку звонкового сообщения optional keyapis.exchange.v1.PostMessagePushCallResponse

PostMessageMobilePushCallRequest

Запрос на отправку звонкового пуш сообщения для мобильного приложения

Поле Описание Тип Признак
data Звонковый пуш keyapis.exchange.v1.MessageMobilePushCall REQUIRED

PostMessageMobilePushCallResponse

Ответ на запрос на отправку звонкового пуш сообщения для мобильного приложения

PostMessagePushCallRequest

Запрос на отправку звонкового пуш сообщения

Поле Описание Тип Признак
data Звонковый пуш keyapis.exchange.v1.MessagePushCall REQUIRED

PostMessagePushCallResponse

Ответ на запрос на отправку звонкового пуш сообщения

MessageMobilePushCall.PushCall.Type

Тип пуш-токена

Номер Тип Название
0 TYPE_UNKNOWN Не указан
1 MOBILE_FCM Для Mobile Firebase Cloud Messaging
2 MOBILE_HMS Для Mobile Huawei Messaging System
3 MOBILE_APNS_TEXT Для Mobile Apple PushToken System для текста
4 MOBILE_APNS_CALL Для Mobile Apple PushToken System для звонков
5 MOBILE_RUSTORE Для Mobile RuStore

MessagePushCall.PushCall.Type

Тип пуш-токена

Номер Тип Название
0 TYPE_UNKNOWN Не указан
1 PWA_FCM Для PWA Firebase Cloud Messaging
2 PWA_APNS Для PWA Apple Notification System

Скалярные типы значений

.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