サブスクライバーがパブリッシュされるメッセージを待っている間に、もう1つのコマンドプロンプトでパブリッシュメッセージを送ってみましょう。
c:\Program Files (x86)\mosquitto>mosquitto_pub -h 192.168.1.16 -t arduino/d2/ -m "1" c:\Program Files (x86)\mosquitto>mosquitto_pub -h 192.168.1.16
mosquitto_pubがブローカーに対してパブリッシュメッセージを送るコマンドです。-h でブローカーのIPアドレス、-t でトピックを指定します。トピックは文字列を/で区切ります。トピックは任意ですが、サブスクライバーとパブリッシャー間でお互いにメッセージをやりとりできるよう双方で示し合わせておく必要があります。-m オプションの後にメッセージを指定します。正常にパブリッシュされるとコマンドプロンプトに制御が戻ってきます。
上の例は arduino/d2 というトピックに対して“1”あるいは“0”のメッセージをパブリッシュしています。以上の操作を行ったとき、サブスクライバー側のコマンドプロンプトには以下のようなメッセージが表示されます。
c:\Program Files (x86)\mosquitto>mosquitto_sub -h 127.0.0.1 -t "#" -v arduino/d2/ 1 arduino/d2/ 1
mosquitto ブローカーを終了するにはmosquitto ブローカーを立ち上げているコマンドプロンプトで、「Ctrl+C」を入力することで停止できます。コマンドプロンプトには以下が表示され、ブローカーは終了します。
1461812900: Received PINGREQ from mosqsub/13632-hiro3 1461812900: Sending PINGRESP to mosqsub/13632-hiro3 1461812908: mosquitto version 1.4.3 terminating c:\Program Files (x86)\mosquitto>
今回は連載の初回ということもあり、この連載の概要や目標をお話ししました。またローカルのPCにMQTTのブローカーの1つ「mosquitto」を導入しまし、サブスクライバーとパブリッシャー間でのメッセージの受け渡しを試してみました。次回はMQTTのプロトコルを詳しく見ていきたいと思います。お楽しみに。
Copyright © ITmedia, Inc. All Rights Reserved.