BLOG

主に学んだことの備忘録を書いています。

  1. HOME
  2. ブログ
  3. ライフログ
  4. WatsonのUIをLINEに設定する2
Watson LINE 診断士

WatsonのUIをLINEに設定する2

の続きの記事です。

httpノードをフロー1に置く。

WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

ノードをクリックすると編集画面になるので、プロパティを下記のように入力する。

WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

functionノードを同じように置いてダブルクリックします。

WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

エディタが開くので下記のように入力し「完了」します。

flow.set(“replyToken”,msg.payload.events[0].replyToken);
return msg;
WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

ノードとノードを接続します。

WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

http responseノード(httpノードではありません。)を下記のようにfunctionノードと繋ぎます。

WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

changeノードを置いて、編集画面で下記のように入力して「完了」します。

(値の代入 msg.)
payload
(対象の値 mag.)
payload.events.0.message.text
WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

functionノードとchangeノードを下記のように繋げます。

WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

次にassistantノードを下記のように繋ぎます。

WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

changeノードを置きます。

WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

changeノードに下記を入力して「完了」します。名前はなんでも良いのでわかりやすいものにしてください。

(値の代入 msg.)
payload.optext
(対象の値 mag.)
payload.output.text.0
WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

また繋げます。

WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

functionノードを追加して、名前は自分でわかるように、コードには下記のように入力し、「{LINEアクセストークン}」部分は一旦このままで「完了」する。

var output_text = flow.get("text");

var post_request = {
    "headers": {
        "content-type": "application/json; charset=UTF-8",
        "Authorization": " Bearer " + "{LINEアクセストークン}"
    },
    "payload": {
        //"replyToken": msg.payload.events[0].replyToken,
        "replyToken": flow.get("replyToken"),
        "messages": [
            {
                "type": "text",
                "text": msg.payload.optext
            }
        ]
    }
};
return post_request;
WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

http requestノードを作って、メソッドは「POST 」、URLは下記の文字列、出力形式はJSON、名前は「Reply Message」として「完了」する。

URL
https://api.line.me/v2/bot/message/reply
WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

ここまでで、一旦Node-REDは置いておきます。次に、IBM Cloudのダッシュボードに戻ります。

ダッシュボードのサービスからWatsonのSkillsを開発した名前をクリックします。Watson Assistantの画面から「ツールの起動」をクリックします。

メニューから「Skills」を選択します。すでに設定してあるSkillsが表示されたら、縦に・が並んだアイコンをクリックして、「View API Details」をクリックします。

WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

Workspace IDが表示されるので、それをコピーする。

WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

Assistantノードをダブルクリックし編集画面を表示する。

WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

先ほどのWorkspace IDを入力し、「完了」する。

WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

次は、LINE側のAPIをいじります。LINE Developersに戻り、「Massaging API」の「チャネルを作成する」をクリックする。

その後、チャネルの名前などを決めていきます。

WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

チャネルが作成されると、新規チャネル「@@@@」が作成されました。と表示され、プロバイダーリストの下位レイヤーにチャネルが作成されます。

WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

LINE系の言葉がたくさん出てきたので整理します。LINE Developersは、通常の個人LINEアカウントと紐づけることができます。レイヤーで見ると、

LINE Developers – 個人LINEアカウント
 ∟プロバイダー
    ∟チャネル

また、ややこしいのは、LINE@ MANAGERでこれらを開くと、

LINE@MANAGER(アカウント一覧)
 ∟プロバイダー
 ∟チャネル

と、プロバイダーとチャネルのアカウントが並列に表記されているので、行ったり来たりするとよくわからなくなるかもしれません。

新チャネルを開くと、「チャネル基本設定」画面にたどり着きます。

WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

ここで、
・Webhook送信を「利用する」
・Botのグループトーク参加を「利用する」
にします。(*画像は利用しないになっていますが、「利用する」に変更してください。もし、グループトークに招待してテストなどをした後、退室させたい場合は、ここを一時的に「利用しない」に変更してください)

WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

また、下記のWebhook URLについては、 Cloud Foundry アプリにつけたアプリ名をxxxの部分と置換すると接続できます。

https://xxx.mybluemix.net/line_hook

もしよくわからなければ、IBM Cloudのダッシュボードから、「リソースの要約」欄のサービスをクリックすると、リソース・リストを開くことができます。

このリストの中で、Cloud Foundry サービスのxxx-cloudantNoSQLDBを開き、下記のような「経路」表示された文字列を探してください。それを上記に当てはめると解決すると思います。

WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

また、ライトプランの場合は、一定時間(数日)動かさないでいると、LINEとの接続が切断されます。その場合も、このリソースリストから、状況が実行中になっていないアプリを見つけ、下記のように縦に三つ並んだ・から実行をクリックすると接続が再開されます。(*写真は、実行中のステータス時の選択肢)

WEB IT 中小企業診断士 WordPress sugiyamayoshiakijp ハンノマライフ

次に、下の方へスクロールして、
メッセージ送受信設定の真下にある、アクセストークン(ロングターム)を再発行します。

このアクセストークンをコピーして、Node-REDの画面に戻りfunctionノードをダブルクリックして、{LINEアクセストークン}の中に、ペーストとします。

それでは、実際にLINE上でWatson Assistantが動くかどうかLINE@ MANAGERに移り、アカウント設定の基本設定をクリックします。画面をスクロールしていくと、QRコードと友だち追加ボタンが表示されます。

Watson LINE 診断士

私の環境では、なぜかここで表示されるはずのQRコードが表示されていませんが、友だち追加のボタンをクリックすると、QRコードを表示する下記の画面に遷移します。

Watson LINE 診断士

これをスマートフォンのカメラアプリで読み取り早速テストしてみましょう。実際の会話は、Watson AssistantでDialogue(会話)を作っていくとボットとして幅広い対応ができるようになります。

お疲れ様でした。

  1. この記事へのコメントはありません。

  1. 2019年 3月 24日
  2. 2019年 3月 24日

関連記事