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] | - | Массив типов событий, на которые подписывается подписчик | - |
Пример тела запроса:
{ "name": "Потребитель", "callbacks": [ { "address": "adress.info", "topicName": "hans.name", "username": "User 1", "password": "cWYYF3M6FibBerH" } ], "subscription": { "tenants": [ "{{ID тенанта}}" ], "deviceTypes": [ "{{ID класса}}" ], "eventTypes": [ "DeviceCreateEvent", "DeviceUpdateEvent" ] }}Пример ответа:
{ "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"}