Web上で動作するPLAYCANVASというゲームエンジンを使って、自社のショールームの各種設備機器を仮想空間と連動する方法を調べています。
まだまだ解決にはいたっていないのですが、PLAYCANVAS-Tutorial:リモートサーバーのJSONデータを非同期で読み込むことはできたので、Node-REDでAPIのエンドポイントを作ればできそうな気はします。
ただ、PlaycanvasはSSL接続が必須のようなので、ここらへんをどうするか調査中。
Terminalからcurlでshiftor.ioにデータを送る方法
そんな中、MQTTブローカーのshiftr.ioについて、MQTTじゃなくても、httpsにPOSTすることでデータを送ることができることを知りました。
例えば、testというトピックにサブスクライブしている相手に送るには、
curl -X POST "https://public:public@public.cloud.shiftr.io/broker/test" -d "world"
このようにすることで、”world”を送ることができます。
Postmanを使ってshiftr.ioにメッセージをおくる方法
curlでPOSTで送れるということは、Postmanをつかってもshiftor.ioにデータを送れそうです。
いろいろ試した結果、
![Postman 2022-03-21 15-03-20.jpg Postman 2022 03 21 15 03 20](https://digital-light.jp/wp-content/uploads/2022/03/Postman-2022-03-21-15-03-20.jpg)
メソッド:POST
URL : https://public.cloud.shiftr.io/broker/test
にして、
Authentificationの
Username : public
Password : public
![Postman 2022-03-21 15-06-11.jpg Postman 2022 03 21 15 06 11](https://digital-light.jp/wp-content/uploads/2022/03/Postman-2022-03-21-15-06-11.jpg)
Bodyは”raw”にして、送りたいデータをフォーム内(今回は”aaa”)として、Sendします。
![Node-RED 2022-03-21 15-07-33.jpg Node RED 2022 03 21 15 07 33](https://digital-light.jp/wp-content/uploads/2022/03/Node-RED-2022-03-21-15-07-33.jpg)
これで、Node-RED側でサブスクライブしてるmqtt inノードで受信することができました。
まとめ
データのやりとりはいろいろ大変ですなぁ