基本的に2つのラズベリーパイがあります。パイソンファイルに辞書から取得したデータを公開し、もう1つはこの辞書データを購読します。これは非常に穏やかな質問ですがお詫びしますが、私はこれに関するインターネット上の情報を見つけることができません。mqttブローカー経由で辞書からデータを送信する方法
0
A
答えて
0
MQTTの基本的なチュートリアルをまだ読んでいない場合は、読んでおくことをお勧めします。それはあなたのトピックとデータがどんなものであるべきかを決めるのに役立ちます。
ここでは、ご使用のケースを公開して購読する方法の例を示します。 パブリッシャーはディクショナリ内のキーを反復し、データをトピック "keys/$ key_name"にパブリッシュできます。メッセージはディクショナリ内のそのキーの値です。
サブスクライバはトピック「キー/#」をサブスクライブすることができます。このようにして、加入者はすべての鍵と対応するデータを取得し、辞書を再構成する。
辞書にあるデータの性質に応じて、さらに多くの方法でデータを公開できます。
0
ホストAのpythonスクリプトからホストBのpythonスクリプトに直接辞書を送る場合は、方法があります。
- 辞書を文字列に変換します。
- 文字列をホストAからブローカへのペイロードとして送信します。
- ホストBを使用してブローカーに登録し、ペイロードを受信します。
- ast.literal_eval()で文字列を評価し、文字列を辞書に戻します。
この説明が不明な場合は、サンプルコードを投稿することができます。
おそらくJSONまたは複数のトピックを代わりに使用しますが、上記の手順が有効です。
関連する問題
- 1. イメージをMQTT経由でArduinoからMOSCAホストに送信
- 2. OpenCV MatをPCからAndroid経由でSocket経由で送信する方法
- 3. プロキシ経由でActiveMQからメッセージを送信する方法
- 4. シリアルポート経由でデータを送信する
- 5. データをAJAX経由で送信する
- 6. ArduinoからHC-05経由でデータを送信する方法は?
- 7. 外部サイトからAJAX経由でサーバーにデータを送信する方法は?
- 8. JSONデータをajax経由でrailsアクションに送信する方法
- 9. QUIC経由でデータを送信する方法
- 10. mqttとnode-redを経由してsnmpサブツリーを送信する
- 11. 3G経由のゲームセンター(GameKit)経由でデータを送受信する
- 12. 携帯電話からBluetooth経由でデータを送信する
- 13. リクエストヘッダ経由のデータ送信とリクエスト本体経由のデータ送信
- 14. Non MultipartデータをRestSharp経由で送信
- 15. AJAX POST経由でURIデータを送信
- 16. ADB経由でデータを送信
- 17. GET経由でサーバーにデータを送信
- 18. シリアルポート経由でデータを送信
- 19. OpenCV(in C++)からMQTTブローカー
- 20. mosquittoブローカーからazure IOT hubにメッセージを送信する方法
- 21. WearableListenerService経由で電話機からWearableにデータを送信
- 22. WoocommerceからLaravelにwebhook経由でデータを送信
- 23. フォームからAjax経由でデータを送信
- 24. UART経由でESP8266(NodeMCU)からArduinoにデータを送信
- 25. WCF restサービスでURIなしでPOST経由でデータを送信する方法
- 26. PySide&Python:シグナル/スロット経由で辞書を送るには?
- 27. ボットからDMを送信し、Discord.py経由で応答をキャッチする方法
- 28. OAuth(Twitter)経由でアプリケーションのscreen_nameから直接メッセージを送信する方法
- 29. USB接続経由でアンドロイドデバイスから.protoファイルを送信する方法
- 30. Windowsコマンドプロンプトでシリアルポート経由でファイルを送信する方法
私はトピックが1つだけ必要だと思っています。辞書を繰り返し処理できるはずですが、私がブローカに反復した内容を公開するというコンテキストでは、どのように反復するのか分かりません。私は辞書をjsonに変換しようとしましたが、ブローカーはそれを受け取っていますが、データを読むために加入者がjsonをどのように分解していますか? –
jsonから辞書を再構築する方法について、あなたの質問のようですが、mqttやpub-subに関係はありませんか?はいの場合は、次のような場合に役立ちます。 http://stackoverflow.com/questions/17496513/json-to-dictionary-in-javascript もしそうでない場合は、あなたの質問に詳しいことを教えてください。 –
私の辞書は次のようにフォーマットされています。キーはdatetimeで、値はfloatです。しかし、mqttは、ペイロードは文字列、バイト配列、int、floatまたはNoneのみであることを指定します。ですから、私の辞書は基本的に互換性がなく、私のキーが日時オブジェクトであれば、私ができることに限られているでしょう。辞書を公開して公開する前に、その辞書を変更して互換性のあるデータ型に変換することをお勧めしますか?あなたはJSONに辞書の各エントリ({:「値 『タイムスタンプ』:」 "}のようなものを変換する場合は –