こんにちはニコニコ

 

ロシアワールドカップ、日本vsコロンビア観ました??
あの強豪コロンビアに勝利ですよびっくり おめでとうございます!!

次のガーナ戦も期待していますグー

 

そんな日本は、めっきり梅雨の時期になりましたね雨

こんな時は家に引きこもって、Node-REDを楽しむのが一番ですねキョロキョロ

 

というわけで、今回はLINE BOTを作ってみたいと思います爆  笑

 

まず必要なものとして

・LINE Messaging API 

https://developers.line.me/ja/

 

・IBM Cloud内のNode-RED

https://www.ibm.com/cloud-computing/jp/ja/

 

・他に追加したい機能があれば

 

【作ろうと思った背景】

・社内のプロジェクトとして、IoTやAIを学ぶ勉強会を行っており、手軽で試せるものが欲しかった

・ノーツコンソーシアムのクラウド研で教わったことをフィードバックするため

・IBM Watson Workspaceでも実装出来るが「IBMだけで構築してるから出来るんでしょ?」と言われるのがシャクだったため

・LINEならほとんどの人が試してくれそうだから

 

手始めに・・・

Messaging APIを使ってボットを作成するには、まずLINE Developersコンソールでチャネルを作成しなければなりませんアセアセ

以下、作成手順です。

https://developers.line.me/ja/docs/messaging-api/getting-started/

 

そして出来上がったのはこちらキラキラ

検証用としてはまずまずの出来ですw

 

次はIBM Cloud側に必要になるNode-RED側に移ります。

 

1)オウム返しするボットを作成

完成系はこんな感じです。

(超シンプル)

 

<httpノード(Webhook)>

以下のように「/line_hook」と設定しました。

メソッドは「POST」を指定します。

 

LINE Developerで作成したアプリのWebhook URLに

https://<node-redのURL>.mybluemix.net/line_hook」と設定します。

 

<functionノード>

ここのノードでは、メッセージを返す処理を行っています。

リファレンスを確認するとこのようになっていました。

 

テキストを返す場合

リファレンスとグーグル先生を参考に作成したものが以下のものになります。

3行目:Bearer値として、アクセストークン値をコピペします。

 

以下の赤枠の値です。

 

7行目~14行目:ただオウム返しするのはつまらないので

乱数を発生させて、発生した分だけ「わん」を追加していますニヤリ

 

18行目以降はリファレンスを参考に作りました。

 

<httpノード(send_result)>

URLはリファレンスを参考に設定しました。

 

<httpノード(http)>

特に何も設定してませんタラー

 

デプロイして、早速LINEで試してみましょう目

 

見事なオウム返しですね照れ

筆者、「わん」をランダムでつけることにより、

 

投稿した言葉を犬語に変換!

 

という風にごまかしていますww

とても簡単でしたよねOK

 

応用編として・・・

・スタンプが投稿されたらスタンプを返す

 

 

・写真が投稿されたらVisual Recognitionで分析結果を返しちゃう

 

とか追加しておくと、ちょっとおシャンティなボットになりますねw

 

 

今回はNotes/Dominoなお話はなかったですが、

投稿されたメッセージからNotesの文書検索とか出来るといいなーって思ってます。

某会社が紹介してたLINEでワークフローもできちゃいそうだな・・・

 

 

きょうはこの辺で・・・

 

 

あでゅーバイバイ