チャットボットの作り方 Google Dialogflow と LINE公式アカウント連携

Kazuki Yonemoto
7 min readApr 21, 2019

--

チャットボットを利用したサービスは昨今激増し、様々なシーンでチャットボットを目にしたり利用する機会が増えてきたかと思います。特に2016年、FaceBookとLINEがチャットボットの開発環境をオープンさせたのを皮切りに多くの企業がチャットボット市場に参入しました。

また、チャットボットを簡単に作成することができるツールも豊富に存在します。そこで、本記事では独自のチャットボットを作る為に必要なサービスの紹介やその設定方法を中心に紹介していきたいと思います。

今回はGoogleのDialogflow(チャットボットサービス)をLINE公式アカウント※1 と紐ずける方法について書いていきます。

LINE公式アカウントの登録

まずは以下のリンク先でLINE公式アカウントの作成を行いましょう。テスト的に利用する場合であれば未認証アカウントを開設するを選択し、アカウントを開設しましょう。

【LINE公式アカウント】

https://www.linebiz.com/jp/entry/

すると以下のようなフォーム画面に遷移しますので必要な情報を入力していきましょう。ここで入力するアカウント名がユーザーに表示される名前になります。

https://www.linebiz.com/jp/entry/

業種は審査の際に利用される情報のようです。審査を通す予定がなければ適当なものを選択して問題ありません。

アカウントの作成ができたらLINE Official Account Managerのアカウントリストから先ほど作ったアカウントを選択します。

アカウント名がページ上部に表示されている

この時点で自身のLINEアカウントと正しく紐ずいていれば自動でチャットボットアカウントが友達追加されます。友達追加されてないなと感じた場合はサイドバーの友達追加を展開すればQRコードやリンクが表示される為そこから追加しておいてください。

まずはユーザーがボットを友達登録した際に返すメッセージを変更してみましょう。左サイドバーの 自動応答メッセージ>あいさつメッセージ を展開すると既にデフォルトでメッセージが入っているので作りたいボットのキャラに合わせて変更するのがいいでしょう。

あいさつメッセージ

次に応答メッセージの項目をみてみましょう。ここではユーザーからメッセージが入った際に返す文言を自動で登録しておくことができます。今回はDialogflowで作成した応答を返すのでステータスをオフにしておきます。

応答メッセージ

ナビゲーションから「チャット」を選択し、さらにサイドバーからMessaging APIを開きます。DialogflowとLINEの連携ではWebhookと呼ばれる技術を利用します。

ここではその連携に必要なChannel IDChannel secretを確認することができます。ただ、連携には Channel Access Tokenの発行が必要な為、LINE Developersへアクセスします。

【LINE Developers】

https://developers.line.biz/ja/

LINE Developersへアクセスできたら利用するプロバイダーをプロバイダーリストから選択します。さらに今回作成するボットのチャンネルが新規で作成されている為、該当チャンネルを開きます。
(ログインには既存のLINEアカウント情報を利用)

チャンネルの内容をスクロールしていくとLINE Official Account Managerで確認できたChannel IDやChannel secret以外にも様々な情報が登録されていることが分かります。「メッセージ送受信設定」という項目の中にアクセストークンのいう箇所があるのでそこを確認します。右側に「再発行」ボタンがあるのでそこをクリックし、アクセストークンの再発行を行います。

さらにその下の「Webhook送信」を利用するにして保存します。ここで変更した操作が反映されるのに少し時間がかかる為一旦、ログアウトして時間を置きます。(長い場合だと数十分かかります)

ここで一旦LINE側の作業を止めて、Dialogflow のConsole画面を開きます。LINE公式アカウントと連携させるエージェントが開かれていることを確認し、サイドバーのIntegrationsをクリックします。

Dialogflow

すると Dialogflowと連携可能なサービスが表示されるのでその中からLINEを選択します。連携に必要な情報を登録するフォームが現れます。

ここでWebhook URLが取得できるのでコピーしてLINE Official Account Managerの「Messaging API」にあるWebhook URLのフォームにペーストして保存します。

さらに再度LINE Developersへログインして「Webhook送信」が利用するになっていることを確認し、その下のWebhook URLにもペーストして保存します。

今度はLINE DevelopersのChannel ID、Channel secret、アクセストークンをコピーし、Dialogflowでポップアップ表示されている画面の入力箇所へそれぞれペーストしていきます。 全て入力できればSTARTボタンをクリックします。ここでエラーが出なければ Dialogflow とLINE公式アカウントの連携は完了です。

では早速、正常に連携ができているか実機でも確認してみましょう。LINEが入っている端末から友達追加したボットに登録済みインテントのフレーズを投げてみます。ここでは設定時デフォルトで登録されているDefault Welcome Intentのフレーズを入力してみます。ちゃんと応答が返ってきました。

連携周りの設定はあまり面白くないかもしれませんが普段慣れていないと以外に躓きやすいポイントだったりするので今回の記事が少しでも開発の助けになれば幸いです。

※1「LINE@」は「LINE公式アカウント」とサービス統合し「LINE公式アカウント」としてサービス提供しています。今後は「LINE公式アカウント」で新規アカウント開設が必要です。

--

--

Kazuki Yonemoto

TAM inc. Web Technical Director / After studying abroad in Canada, I changed from school teacher to Web developer.