Google Apps Scriptで簡単!LINE Botでオウム返しを実現する方法
GASを利用してLINE Botを作成する手順
LINE Botでのオウム返しの設定は、比較的簡単です。以下の手順に従えば、誰でも自分のLINE Botを使ってオウム返しを行うことができます。
LINE Developersに登録してBotを作成
まずはLINE Developersにアクセスし、Developer登録を行います。その後、新しいプロバイダを作成し、LINE Messaging API用のチャネルを設定します。
これでBotの基本設定が完了します。次にGASでスクリプトを作成します。
Google Apps Scriptでスクリプトを記述
次に、GASのプロジェクトを新規作成し、以下のようにスクリプトを書いていきます。
function doPost(e) {
// リクエストのペイロードを取得
const json = JSON.parse(e.postData.contents);
const userMsg = json.events[0].message.text;
// オウム返しの処理
replyToLine(userMsg);
return ContentService.createTextOutput(JSON.stringify({ "status": "success" })).setMimeType(ContentService.MimeType.JSON);
}
function replyToLine(replyMessage) {
const LINE_CHANNEL_ACCESS_TOKEN = 'YOUR_ACCESS_TOKEN';
const headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer ' + LINE_CHANNEL_ACCESS_TOKEN,
};
const postData = {
'replyToken': replyToken,
'messages': [{
'type': 'text',
'text': replyMessage,
}]
};
UrlFetchApp.fetch('https://api.line.me/v2/bot/message/reply', {
'headers': headers,
'method': 'post',
'payload': JSON.stringify(postData),
});
}
このスクリプトは、ユーザーからのメッセージを取得し、同じ内容をそのままユーザーに返信するオウム返し処理を実現します。
スクリプトの設定を行う
次に、GASプロジェクトのエディタ上で「プロジェクトのプロパティ」を利用して、LINE Botのチャネルアクセス・トークン(YOUR_ACCESS_TOKEN)を設定します。
さらにスクリプトをウェブアプリケーションとしてデプロイし、エンドポイントをLINE DevelopersのBot設定に登録します。
GASでオウム返しBotを動かす
ここまでの設定が完了したら、Botはメッセージに対してオウム返しを行うようになります。試しにLINEでBotに話しかけてみましょう。
GASのスクリプトとLINEの設定を丁寧に行えば、誰でもオウム返しのLINE Botを作成できます。
実際にオウム返しを試す
Botにメッセージを送信し、Botが同じメッセージを返信するか確認します。正常に動作すれば成功です。
これでオウム返しBotが完成しました!
練習問題:GASを使ったLINE Botでオウム返し
ビギナーのためのスクリプト問題です。以下のコードを読んで、次の問いに答えてください。
function doPost(e) {
const userMsg = JSON.parse(e.postData.contents).events[0].message.text;
replyToLine(userMsg);
}
function replyToLine(replyMessage) {
// Your existing code here
}
このスクリプトのuserMsg変数には何が格納されていますか?
解答と解説
function doPost(e) {
const userMsg = JSON.parse(e.postData.contents).events[0].message.text;
replyToLine(userMsg);
}
解答:userMsgには、LINE Botに送信されたメッセージのテキストが格納されています。
解説:doPost関数は、LINE PlatformからPOSTされたデータを処理し、JSON形式に変換した後、ユーザーから送信されたメッセージのテキスト情報をuserMsg変数に格納します。この変数を使用して、後続の処理を行います。
このメッセージを取得することで、オウム返しをするためのメッセージデータを得ることができます。