それではAndroid端末のアプリからブローカーに接続して、メッセージをパブリッシュしてみます。以下がAndroid端末側の操作画面です。
まず「PUBLISH」タブからパブリッシュ機能に切り替えた後、雲(クラウド)マークをタップしてブローカーに接続します。すると接続状態が「Connected」に変わります。そしてボタンをタップしてメッセージをパブリッシュします。そして最後にもう一度、雲マークをタップしてし接続を切断します。
この操作でやりとりされたMQTTプロトコルのパケットは、下図の様にキャプチャーされました。
ここではIPアドレス「192.168.1.16」がブローカー、「192.168.1.12」が今回パブリッシャーとなっているAndroid端末のIPアドレスです。No順に解説すると以下のようになります。
No.56でAndroid端末からブローカーに対して接続要求を行っています。すると接続を受け付けた旨の「Ack」をブローカーからAndroid端末に返しています(No.57)。その後、No.59ではAndroid端末からサブスクライブ要求を送っています。No.60でサブスクライブ要求に対してブローカーがサブスクライバーに対しAckを送っています。その後No.64までがサブスクライブ要求とブローカーからのAckのやりとりが続きます。
No.76でAndroid端末からブローカーに対して、パブリッシュメッセージが送られています。No.77で先ほど送られたパブリッシュメッセージのトピックをサブスクライブ要求したサブスクライバーがいたので、ブローカーがそのサブスクライバーに対してパブリッシュメッセージを送っています。No.119でAndroid端末から切断要求が届きました。
Copyright © ITmedia, Inc. All Rights Reserved.