LINE BOTとGASを使って晩ごはんを選んでくれるBOTを作る

posted in: bot | 0

こんにちは。サカイです。
仕事から疲れて家に帰ってきて、晩ごはん何にしようかを決めるのすら面倒くさい時、
誰かに決めてもらいたいですよね。

決して自堕落ツールを作りたいのではなく生活効率化ツールという体で
初歩的チャットボット制作記録を書いていきたいと思います。

LINE BOTを作るまでのフローと動作内容

おおまかに、下記作業が必要になります。

  • LINE作業
    • LINE Developer登録
    • BOT登録
    • BOT設定
  • Google作業
    • Googleスプレッドシート作成
    • GoogleAppsScript(GAS)作成

BOTの動作内容としては、下記の流れを想定します。
●「ご飯」とBOTに送信
 → 予め用意した候補の中からランダムで返事してくれる

ここで用意する候補というのは、ご飯リストのようなものです。
ご飯リストはGoogleスプレッドシートにて管理します。

LINE作業

LINE Developerにいつも利用しているLINEのアカウント等でログインするだけで
LINE Developerコンソール画面を開く事が出来ます。
https://developers.line.biz/ja/ LINE Developerサイト

※BOTの登録までは様々なサイトで解説しつくされているので割愛させて頂きます。

Google作業

ご飯リストを作るため、Googleドライブより新規スプレッドシートを作りましょう。

bot1_google_1

A1セルから順に下へ候補を入力していきます。

bot1_Google_2

↑筆者はサボりメーターが振り切ってますが、返事が来たものは何が何でも食べなければいけない縛りプレイも面白いかと思います。

LINEからPOSTされた時のjsonデータから、返事を返す際の返し先を特定します。
したがって、POSTされた時のjsonデータログを溜める用のスプレッドシートも作成します。
手順はご飯リストと同様で、シート名を「log」にします。
※スプレッドシート名ではなく、下部のシート名なので注意

次にGASを使って、LINEからのPOSTをトリガーにGoogleスプレッドシートの対象のセルからランダムに選んだ候補を送信する仕組みを実装していきます。
スプレッドシートの作成と同様に、その他からGoogleAppsScriptを選択します。

bot1_Google_3

存在していない場合は「アプリを追加」から追加します。

エディタ画面が出てきたら、下記ソースをコピペして、必要情報は書き換えます。

参考:https://blog.pnkts.net/2018/06/03/line-messaging-api/

スプレッドシートIDはシートを開いてる際のURL以降の部分がIDになります。

公開

ここまできたら、GASを公開可能にします。
「公開」メニューから「ウェブアプリケーションとして導入」を選択します。

bot1_Google_4

※画像はいろいろ施し入れた現在のバージョンなので28になってます。。。

アプリケーションにアクセスできるユーザーを「全員(匿名ユーザーを含む)」にして導入ボタンを押せば、公開完了です!
承認などの画面が出た場合は画面の手順に沿って承認をして下さい。

ちなみに、コードを改修した場合は都度この手順が必要です。
また、プロジェクトバージョンをその都度「New」にしてあげないと、最新コードが反映されない事がありますのでご注意を!

LINE Developerコンソール画面を開き、Webhook設定を「利用する」に設定し、
URL部分に「現在のウェブアプリケーションのURL」を入力してあげます。
その時、疎通確認が出来ますので、下記のような表示になることを確認しましょう!

bot1_Google_5

話しかけてみる

LINE Developerコンソール画面の、「LINEアプリへのQRコード」からBOTと友達になって話しかけてみます。

bot1_IMG_3532

お手軽簡単に作ることが出来ました。
次回はこのBOTをどんどこ強化していきたいなと思います。

LINEで送る
Pocket