Google Apps Script で LINE Bot を作成する

Bot」をご存じでしょうか。

Bot (ボット) は robot (ロボット) のIT分野における略称で、操作や作業を自動で行うプログラムのことを指します。

たとえば、コミュニケーションツールの1つであるLINEですが、Messaging APIというものが用意されており、誰でもLINE Botを作成できます。

Messaging APIを使用することで、任意のURLでWebhookイベントを受け、応答メッセージを送ることができます。

今回はGoogle Apps Scriptで、Webhookを受けるWebAPIを用意し、メッセージをそのまま返すLINE Botを作成してみます。

 

1. LINE Botアカウントの作成

まずは、Botアカウントを用意します。

LINE Messaging API のサイト ( https://developers.line.biz/ja/services/messaging-api/ )
でログインし、チャネル(Line Bot)を作成します。

 

Botに関する項目を入力し、作成したらMessaging API 設定でチャネルアクセストークンを発行します。

Botのグループへの参加可否やあいさつメッセージ有無等の設定も可能です。

 

2. WebAPIの作成

次に、Google Apps Script ( https://script.google.com/ )
でログインし、プロジェクトを作成します。

下記のコードを入力します。
ACCESSTOKENには、先ほど発行したチャネルアクセストークンを設定します。

 

 

doPost関数がLINEからのWebhookイベントを受ける関数です。

イベントにはフォロー、メッセージなど色々種類がありますが、今回はメッセージ、さらにテキストの場合のみ返信するものとしています。

reply関数では、LINEの返信用APIを呼び出しています。
返信にはWebhookイベントに含まれる返信用トークン(replyToken)が必要となります。
返信するメッセージは、受信したテキストメッセージをそのまま設定しています。

では、これをWebAPIとして公開します。
メニューの 公開 から ウェブアプリケーションとして導入 を選択します。

そして、実行者は自身、アクセスは全員として、デプロイします。

公開したWebAPIのURLをメモしておきます。

3. Webhookの設定

再びMessaging APIの設定に戻ります。

URLに先ほどのWebAPIのURLを入力し、Webhookの利用をONにします。

これで完了です。
QRコードで友達に追加して実際にメッセージを送ってみます。

このように送信したメッセージを自動で返してきます。

以上です。

 

今回はメッセージをそのまま返信する単純なBotでしたが、
GoogleAppsScriptはスプレッドシートやドライブにもアクセスできるので、
あとはアイデア次第で色々できるかと思います。

ぜひ何か作ってみてください。