先日、AWS IoTが使えるようになりましたが、AWS IoTのNode-REDノードを見つけたので使ってみるメモです。
インストール
npmはこちら。
node-red-contrib-aws-iotからnode-redにインストールします。
2016/06/20時点ではまだベータと銘打っていましたが、UIをみるにMQTTにラップしているものとお見受けします。
cd .node-red npm install node-red-contrib-aws-iot
今回はWindows10のNode-REDにインストールしました。Raspberry PiもWindows10でもほぼおなじ感覚で入ります。
無事、インストールされました。
設定
AWS IoTの入力を試してみましょう。
前回の記事で使ったNodeJSの設定を移植する形で進めます。
var device = awsIot.device({ "host": " .iot.ap-northeast-1.amazonaws.com", "port": 8883, "clientId": "sample01", "thingName": "sample01", "caCert": "root-CA.crt", "clientCert": " -certificate.pem.crt", "privateKey": " -private.pem.key" });
- Serverにはhostの情報を入力します
- ClientIDにはclientIdの情報を入力します
パスは今回は絶対パスで指定しました。例えば「C:\key\aws_iot\ -private.pem.key」といった形で直接指定することができました。
- Key PathにはprivateKeyの情報を入力します
- Cert PathにはclientCertの情報を入力します
- CA PathにはcaCertの情報を入力します
試していませんが相対パスもおそらく指定可能です。
接続先の設定を終えたら、トピックを指定します。今回も「topic_1」で指定しました。
早速、デバックノードとつなげます。
AWS IoTからテストしてみる。
早速テストしてみます。
AWS IoTのメニューからMQTT Clientページに行きます。
発信するためにGenerate client IDボタンで適当なClientIDを発行します。
ClientIDを作成しましたらPublic to topicに行きます。
早速、Publish topcで、topic_1の値を設定してPublishボタンで発信します。
無事、Node-REDのデバックノードで検出できました。
node-red-contrib-aws-iotはまだベータ版のようですが、今でも軽い用途であれば問題なく使えそうです。
NodeJSコードだけでなく、セキュアにやり取りできるAWS IoTサービスに送受信するNode-REDフローができれば、一層実践的にデバイス連携ができますね!早速、Raspberry Piでは設定すべきものだなと思いました。
それでは、よきAWS IoT Lifeを!!!