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

Протокол

Оглавление

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

/svg/protos/key/keyapis/bell/v1/keyapis_bell_notification_v1.proto.svg

keyapis/bell/v1/keyapis_bell_notification_v1.proto

Сервис реализует функционал управления уведомлениями

NotificationService

Сервис уведомлений

Название метода Описание Тип запроса Тип ответа
PostNotification Метод сохранения уведомления. Поддерживает только создание. Метод доступен для: service keyapis.bell.v1.PostNotificationRequest keyapis.bell.v1.PostNotificationResponse
GetNotification Метод получения уведомления. Метод доступен для: admin, manager, master, slave, service keyapis.bell.v1.GetNotificationRequest keyapis.bell.v1.GetNotificationResponse
GetNotificationList Метод получения списка уведомлений. Метод доступен для: admin, manager, master, slave, service keyapis.bell.v1.GetNotificationListRequest keyapis.bell.v1.GetNotificationListResponse stream
GetNotificationCount Метод получения количества уведомлений. Метод доступен для: admin, manager, master, slave, service keyapis.bell.v1.GetNotificationCountRequest keyapis.bell.v1.GetNotificationCountResponse
PostNotificationView Метод изменения статуса уведомления на "Просмотрено". Метод доступен для: master, slave, service keyapis.bell.v1.PostNotificationViewRequest keyapis.bell.v1.PostNotificationViewResponse
PostNotificationViewOrponRoomNumber Метод изменения статуса уведомлений на "Просмотрено" по ОРПОНу и номеру квартиры. Метод доступен для: master, slave, service keyapis.bell.v1.PostNotificationViewOrponRoomNumberRequest keyapis.bell.v1.PostNotificationViewOrponRoomNumberResponse

GetNotificationCountRequest

Запрос получения количества уведомлений

Поле Описание Тип Признак
filter Фильтр keyapis.bell.v1.NotificationFilter

GetNotificationCountResponse

Ответ на запрос на получение количества уведомлений

Поле Описание Тип Признак
data Количество уведомлений optional int32
error Ошибка optional keyapis.bell.v1.GetNotificationCountResponse.Error

GetNotificationCountResponse.Error

Ошибка запроса на получение количества уведомлений

Поле Описание Тип Признак
validation Ошибка валидации optional keyapis.bell.v1.ValidationError

GetNotificationListRequest

Запрос получения списка уведомлений

Поле Описание Тип Признак
filter Фильтр keyapis.bell.v1.NotificationFilter
paging Стандартный постраничный вывод optional keyapis.bell.v1.NotificationPaging

GetNotificationListResponse

Ответ на запрос на получение списка уведомлений

Поле Описание Тип Признак
data Уведомление optional keyapis.bell.v1.Notification
error Ошибка optional keyapis.bell.v1.GetNotificationListResponse.Error

GetNotificationListResponse.Error

Ошибка запроса на получение списка уведомлений

Поле Описание Тип Признак
validation Ошибка валидации optional keyapis.bell.v1.ValidationError

GetNotificationRequest

Запрос получения уведомления

Поле Описание Тип Признак
id Идентификатор уведомления. # Тип: Guid string REQUIRED

GetNotificationResponse

Ответ на запрос на получение уведомления

Поле Описание Тип Признак
data Уведомление optional keyapis.bell.v1.Notification
error Ошибка optional keyapis.bell.v1.GetNotificationResponse.Error

GetNotificationResponse.Error

Ошибка запроса на получение уведомления

Поле Описание Тип Признак
validation Ошибка валидации optional keyapis.bell.v1.ValidationError

Notification

Уведомление.

Описание модели

Поле Описание Тип Признак
id Идентификатор. Создаётся сервером. # Тип: Guid string OUTPUT_ONLY
orpon ОРПОН. # Диапазон 1..9223372036854775807 int64 REQUIRED
app_title Наименование приложения-отправителя. # Диапазон: 3..256 google.protobuf.StringValue
room_number Номер квартиры. # Диапазон: 1..4 string REQUIRED
header Заголовок. # Диапазон: 3..128 string REQUIRED
text Тело. # Диапазон: 3..256 string REQUIRED
status_type Статус keyapis.bell.v1.Notification.StatusType OUTPUT_ONLY
created_at Дата создания. # Тип: DateTime google.protobuf.Timestamp OUTPUT_ONLY
status_changed_at Дата последнего изменения статуса. Заполняется и обновляется сервером. # Тип: DateTime google.protobuf.Timestamp OUTPUT_ONLY
payload Полезная нагрузка repeated keyapis.bell.v1.Notification.PayloadEntry

