11. Настройка пересылки событий
Пересылка событий необходима для точечной настройки получателей уведомлений по определенному событию.
Настройка пересылки сообщений осуществляется с использованием метода POST /front-api-srv/api/v.1.0/subscription
. Укажите в запросе значения параметров, чтобы была выполнена настройка.
Параметр | Тип | Тип данных | Обяз. | Описание | Пример |
---|---|---|---|---|---|
name | body | string | + | Наименование подписчика | Потребитель |
callbacks | body | array[object] | + | Массив конечных точек для подписчика | - |
subscription | body | object | + | Объект параметров подписки | - |
object "callbacks"
Параметр | Тип | Тип данных | Обяз. | Описание | Пример |
---|---|---|---|---|---|
address | body | string | + | Адрес, куда отправляется событие | adress.info |
topicName | body | string | - | Название топика, в который отправляется событие (задается только при отправке в Kafka) | hans.name |
username | body | string | - | Наименование пользователя | User 1 |
password | body | string | - | Пароль | cWYYF3M6FibBerH |
object "subscription"
Параметр | Тип | Тип данных | Обяз. | Описание | Пример |
---|---|---|---|---|---|
tenants | body | array[string] | - | Массив тенантов, на события которых подписывается подписчик | - |
deviceTypes | body | array[string] | - | Массив типов устройств, на которые подписывается подписчик | - |
eventTypes | body | array[string] | - | Массив типов событий, на которые подписывается подписчик | - |
Пример тела запроса:
json
{
"name": "Потребитель",
"callbacks": [
{
"address": "adress.info",
"topicName": "hans.name",
"username": "User 1",
"password": "cWYYF3M6FibBerH"
}
],
"subscription": {
"tenants": [
"{{ID тенанта}}"
],
"deviceTypes": [
"{{ID класса}}"
],
"eventTypes": [
"DeviceCreateEvent",
"DeviceUpdateEvent"
]
}
}
Пример ответа:
json
{
"id": "d64cfcb4-de30-4ecd-b5de-e4e26cca66ce",
"name": "Водоканал",
"callbacks": [
{
"id": "cde8cf87-fee3-4fab-befd-c2ce9bf6acef",
"address": "mike.info",
"topicName": "hans.name",
"username": "User 1",
"password": "cWYYF3M6FibBerH"
}
],
"subscription": {
"tenants": [],
"thingClasses": [],
"eventTypes": []
},
"tenantId": "00f00a00-e00f-0a00-af0a-c0af00e0ff00"
}