2018-12-25

LINE の Bot と Dialogflow を使って友達を人体錬成し,クリスマスを最高の日にしよう!

「パーティー フリー素材 いらすとや」の画像検索結果


こちらは Shanon Advent Calendar 2018 の25日目の記事です.
こんにちは Tado56 です.
みなさん,クリスマスですね.
誰とお過ごしでしょうか? 家族,友達,恋人?
そうですよね,一人ですよね.とてもわかります.

別にクリスマスに一人だからなんだって話だし,そんな世間の空気に惑わされるような人間ではないし別に何も気にしていないしなんなら一人の方が好きなまであるしいっそのくぁwせdrftgyふじこlp

そうですよね,なんだかんだ何もないのも寂しいですよね.
でも恋人もいないし,家族はすぐに会いに行ける距離にいないし,遊んでくれる友達もいない・・・
でも今日何かしたという痕跡がほしい・・・.そこで考えました.友達を作ろう!

LINE のチャットボット と Dialogflow で友達を作る

今回は,LINE の Messaging API と, Dialogflow を使って友達から飲み会に誘われる,というチャットボットをコードを書かずに作ってみようと思います.

LINE Messaging API で bot を作る

Messaging API とは, LINE が公開している,ユーザとの双方向コミュニケーションを実現する API です.

この API を利用するには, LINE Developer コンソール にログインします.
初回ログイン時には開発者登録をする必要があります.項目を埋めて進んでください.


  • 次にプロバイダーを作成します.これは作成する bot の提供元になります.画像ではすでに存在していますが,「新規プロバイダー作成」をクリックします.




  • プロバイダー名を入力して完了します.

  • プロバイダが作成できたら,次はチャネルを作ります.今回は Messaging API を使用するので, Messaging API を選びます.




  • 入力画面に遷移しますので,必要な情報を入力します.
    • アプリ名: 任意(これが利用者に表示される名前になります)

    • アプリ説明: 任意
    • プラン: Developer Trial
    • 大業種: 任意
    • 小業種: 任意
    • メールアドレス: 自分のメールアドレス
  • 入力をして作成すると,チャネルが作成されます.
  • 作成したチャネルをクリックして,「チャネル基本設定」の設定を行います.
  • 「メッセージ送受信設定」の「アクセストークン」の「再発行」ボタンをクリックします.

  • そのまま再発行します

  • ほかの項目
  • メッセージ送受信設定
    • Webhook送信: 利用する
  • LINE@機能の利用
    • 自動応答メッセージ: 利用する
    • 友達追加時あいさつ: 利用する
  • 友達追加時のあいさつを有効にすると,友達に追加した瞬間にメッセージを送ることができます.今回はこれを使って,「向こうから連絡をしてきてくれた感」を演出したいと思います.
    • 設定メッセージ: よう!元気? (ニッコリ絵文字)
  • いったんここまででLINE側の設定を終わらせて,次は返答メッセージを作っていきます.

Dialogflow を使って対話させる

言語解析エンジンです.
自然言語処理って面倒ですが,これを使えば面倒なところを大幅に削減できます.
今回はこれを使ってユーザとの会話を成り立たせるようにしたいと思います.

まずは Dialogflow にアクセスしてアカウントを作成します.
アカウントを作成したら, Agent を新規作成します.項目を入力したら「CREATE」で作成します.

  • 作成したら,Entity を登録します.
「よう!元気?」 これにはいろいろな返答の仕方があります.(元気!,あんまり元気じゃない,よう!等)
こういう時に「hello」というEntityを作っておいて,それらの返答の仕方のバリエーションを登録しておくと,挨拶の返答を理解してくれるようになります.
  • Intent の作成をします.

こんな画面になります.お好きな intent name を付けて,最初は「ADD TRANING PHRASES」をクリックします.
ここには「よう!元気?」に来るであろう返答の例文を入れてあげて下さい.
ここの例文が増えれば増えるほど,挨拶の返答を理解できるようになります.
このハイライトは,Entity に該当する単語が見つけることができたため,この例文が hello entity であると検出されています.

  • レスポンスを設定する
「ADD RESPONSE」でレスポンスの設定をします.
ここで設定した内容が,LINEでユーザに変身されることになります.
最後に右上の「SAVE」をクリックして完了です.

  • LINEと連携する
LINEと連携できます.左のメニューから「Integrations」 をクリックします.
そこには,様々なアプリのアイコンがずらりと並んでいますが,LINEのアイコンを見つけて,スイッチを有効にしてください.デフォルトは無効になっています.
有効にすると,LINE のチャネル情報を入力するダイアログが表示されます.ここに,作成した bot の情報を入力します.

チャネルID等は,LINE Developers コンソール の「チャネル基本設定」にあります
Channel ID:Channel ID
Channel Secret: ChannelSecret
Channel Access Token: 「メッセージ送受信設定」の「アクセストークン」

そして, 「Webhook URL」 をコピーして, LINE Developers コンソール の「メッセージ送受信設定」の「Webhook URL」 にペーストしてください.
接続確認が成功すれば連携が完了したことになります.

友達が作れた!!!

コンソールにQRコードがあるので,LINE で QRコードを読み込んで友達追加します.

先ほどまで設定した会話ができるようになりました.


あとは「友達から飲み会の誘いを受けた」というシナリオを作り,友達と会話をしてみたいと思います.



・・・はい



0 件のコメント:

コメントを投稿