×

らずらいと姫の挑戦日記(第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を選択します。

選択すると下記の画面が開かれるので、「起動」を押しましょう☄

Cloud設定①

 

次にデバイスの参照がひらくので
「デバイスの追加」を押します。

Cloud設定②

そうすると”デバイスタイプ” ”デバイスID”の入力画面になるので、
お好きに入力して「次へ」を押しましょう☄

Cloud設定③

次へを押すと、下の画面が開きます。

なにも入力しないで、「次へ」を押しましょう!

④

そうすると認証トークンを入力する画面になります。
こちらも何も入力せずに「次へ」を押してください☄

 

⑤

次も入力内容が良ければ、
そのまま「完了」でOKです✽


⑥

 

そうすると、デバイスの資格情報画面が開きます。

デバイスの資格情報5項目は
今後も使うのでメモしておいてくださいね(^-^)大切です!

(①組織ID ②デバイスタイプ ③デバイスID ④認証方式 ⑤認証トークン)

⑦

 

Node-REDとIoT Platformの接続

 

ここまでにIBM CloudのNode-REDとIoT Platformを使用しました。
続いて、Node-REDからIoT Platformに接続するための設定を行います。

⑧

 

起動を押すと、下のような画面が表示されます。

「接続の作成」を押してください☄

⑨

次の画面がひらきましたら「接続」を押します。

 

10

 

そうすると、Node-REDが再起動されて、
しばらくするとIoT Platformに接続する準備が完了します。

下のような画面が出ましたら
右上にある「経路」を押しましょう!

 

11

 

これで接続は完了です!

 

Node-REDの設定をしよう✿

 

再びIBM Cloud側のNode-REDの画面に移り、
今度はIoT Platformの設定をしていきましょう✽

まず、下記のようにノードを並べます。

12

 

並べたら、”IBM IoT”のノードをクリックしてください。

そうすると編集画面になるので、
下記のように入力してください(^_^)

ここで先ほどデバイスの資格情報で
メモしたところを使っていきます✩

 

13

 

①Authentication : Bluemix Service
②Output Type : Device Command
③Device Type : 先ほどメモしたデバイスタイプを入力
④Device Id : 先ほどメモしたデバイスIDを入力
⑤Command Type : message
⑥Format ; json
⑦Date : line message
⑧QoS : 0(ゼロ)

入力したら、右上の「完了」を押しましょう☄

 

完了を押したら、フローの画面に戻ります。
右上にあるデプロイを押してください。

14

 

「接続が成功しました」と出ればOKです!

 

Raspberry Pi側のNode-REDの設定をしよう✩

 

次にRaspberry Pi側のNode-REDを設定していきます。

Node-REDを立ち上げたら下の画像のようにノードを置いてください。

 

15

 

次にall commandsのノードをクリックします。

そうすると下の画面になるので、
Credentialsの鉛筆✐マークを押しましょう。

編集画面に移ります。

 

16

 

ここでも先ほどデバイスの資格情報で
メモしたところを使っていきます!

 

18

 

①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で「こんにちは」と送ってみます。

LINE

 

Node-REDを見てみると・・・・・

 

完成✽

 

 

しっかり送れてました~~!

これで設定部分はばっちりです(^-^)✩

さて、次回はいよいよLINEから送信したメッセージでNeoPixelを制御したいと思います〜☆