Агент FIWARE-IoT: отправить команду на устройство через MQTT
Я использую агент FIWARE IoT [1] для связи с моими устройствами по протоколу MQTT, я создаю команду, чтобы иметь возможность обновить значение моего устройства. Вот мой запрос на создание устройства:
curl -X POST http://193.48.247.247:80/iot/devices \
-i \
-H "Content-Type: application/json" \
-H "Fiware-Service: egmsmartcity" \
-H "Fiware-ServicePath: /egmsmartcitypath" \
-d ' { "devices": [ { "device_id": "streetlight1",
"entity_name": "sensors:streetlight1",
"entity_type": "sensors",
"protocol": "PDI-IoTA-MQTT-UltraLight",
"timezone": "Europe/Paris",
"endpoint": "notUsed",
"commands": [{ "name": "streetlight1", "type": "command", "value": ""}] } ] }'
Поскольку я использую MQTT, в моем случае файловая конечная точка не используется, но если я удаляю ее, MQTT не уведомляет мое устройство. Этот запрос работает, но является ли правильным способом создания устройства, чтобы иметь возможность отправлять команду на мое устройство через MQTT?
Заранее спасибо за помощь!
[1] https://github.com/telefonicaid/fiware-IoTAgent-Cplusplus
1 ответ
Это поле ("конечная точка": "notUsed") происходит из предыдущей функциональности, которая больше не реализована (в MQTT это не имело смысла). Таким образом, начиная с последних версий, он игнорируется и может быть удален. Возможно, вы используете предыдущую версию агента IoT, и поэтому она обязательна, хотя и не работает.
Спасибо за использование IDAS!