Оповещения
Получить список оповещений
Запрос notifications
позволяет получить список оповещений.
notifications(filters: NotificationFilter
order: NotificationOrdering
pagination: OffsetPaginationInput): NotificationOutputCountList!
filters: NotificationFilter
: Можно настроить получение списка конкретных оповещений
id
: Фильтрация по ID оповещений:exact: ID
: Получить точный объект оповещения по ID оповещения.iExact: ID
: Получить точный объект оповещения по ID оповещения. Без учета регистра.contains: String
: Получить объекты оповещений, в которых значение является частью ID оповещения.iContains: String
: Получить объекты оповещений, в которых значение является частью ID оповещения. Без учета регистра.inList: [ID!]
: Получить точные объекты оповещений по списку ID оповещений.gt: ID
: Получить объекты оповещений с ID больше(>) переданных ID. Используется сравнение строк.gte: ID
: Получить объекты оповещений с ID больше или равным (>=) переданным ID. Используется сравнение строк.lt: ID
: Получить объекты оповещений с ID меньше (<) переданных ID. Используется сравнение строк.lte: ID
: Получить объекты оповещений с ID меньше или равным(<=) переданным ID. Используется сравнение строк.startsWith: String
: Получить объекты оповещений, чьи ID начинаются с переданного значения.iStartsWith: String
: Получить объекты оповещений, чьи ID начинаются с переданного значения. Без учета регистра.endsWith: String
: Получить объекты оповещений, чьи ID заканчиваются переданным значением.iEndsWith: String
: Получить объекты оповещений, чьи ID заканчиваются переданным значением. Без учета регистра.range: [ID!]
: Получить объекты оповещений, чьи ID находятся в диапазоне переданных ID. Используется сравнение строк.isNull: Boolean
: Получить объекты оповещений, чьи ID равны(true
) или не равны (false
) нулюnull
.regex: String
: Получить объекты оповещений, чьи ID соответствуют переданному регулярному выражению.iRegex: String
: Получить объекты оповещений, чьи ID соответствуют переданному регулярному выражению. Без учета регистра.
creationDate: DatetimeFilterLookupCustom
: Фильтрация по дате создания оповещения. Параметры аналогичны параметрам для фильтрации по ID.lastModified: DatetimeFilterLookupCustom
: Фильтрация по дате последнего изменения оповещения. Параметры аналогичны параметрам для фильтрации по ID.isViewed: Boolean
: Фильтрация просмотренных (true
) и непросмотренных (false
) оповещений.isActive: Boolean
: Фильтрация активных (true
) и неактивных (false
) оповещений.endpointId: UUID
: Фильтрация оповещений по ID эндпойнта, на который отправляются оповещения.isSent: Boolean
: Фильтрация оповещений по оповещениям внутри системы (true
) и оповещениям, направленным на внешние эндпойнты (false
).triggerId: ID
: Фильтрация оповещений по ID триггера.profileId: ID
: Фильтрация оповещений по ID профиля.type: NotificationType
: Фильтрация оповещений по типу.profileGroupTitle: String
: Фильтрация оповещений по названию группы.
order: NotificationOrdering
: Вы можете настроить сортировку списка оповещений:
id: Ordering
: Сортировка по ID. Используется сравнение строк. (ASC
: Сортировка по возрастанию,DESC
: Сортировка по убыванию)creationDate: Ordering
: Сортировка по дате создания оповещения.lastModified: Ordering
: Сортировка по дате последнего изменения оповещения.
pagination: OffsetPaginationInput
:
limit: Int!
: Этот параметр позволяет получить первыеn
оповещений из списка.offset: Int!
: Этот параметр позволяет удалить первыеn
оповещений из списка.
NotificationOutputCountList!
: Результат запроса - список оповещений со следующими параметрами:
totalCount: Int!
: Общее число оповещений.collectionItems: [NotificationOutput!]!
:id: ID!
: ID оповещения.isActive: Boolean!
: Атрибут о том, что оповещение активно.isViewed: Boolean!
: Атрибут о том, что оповещение просмотрено.lastModified: DateTime
: Дата последнего изменения оповещения в формате ISO 8601.activityId: ID
: ID активности, вызвавшей оповещение.avatarId: ID
: ID аватара профиля.agentTitle: String
: Название агента.cameraId: ID
: ID камеры, обнаружившей активность.cameraTitle: String
: Название камерыcreationDate: DateTime!
: Дата создания оповещения в формате ISO 8601.currentCount: Int
: Число людей в поле зрения камерыdescription: String
: Описание профиляendpointStatuses: [EndpointStatusOutput!]
: Список эндпойнтов со статусами:endpoint: EndpointOutput!
: Объект эндпойнта.status: String!
: Статус передачи.
limit: Int
: Максимальное число персон.name: String
: Имя профиля.profileGroupColor: String
: Цвет группы, привязанной к триггеру.profileGroupId: ID
: ID группы, привязанной к триггеру.profileGroupTitle: String
: Название группы, привязанной к триггеру.profileId: ID
: ID профиля.realtimeBodyPhotoId: String
: ID изображения человека, обнаруженного камерой (Отсутствует в анонимном режиме).realtimeFacePhotoId: String
: ID изображения лица человека, обнаруженного камерой (Отсутствует в анонимном режиме).triggerId: ID
: ID триггера, вызвавшего оповещение.type: String!
: Тип оповещения.
Пример запроса:
{
notifications(filters: {
id: {
exact: "ed1a55af-6daf-4368-ac68-0defdff5159c"
}
}) {
totalCount
collectionItems {
profileGroupColor
activityId
avatarId
agentTitle
cameraId
cameraTitle
creationDate
currentCount
description
id
endpointStatuses {
status
endpoint {
id
}
}
isActive
isViewed
lastModified
limit
name
profileGroupId
profileGroupTitle
profileId
realtimeBodyPhotoId
realtimeFacePhotoId
triggerId
type
}
}
}
Пример ответа:
API возвращает следующий результат:
{
"data": {
"notifications": {
"totalCount": 1,
"collectionItems": [
{
"profileGroupColor": "red.600",
"activityId": "f3bf0ac7-5849-45d7-85e0-12de925633da",
"avatarId": "4312809b-99b2-47a7-beb9-b60b87c07594",
"agentTitle": "My Agent",
"cameraId": "3c818dc4-352c-47a7-b32b-465fbd4a9665",
"cameraTitle": "My Camera",
"creationDate": "2022-07-07T13:10:53.619145+00:00",
"currentCount": null,
"description": "gap\n",
"id": "ed1a55af-6daf-4368-ac68-0defdff5159c",
"endpointStatuses": [
{
"status": "success",
"endpoint": {
"id": "db38ec53-c09d-45f2-bfed-5877c9bd9016"
}
}
],
"isActive": false,
"isViewed": true,
"lastModified": "2022-07-07T13:11:12.264337+00:00",
"limit": null,
"name": null,
"profileGroupId": "97c1a9fa-bfde-460a-9bda-f610060423ca",
"profileGroupTitle": "My persons",
"profileId": "b4a16647-1336-4ed8-a440-e4e8896e1de3",
"realtimeBodyPhotoId": "339a4020-a9af-49e8-83d4-3fc34ef794e5",
"realtimeFacePhotoId": null,
"triggerId": "66b3eb1a-de88-469e-83c9-697785a0a4c2",
"type": "presence"
}
]
}
}
}
Просмотреть оповещение
Мутация viewingNotifications
отмечает одно или несколько оповещений как просмотренные.
viewingNotifications(notificationIds: [String!]!): MutationResult!
notificationIds: [String!]!
: Список ID оповещений, отмеченных как просмотренные.
MutationResult
:Результат мутации - JSON-файл со следующими параметрами:
ok: Boolean!
: Атрибут успешного завершения мутации.
Пример запроса:
mutation{
viewingNotifications(notificationIds: ["5a1a1bed-5bc0-4e8e-8154-e56c5ef5ea87"]) {
ok
}
}
Пример ответа:
API возвращает следующий результат:
{
"data": {
"viewingNotifications": {
"ok": true
}
}
}
Просмотреть все оповещения
Мутация markAllNotificationsAsViewed
отмечает все оповещения как просмотренные.
markAllNotificationsAsViewed: MutationResult!
MutationResult
: Результат мутации - JSON-файл со следующими параметрами:
ok: Boolean!
: Атрибут успешного завершения мутации.
Пример запроса:
mutation{
markAllNotificationsAsViewed {
ok
}
}
Пример ответа:
API возвращает следующий результат:
{
"data": {
"markAllNotificationsAsViewed": {
"ok": true
}
}
}