Notification.PayloadEntry

Поле Описание Тип Признак
key string
value string

NotificationFilter

Фильтр уведомлений

Поле Описание Тип Признак
orpons По ОРПОН repeated int64
room_numbers По номерам квартир repeated string
status_types По статусам repeated keyapis.bell.v1.Notification.StatusType

NotificationPaging

Постраничный вывод

Поле Описание Тип Признак
order_by_type Тип значения сортировки. Если значение не передано, то будет взято значение по умолчанию. # По умолчанию: CREATED_AT keyapis.bell.v1.NotificationPaging.OrderByType
direction_type Тип направления сортировки. # По умолчанию: DESC keyapis.bell.v1.NotificationPaging.DirectionType
limit Количество записей на страницу. Если значение 0 (не передано), то будет взято значение по умолчанию. # Диапазон: 0..100. # По умолчанию: 20 int32
offset Сдвиг. # Диапазон: 0..2147483647 int32

PostNotificationRequest

Запрос сохранения уведомления

Поле Описание Тип Признак
data Уведомление keyapis.bell.v1.Notification REQUIRED

PostNotificationResponse

Ответ на запрос сохранения уведомления

Поле Описание Тип Признак
data Уведомление optional keyapis.bell.v1.Notification
error Ошибка optional keyapis.bell.v1.PostNotificationResponse.Error

PostNotificationResponse.Error

Ошибка сохранения уведомления

Поле Описание Тип Признак
validation Ошибка валидации optional keyapis.bell.v1.ValidationError

PostNotificationViewOrponRoomNumberRequest

Запрос на изменение статуса уведомлений на "Просмотрено" по ОРПОНу и номеру квартиры

Поле Описание Тип Признак
orpon ОРПОН. # Диапазон: 1..9223372036854775807 int64 REQUIRED
room_number Номер квартиры. # Диапазон: 1..4 string REQUIRED

PostNotificationViewOrponRoomNumberResponse

Ответ на изменение статуса уведомлений на "Просмотрено" по ОРПОНу и номеру квартиры

Поле Описание Тип Признак
data Количество изменённых уведомлений optional int32
error Ошибка optional keyapis.bell.v1.PostNotificationViewOrponRoomNumberResponse.Error

PostNotificationViewOrponRoomNumberResponse.Error

Ошибка

Поле Описание Тип Признак
validation Ошибка валидации optional keyapis.bell.v1.ValidationError

PostNotificationViewRequest

Запрос на изменение статуса уведомления на "Просмотрено" уведомления

Поле Описание Тип Признак
id Идентификатор уведомления. # Тип: Guid string REQUIRED

PostNotificationViewResponse

Ответ на изменение статуса уведомления на "Просмотрено" уведомления

Поле Описание Тип Признак
error Ошибка optional keyapis.bell.v1.PostNotificationViewResponse.Error

PostNotificationViewResponse.Error

Ошибка

Поле Описание Тип Признак
validation Ошибка валидации optional keyapis.bell.v1.ValidationError

Notification.StatusType

Статус

Номер Тип Название
0 STATUS_TYPE_UNKNOWN Значение не указано
1 NEW Новый. Устанавливается по умолчанию
2 DELIVERED Доставлен
3 VIEWED Просмотрен

NotificationPaging.DirectionType

Справочник типов направлений сортировки.

Тип: byte

Номер Тип Название
0 DIRECTION_TYPE_UNKNOWN Значение не указано
1 DESC От большего к меньшему
2 ASC От меньшего к большему

NotificationPaging.OrderByType

Справочник типов значений сортировки.

Тип: byte

Номер Тип Название
0 ORDER_BY_TYPE_UNKNOWN Значение не указано
1 CREATED_AT По дате создания
2 STATUS_CHANGED_AT По дате последнего изменения статуса

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

.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