Протокол¶
Оглавление¶
-
keyapis/access_control/v1/keyapis_access_control_access_control_v1.proto
- GetRoomCountResponse
- GetRoomListRequest
- GetRoomListResponse
- GetRoomListResponse.Error
- GetRoomOrponNumberExistsRequest
- GetRoomOrponNumberExistsResponse
- GetRoomOrponNumberExistsResponse.Error
- GetRoomRequest
- GetRoomResponse
- GetRoomResponse.Error
- PatchRoomSetSubscriptionModeRequest
- PatchRoomSetSubscriptionModeResponse
- PatchRoomSetSubscriptionModeResponse.Error
- PatchRoomSetSubscriptionModeResponse.Error.IdExpected
- PatchRoomSetSubscriptionModeResponse.Error.OrponExpected
- Room
- RoomFilter
- RoomPaging
- Room.Type
- RoomPaging.DirectionType
- RoomPaging.OrderByType
Схема классов¶
keyapis/access_control/v1/keyapis_access_control_access_control_v1.proto¶
Сервис помещений
AccessControlService¶
Сервис управления доступом пользователей
| Название метода | Описание | Тип запроса | Тип ответа |
|---|---|---|---|
| GetRoom | Метод получения Квартиры. Метод доступен для: admin, service, ltp_first, owner, employee | keyapis.access_control.v1.GetRoomRequest | keyapis.access_control.v1.GetRoomResponse |
| GetRoomList | Метод получения списка квартир. Метод доступен для: admin, service, ltp_first, owner, employee, bti | keyapis.access_control.v1.GetRoomListRequest | keyapis.access_control.v1.GetRoomListResponse stream |
| GetRoomCount | Метод получения количества квартир. Метод доступен для: admin, service, ltp_first, owner, employee, bti | keyapis.access_control.v1.GetRoomCountRequest | keyapis.access_control.v1.GetRoomCountResponse |
| PatchRoomSetSubscriptionMode | Метод установки режима подписок. Метод доступен для: admin, service | keyapis.access_control.v1.PatchRoomSetSubscriptionModeRequest | keyapis.access_control.v1.PatchRoomSetSubscriptionModeResponse |
| GetRoomOrponNumberExists | Метод проверки существования квартиры по ОРПОН и её номеру. Возвращает true если найдена квартира с указанными параметрами. Метод доступен для: admin, service | keyapis.access_control.v1.GetRoomOrponNumberExistsRequest | keyapis.access_control.v1.GetRoomOrponNumberExistsResponse |
GetRoomCountRequest¶
Запрос получения количества квартир
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| filter | Фильтр | keyapis.access_control.v1.RoomFilter |
GetRoomCountResponse¶
Ответ на запрос получения количества квартир
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| data | Количество | optional int32 |
GetRoomListRequest¶
Запрос получения списка квартир
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| filter | Фильтр | keyapis.access_control.v1.RoomFilter | |
| paging | Стандартный постраничный вывод | optional keyapis.access_control.v1.RoomPaging |
GetRoomListResponse¶
Ответ на запрос получения списка квартир
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| data | Квартира | optional keyapis.access_control.v1.Room | |
| error | Ошибка | optional keyapis.access_control.v1.GetRoomListResponse.Error |
GetRoomListResponse.Error¶
Ошибка
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| validation | Ошибка валидации | optional keyapis.access_control.v1.ValidationError |
GetRoomOrponNumberExistsRequest¶
Запрос проверки существования квартиры по ОРПОН и её номеру
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| orpon | ОРПОН дома. # Диапазон: 1..9223372036854775807 | int64 | REQUIRED |
| room_number | Номер квартиры. # Диапазон: 1..4 | string | REQUIRED |
GetRoomOrponNumberExistsResponse¶
Ответ на запрос проверки существования квартиры
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| data | Результат проверки: true - если квартира существует, false - в противном случае | optional bool | |
| error | Ошибка | optional keyapis.access_control.v1.GetRoomOrponNumberExistsResponse.Error |
GetRoomOrponNumberExistsResponse.Error¶
Ошибка
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| validation | Ошибка валидации | optional keyapis.access_control.v1.ValidationError |
GetRoomRequest¶
Запрос получения квартиры
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| id | Идентификатор квартиры | int32 | REQUIRED |
GetRoomResponse¶
Ответ на запрос получения квартиры
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| data | Квартира | optional keyapis.access_control.v1.Room | |
| error | Ошибка | optional keyapis.access_control.v1.GetRoomResponse.Error |
GetRoomResponse.Error¶
Ошибка
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| validation | Ошибка валидации | optional keyapis.access_control.v1.ValidationError |
PatchRoomSetSubscriptionModeRequest¶
Запрос на установку режима подписок
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| mrf_ids | Список идентификаторов МРФ | repeated int32 | |
| rf_ids | Список идентификаторов РФ | repeated int32 | |
| orpon_id | Идентификатор ОРПОН дома | int64 | |
| room_numbers | Список номеров квартир | repeated string | |
| mode_type | Значение режима подписок | keyapis.access_control.v1.PatchRoomSetSubscriptionModeRequest.ModeType | REQUIRED |
PatchRoomSetSubscriptionModeResponse¶
Ответ на запрос на установку режима подписок
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| error | Ошибка | optional keyapis.access_control.v1.PatchRoomSetSubscriptionModeResponse.Error |
PatchRoomSetSubscriptionModeResponse.Error¶
Ошибка
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| orpon_expected | Не передано значение ОРПОН | optional keyapis.access_control.v1.PatchRoomSetSubscriptionModeResponse.Error.OrponExpected | |
| id_expected | Не передан хотя бы один идентификатор | optional keyapis.access_control.v1.PatchRoomSetSubscriptionModeResponse.Error.IdExpected | |
| validation | Ошибка валидации | optional keyapis.access_control.v1.ValidationError |
PatchRoomSetSubscriptionModeResponse.Error.IdExpected¶
Не передан хотя бы один идентификатор: - Должен быть передан хотя бы один из параметров: - mrf_ids; - rf_ids; - opron_id
PatchRoomSetSubscriptionModeResponse.Error.OrponExpected¶
Не передано значение ОРПОН: - Если переданы номера квартир, то значение параметра ОРПОН обязательно
Room¶
Квартира
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| id | Идентификатор квартиры | int32 | REQUIRED |
| number | Номер | string | REQUIRED |
| entrance | Подъезд | int32 | REQUIRED |
| floor | Этаж | int32 | REQUIRED |
| area | Площадь | float | |
| building_id | Идентификатор дома | int32 | REQUIRED |
| company_id | Идентификатор компании | int32 | REQUIRED |
| abonent_id | Номер абонента | string | REQUIRED |
| type | Тип | keyapis.access_control.v1.Room.Type | REQUIRED |
| created_at | Дата создания. # Тип: DateTime | google.protobuf.Timestamp | OUTPUT_ONLY |
| deleted_at | Дата удаления. # Тип: DateTime | google.protobuf.Timestamp | OUTPUT_ONLY |
| is_subscription_mode_enabled | Включен ли режим подписок | bool | OUTPUT_ONLY |
RoomFilter¶
Фильтр по квартирам
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| building_ids | По идентификаторам домов | repeated int32 | |
| entrances | По подъездам | repeated int32 | |
| floors | По этажам | repeated int32 | |
| company_ids | По идентификаторам компаний | repeated int32 | |
| types | По типам | repeated keyapis.access_control.v1.Room.Type | |
| device_ids | По идентификаторам устройств | repeated int32 | |
| orpons | По ОРПОНам | repeated int64 | |
| is_service_flag | По признаку служебной квартиры | google.protobuf.BoolValue | |
| room_numbers | По номерам квартир | repeated string |
RoomPaging¶
Постраничный вывод
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| order_by_type | Тип значения сортировки. Если значение не передано, то будет взято значение по умолчанию. # По умолчанию: CREATED_AT | keyapis.access_control.v1.RoomPaging.OrderByType | |
| direction_type | Тип направления сортировки. # По умолчанию: DESC | keyapis.access_control.v1.RoomPaging.DirectionType | |
| limit | Количество записей на страницу. Если значение 0 (не передано), то будет взято значение по умолчанию. # Диапазон: 0..100. # По умолчанию: 20 | int32 | |
| offset | Сдвиг. # Диапазон: 0..2147483647 | int32 |
ValidationError¶
Ошибки валидации. Эти проверки выполняются до обращения в базу данных
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| path | Путь к полю в формате наименования прото | string | REQUIRED |
| message | Валидационное сообщение | string | REQUIRED |
PatchRoomSetSubscriptionModeRequest.ModeType¶
Справочник значений режимов подписки
| Номер | Тип | Название |
|---|---|---|
| 0 | MODE_TYPE_UNKNOWN | Значение не указано |
| 1 | DISABLED | Выключено |
| 2 | ENABLED | Включено |
Room.Type¶
Тип
| Номер | Тип | Название |
|---|---|---|
| 0 | TYPE_UNKNOWN | Значение не указано |
| 1 | FLOOR | Этаж |
| 2 | ENTRANCE | Подъезд |
| 3 | APARTMENT | Апартаменты |
| 4 | WATER_DISTRIBUTION | Вводно-распределительные устройства |
| 5 | HEAT_POINT | Индивидуальный тепловой пункт |
| 6 | PANTRY | Кладовая |
| 7 | WHEELCHAIR | Колясочная |
| 8 | WIRING_CLOSET | Коммутационный шкаф |
| 9 | CONCIERGE | Консьержная |
| 10 | CHECKPOINT | КПП |
| 11 | PARKING_PLACE | Машиноместо |
| 12 | OFFICE | Офис |
| 13 | BASEMENT | Подвал |
| 14 | SUBSTATION | Подстанция |
| 15 | HOMEOWNERS_ROOM | Помещение правления ТСЖ |
| 16 | TAMBOUR | Тамбур |
| 17 | INPUT_NODE | Узел ввода |
| 18 | LOBBY | Лобби |
| 19 | ATTIC | Чердак |
| 20 | ELEVATOR_SHAFT | Шахта лифта |
| 21 | SWITCHBOARD | Электрощитовая |
| 22 | DEFAULT_ROOM | Квартира по умолчанию |
RoomPaging.DirectionType¶
Справочник типов направлений сортировки.
Тип: byte¶
| Номер | Тип | Название |
|---|---|---|
| 0 | DIRECTION_TYPE_UNKNOWN | Значение не указано |
| 1 | DESC | От большего к меньшему |
| 2 | ASC | От меньшего к большему |
RoomPaging.OrderByType¶
Справочник типов значений сортировки.
Тип: byte¶
| Номер | Тип | Название |
|---|---|---|
| 0 | ORDER_BY_TYPE_UNKNOWN | Значение не указано |
| 1 | ID | По идентификатору |
| 2 | CREATED_AT | По времени создания |
| 3 | FLOOR_THEN_NUMBER | По этажу и номеру |
| 4 | NUMBER | По номеру |
Скалярные типы значений¶
| .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 |