#azure #routes #message #azure-iot-hub
#azure #маршруты #Сообщение #azure-iot-hub
Вопрос:
Мой IOT hub получает сообщение телеметрии от kepserver в формате
{
"CNC-Model_Performance.CNC-Model_KPI-Prameters.Station_Idle":false,
"CNC-Model_Performance.CNC-Model_KPI-Prameters.Ideal_Cycle_time":120,
"CNC-Model_Parameters.CNC-Model_Prameters-Alarms.Alarms.SPINDLE MPCB TRIPPED":false,
"CNC-Model_Parameters.CNC-Model_Prameters-Alarms.Parameters.Coolant Temperature":0,
"CNC-Model_Parameters.CNC-Model_Prameters-Alarms.Alarms.Hydraulic Motor Current is High":false,
"CNC-Model_Parameters.CNC-Model_Prameters-Alarms.Parameters.Incoming Voltage":0
}
Мне нужно направить данные на служебную шину, если значение MPCB ШПИНДЕЛЯ ОТКЛЮЧЕНО верно или ток гидравлического двигателя высокий, верно.
Я не могу указать правильный синтаксис маршрута, поскольку в тегах присутствуют точки и пробелы, и я не могу их переопределить. Итак, ставим условие следующим образом
$body.CNC-Model_Parameters.CNC-Model_Prameters-Alarms.Alarms.SPINDLE MPCB TRIPPED = true
не работает .
Есть идеи?
Комментарии:
1. вы пробовали что-то вроде
$body["CNC-Model_Parameters.CNC-Model_Prameters-Alarms.Alarms.SPINDLE MPCB TRIPPED"] = true
2. Да, при проверке возникает синтаксическая ошибка.
Ответ №1:
Маршрутизация сообщения в теле с помощью ‘.’ и / или пробела в именах его свойств не поддерживается в Azure IoT Hub, см. Уже сообщенную проблему.
Пожалуйста, отправьте отзыв команде Azure IoT.