Node-REDとWatsonAssistantを使ってLineBotを作る


はじめに


やりたいこと


  • チャットボットを気軽に作りたい。Node-REDを活用する方向で!!

  • 基本的な使い方は関連記事を参照してください。


Node-REDのまとめ記事


動作環境


  • IBM bluemix Node-RED : v0.20.5


免責事項


  • 検証をして確実と思われる情報を載せておりますが、誤っている可能性もゼロではないので、参考程度にご利用ください


本編


画面

Screenshot_20190502-204816.png


IBM Watson Assistant

やりとりする会話の流れをskillとして定義しておく

ここではサンプルとして、自分が読んだ本のタイトル->目次->メモと辿れるようにしてあります。

図7.png


処理の流れ


  1. 予めLineDevelopersのMessagingAPIを使い、Lineとやり取りできるようにしておく

  2. スマホ/PCで該当のボットにつなぐ

  3. Lineから文字列がくるとNode-REDのURLにデータが送られてくる

  4. ユーザ入力部分をとりだし、IBM Assistantに送る(マルチユーザに対応できるようにユーザIDも移し替える)

  5. 結果を受け取り、LineBotにPOST通信で送る


フロー

図6.png

シンプルですし、かなり満足していますが、フリープランだとしばらく使わないと寝てしまうので少しだけこまりますね。。。