10. Связывание правила с группой устройств
Для того, чтобы правило запускалось при получении заданных значений телеметрии, необходимо определить группу устройств и связать ее с существующим правилом.
Создание группы устройств
В рамках примера группа устройств будет определяться классом, полученном на шаге Создание класса устройства.
Чтобы создать группу устройств, используйте метод POST front-api-srv/api/v1.0/rule/device-group
.
Параметр | Тип | Тип данных | Обяз. | Описание | Пример |
---|---|---|---|---|---|
name | body | string | + | Название группы устройств | Группа устройств |
isValidationSkip | body | bool | + | Признак необходимости валидации принадлежности устройств к классу | false |
types | body | array[object] | + | Тип группы устройств. Массив данных. Пример - класс устройств | 00d00000-0ed0-0a0f-beb0-df0b000a0000 |
Пример тела запроса:
{
"name": "Группа устройств",
"isValidationSkip": false,
"types": [
"00d00000-0ed0-0a0f-beb0-df0b000a0000"
]
}
После успешного выполнения запроса будет получен ответ, содержащий данные сохраненной группы. Полученное значение уникального идентификатора группы устройств потребуется для дальнейших действий.
Пример ответа:
{
"id": "d82cf582-6a88-459d-8dce-02b3bbc1d87c",
"name": "Группа устройств",
"isValidationSkip": false,
"types": [
"00d00000-0ed0-0a0f-beb0-df0b000a0000"
]
}
Привязка группы устройств к правилу
Привязка группы устройств к правилу осуществляется с помощью метода POST /front-api-srv//api/v1.0/rule/rule-set/bind
.
Тело запроса содержит следующие параметры:
Параметр | Тип | Тип данных | Обяз. | Описание | Пример |
---|---|---|---|---|---|
ruleSetId | body | string | + | Идентификатор правила | 17b894de-56bb-4dc6-97e6-8f3e0087ddff |
deviceGroupId | body | string | + | Идентификатор группы устройств | d82cf582-6a88-459d-8dce-02b3bbc1d87c |
Пример тела запроса:
{
"ruleSetId": "17b894de-56bb-4dc6-97e6-8f3e0087ddff",
"deviceGroupId": "d82cf582-6a88-459d-8dce-02b3bbc1d87c"
}
При успешном выполнении запроса будет получен ответ с кодом 200 ОК
.
Проверка работы правила
Для проверки работы правила можно выполнить запрос эмуляции передачи телеметрии для устройства с помощью метода POST /front-api-srv//api/v1.0/rule/put-telemetry
.
Тело запроса содержит следующие параметры:
Параметр | Тип | Тип данных | Обяз. | Описание | Пример |
---|---|---|---|---|---|
deviceId | body | string | + | Идентификатор устройства | 000000b0-00ca-0000-00f0-0a0000000eb0 |
classId | body | string | + | Идентификатор класса | 00d00000-0ed0-0a0f-beb0-df0b000a0000 |
values | body | array[object] | + | Значения телеметрии | - |
object "values"
Параметр | Тип | Тип данных | Обяз. | Описание | Пример |
---|---|---|---|---|---|
rssi | body | string | - | Параметр телеметрии | 5 |
Пример тела запроса:
{
"deviceId": "000000b0-00ca-0000-00f0-0a0000000eb0",
"classId": "00d00000-0ed0-0a0f-beb0-df0b000a0000",
"values": {
"rssi": 5
}
}
При успешном выполнении запроса в ответе будет получен код 200 ОК
. Установленное правило должно будет запустить действие на отправку уведомления пользователю.