Используйте MQTT для изменения конфигурации устройства в облачном IoT Google

Мое приложение использует MQTT для подписки на тему событий. Однако, чтобы изменить конфигурацию устройства, мне нужно использовать HTTP-запрос POST здесь:

https://cloud.google.com/iot/docs/reference/rest/v1/projects.locations.registries.devices/modifyCloudToDeviceConfig

предоставленный сквозной пример ( https://cloud.google.com/iot/docs/samples/end-to-end-sample) также использует HTTP-запрос для публикации. Но для меня наличие MQTT для подписки и HTTP для изменения конфигурации кажется неэффективным.

Есть ли способ изменить конфигурацию устройства с помощью MQTT?

1 ответ

Решение

Как описано в документации, вы можете подписаться на тему MQTT, /devices/{device-id}/config получать обновления конфигурации.

При первом подключении к MQTT последняя опубликованная конфигурация будет отправлена ​​на устройство. Последующие изменения конфигурации будут опубликованы в этой теме.

Если вы хотите изменить конфигурацию на другом устройстве (устройство B), используя сообщение от вашего устройства (устройство A), вам нужно будет выполнить API-вызов в диспетчере устройств, чтобы обновить устройство B. Чтобы выполнить этот вызов API, вам нужно Вы можете запустить его с устройства A с помощью облачной функции Google на своем сервере, который запускается из Pub/Sub или DataFlow.

Обновление В настоящее время существует руководство сообщества, объясняющее, как это сделать.

Функция DataFlow / PubSub to cloud

Другие вопросы по тегам