スキルアップを始める!

【GAS】Google Apps Scriptを使用してLINE Botを作成する(オウム返しBot編)

GAS(GoogleAppsScript)
GAS(GoogleAppsScript)
この記事は約4分で読めます。

※記事中に広告情報を含みます。

スキルを手に入れた時、人は強くなれる。
Youtubeでスキルアップを始める 電子書籍でスキルアップを始める
\ワードプレスのスキルアップはこちら!/ WordPress入門読本

LINE BotをGoogle Apps Scriptを使用して作成する手順を以下に示します。これには、LINE Messaging APIを使用してメッセージを送受信する基本的なスクリプトとwebhookを使います。

スプレッドシートと連携する前に、まずは初級のオウム返しBotを作ってみます。

LINE Developers アカウントの準備

LINE Developersにアクセスして、アカウントを作成します。

すでに作成しているアカウントを使用している場合は、次に進みます。

新しいプロバイダとチャネルの作成

LINE Developers コンソールにログインし、「プロバイダの作成」および「チャネルの作成」を行います。これにより、LINE Botに必要な情報(Access Token)が取得できます。

チャネルアクセストークン(長期)を使用しますので、発行して控えておきます。

このあたりは過去に何度か書いていますので、過去の記事をご参考ください。

※チャネルアクセストークンはとても重要な情報になるので取り扱いには注意しましょう。

Google Apps Script プロジェクトの作成

Google Apps Scriptにアクセスして、新しいプロジェクトを作成します。今回はスプレッドシートを使用しますので、スプレッドシートを新規作成して準備しておきます。

LINE Botのスクリプトの作成

スクリプトエディタで新しいスクリプトファイルを作成し、以下のような基本的なスクリプトを追加します。

function doPost(e){
  let data = JSON.parse(e.postData.contents);
  let events = data.events;
  for(let i = 0; i < events.length; i++){
    let event = events[i];
    if(event.type == 'message'){
      if(event.message.type == 'text'){
        let replyText = event.message.text;
        let contents = {
          replyToken: event.replyToken,
          messages: [{ type: 'text', text:  replyText }],
        };
        reply(contents);
      }
    }
  }
}

function reply(contents){
  let channelAccessToken = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
  let replyUrl = "https://api.line.me/v2/bot/message/reply";
  let options = {
    method: 'post',
    contentType: 'application/json',
    headers: {
      Authorization: 'Bearer ' + channelAccessToken
    },
    payload: JSON.stringify(contents)
  };
  UrlFetchApp.fetch(replyUrl, options);
}

[rml_read_more]

channelAccessTokenは、発行したchannelAccessTokenを設定ください。

デプロイ

GASをWEBアプリとしてデプロイします。

発行したURLはWEBhookで使用しますので控えておきます。

Messaging API設定からWebhook設定

Messaging API設定からWebhook設定を行います。

Webhook(ウェブフック)は、ウェブアプリケーションやサービス間でイベント通知を行う仕組みです。通常、Webhookは特定のイベントが発生したときに自動的にHTTPリクエストを送信するURLです。これにより、特定のイベントに対するリアルタイムな通知やデータの更新が可能になります。

設定完了しました。これでLINE Botが起動する…はずです。

LINE Botが受け取ったテキストメッセージをそのままオウム返しするようになる

LINE Botが受け取ったテキストメッセージをそのままオウム返しするようになります。

ユーザーからのメッセージがそのまま返信されます。

まとめ

これで、LINE Botが受け取ったメッセージをそのまま返信(オウム返し)するように変更されました。

続きは、また。

URLをコピーしました!