ターミナルからhttpsでMQTTブローカーshiftr.ioにメッセージを送る方法。
MQTTブローカーshiftr.ioの使い方の確認
MQTTブローカーとしてshiftr.ioを使うのだが、使い方忘れてたので、Node-REDで確認。
enebularとローカルのNod-REDをshiftr.ioのMQTTブローカーで接続する方法|デジタルライト(Digital-light.jp)
過去記事を参照し、同じようにフローを作成。
サーバーのURLを下記にして、
mqtt://public:public@public.cloud.shiftr.io [code] トピックは "test"として送信。 無事に動いたので、ブローカーの準備OK. <h2>shiftr.ioのMQTT Interface</h2> shiftr.ioでは、Port443を使ってWebSocketでの送信もできる様子。 <blockquote> Ports For shiftr.io Cloud instances the interface is available over the insecure port 1883 (TCP), secure port 8883 (TLS) and secure WebSocket port 443 (WSS/HTTPS). With shiftr.io Desktop the interface is only available over the insecure port 1883 (TCP) and WebSocket port 1884 (WS/HTTP) due to the lack of a certificate. Other ports are selected if one of the ports is already in use by another application. </blockquote> <a href="https://www.shiftr.io/docs/broker/mqtt-interface/" target="_blank" rel="noopener">MQTT Interface - shiftr.io</a> <h2>ターミナルからwebsocketで送る</h2> <img src="https://digital-light.jp/wp-content/uploads/2022/03/Try-shiftr.io-2022-03-20-22-19-17.jpg" alt="Try shiftr io 2022 03 20 22 19 17" title="Try - shiftr.io 2022-03-20 22-19-17.jpg" border="0" width="598" height="200" /> ターミナルからhttpsを使ってshiftor.ioにメッセージを送る方法はこちら。 なので、Node-REDでテストした [code] mqtt://public:public@public.cloud.shiftr.io
のトピック “test”におくるには、
curl -X POST "https://public:public@public.cloud.shiftr.io/broker/test" -d "world"
これでおくればよい。
このフローでターミナルのコマンドを試してみると
無事にデータをおくることができた。
まとめ
Node-REDのWebsocketノードから送るのはうまくいかず。