2017-11-09 5 views
0

私のアプリケーションはMQTTを使用してイベントのサブスクリプションを行います。しかし、デバイスの設定を変更するには、私はここにHTTP POST要求を使用する必要があります。MQTTを使用してgoogleクラウドのデバイス構成を変更するIoT

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 POSTリクエストを使用します。 しかし、私にとっては、MQTTを購読用に、HTTPを設定用に変更すると効率が悪いようです。

MQTTを使用してデバイスの設定を変更する方法はありますか?

答えて

0

described in the docsとして、MQTTトピック/devices/{device-id}/configにサブスクライブして、構成の更新を受け取ることができます。

最初にMQTTに接続すると、最後に公開された構成がデバイスに送信されます。その後の設定変更は、そのトピックに公開されます。

デバイス(デバイスA)からのメッセージを使用して別のデバイス(デバイスB)の設定変更を行う場合は、デバイスマネージャを呼び出す必要があります。 APIコールでは、Pub/SubまたはDataFlowからトリガーされるクラウドバックエンドのGoogle Cloud Functionを使用してデバイスAからトリガーできます。

更新これを行う方法を説明するa community tutorialがあります。

DataFlow/PubSub to cloud function

+0

私がいることを知っているが、他のデバイスがそのトピックにサブスクライブして、コマンドを受信できるように、私が欲しいのは、/デバイス/ {デバイスID}/config'を 'に発行するMQTTを使用することです。私は試みたが、うまくいかなかった。 – vantubk

+0

ああ、これはデバイスマネージャへのAPI呼び出しを行う必要があります。 – class

関連する問題