らずらいと姫の挑戦日記(第52回)LINEからライトの光を制御②
2019-02-12
お久しぶりです!らずらいと姫です。
最近はあったかくなったり寒くなったり、忙しい気温ですね。
みなさんも体調管理はお気を付けください!
さて今回は、LINEからライトの光を制御~パート2~です☄
LINE DevelopersやNode-REDの設定方法は
前回の記事をご覧ください☄
今回はサーバーから手元になるゲートウェイまでデータを送信する部分をやっていきます。
今回使用しているIBM Cloudのようなインターネット上のサーバーは
インターネット上に一つしかない固有の名前が決まっているのでサーバー間でデータのやり取りをすることができるのですが、
手元にあるゲートウェイは名前が決まっていないのでLINEからIBM Cloudにデータを送ったようなやり方でデータを渡すことができません。
そこで、サーバーからゲートウェイにデータを送信するために利用されるのがMQTTという通信手段です。
IBM CloudではIoT Things platformというサービスで利用することができるので、
それを利用してLINEのメッセージをゲートウェイまで届けたいと思います!
IBM Cloudの設定
まずはIBM Cloudにログインして起動をします。
そうするとダッシュボードが開かれるので、
Cloud Foundry サービスの
Internet of things Platformを選択します。
選択すると下記の画面が開かれるので、「起動」を押しましょう☄
次にデバイスの参照がひらくので
「デバイスの追加」を押します。
そうすると”デバイスタイプ” ”デバイスID”の入力画面になるので、
お好きに入力して「次へ」を押しましょう☄
次へを押すと、下の画面が開きます。
なにも入力しないで、「次へ」を押しましょう!
そうすると認証トークンを入力する画面になります。
こちらも何も入力せずに「次へ」を押してください☄
次も入力内容が良ければ、
そのまま「完了」でOKです✽
そうすると、デバイスの資格情報画面が開きます。
デバイスの資格情報5項目は
今後も使うのでメモしておいてくださいね(^-^)大切です!
(①組織ID ②デバイスタイプ ③デバイスID ④認証方式 ⑤認証トークン)
Node-REDとIoT Platformの接続
ここまでにIBM CloudのNode-REDとIoT Platformを使用しました。
続いて、Node-REDからIoT Platformに接続するための設定を行います。
起動を押すと、下のような画面が表示されます。
「接続の作成」を押してください☄
次の画面がひらきましたら「接続」を押します。
そうすると、Node-REDが再起動されて、
しばらくするとIoT Platformに接続する準備が完了します。
下のような画面が出ましたら
右上にある「経路」を押しましょう!
これで接続は完了です!
Node-REDの設定をしよう✿
再びIBM Cloud側のNode-REDの画面に移り、
今度はIoT Platformの設定をしていきましょう✽
まず、下記のようにノードを並べます。
並べたら、”IBM IoT”のノードをクリックしてください。
そうすると編集画面になるので、
下記のように入力してください(^_^)
ここで先ほどデバイスの資格情報で
メモしたところを使っていきます✩
①Authentication : Bluemix Service
②Output Type : Device Command
③Device Type : 先ほどメモしたデバイスタイプを入力
④Device Id : 先ほどメモしたデバイスIDを入力
⑤Command Type : message
⑥Format ; json
⑦Date : line message
⑧QoS : 0(ゼロ)
入力したら、右上の「完了」を押しましょう☄
完了を押したら、フローの画面に戻ります。
右上にあるデプロイを押してください。
「接続が成功しました」と出ればOKです!
Raspberry Pi側のNode-REDの設定をしよう✩
次にRaspberry Pi側のNode-REDを設定していきます。
Node-REDを立ち上げたら下の画像のようにノードを置いてください。
次にall commandsのノードをクリックします。
そうすると下の画面になるので、
Credentialsの鉛筆✐マークを押しましょう。
編集画面に移ります。
ここでも先ほどデバイスの資格情報で
メモしたところを使っていきます!
①Organization : 先ほどメモした組織IDを入力
②Server Name : 先ほどメモした組織ID+Messaging.internetofthings.ibmcloud.com
③Device Type : 先ほどメモしたデバイスタイプを入力
④Device ID : 先ほどメモしたデバイスIDを入力
⑤Auth Token : 先ほどメモした認証トークンを入力
入力し終わったら右上の「更新」を押して
「完了」しましょう。
これでRaspberry Pi側Node-REDの
all commandsノードについている赤い三角△が、
青色の丸○になればIBM Cloud側の設定は完了です✩
実際にLINEを送ってみよう✿
それでは実際に、
ちゃんとLINEが送れるのかどうか試してみましょう!
LINEで「こんにちは」と送ってみます。
Node-REDを見てみると・・・・・
しっかり送れてました~~!
これで設定部分はばっちりです(^-^)✩
さて、次回はいよいよLINEから送信したメッセージでNeoPixelを制御したいと思います〜☆