1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Google Apps ScriptでLINE Botにメッセージ返信する関数

Posted at

この関数sendLineReplyは、Google Apps Script (GAS) を使用して LINEのMessaging API を介し、指定された replyToken に対してテキストメッセージを返信するためのものです

コードの説明

1. チャネルアクセストークンの設定

javascript
var channelAccessToken = "YOUR_CHANNEL_ACCESS_TOKEN";
  • channelAccessToken は、LINE公式アカウントの Messaging API を利用するための認証トークンです。
  • "YOUR_CHANNEL_ACCESS_TOKEN" の部分は、実際のLINEのアクセストークンに置き換える必要があります。

2. LINE API のエンドポイントを指定

javascript
var url = "https://api.line.me/v2/bot/message/reply";
  • url は、LINEの 返信メッセージAPI のエンドポイントです。
  • ここに POST リクエストを送ることで、LINE Bot がメッセージを返信します。

3. 送信するデータ(ペイロード)を作成

javascript
var payload = {
  "replyToken": replyToken,
  "messages": [{ "type": "text", "text": message }]
};

  • replyToken: LINEのWebhookから受け取る、一度だけ使用可能な返信トークン。
  • messages: 返信メッセージのリスト。
    • 今回は type: "text" を指定し、単純なテキストメッセージを送る仕様。

4. HTTPリクエストのオプション設定

javascript
var options = {
  "method": "post",
  "headers": {
    "Content-Type": "application/json",
    "Authorization": "Bearer " + channelAccessToken
  },
  "payload": JSON.stringify(payload)
};
  • method: "post" → POSTリクエストを送る。
  • headers:
    • Content-Type: "application/json" → JSONデータを送ることを指定。
    • Authorization: "Bearer " + channelAccessToken → LINE APIの認証情報をヘッダーに含める。
  • payload: 送信するデータ (payload オブジェクト) をJSON形式に変換。

5. LINE APIへリクエストを送信

javascript
try {
  var response = UrlFetchApp.fetch(url, options);
  Logger.log("LINE返信レスポンス: " + response.getContentText());
} catch (error) {
  Logger.log("LINE API送信エラー: " + error.toString());
}
  • UrlFetchApp.fetch(url, options) を使い、LINEのAPIにデータを送信。
  • レスポンスの内容を Logger.log でログに出力。
  • try-catch を使い、エラーが発生した場合にログへエラーメッセージを記録。

まとめ

この関数は、Google Apps Script を使って LINE Botがユーザーにテキストメッセージを返信 するためのものです。
実際に動作させるには、

  • YOUR_CHANNEL_ACCESS_TOKEN を有効な チャネルアクセストークン に変更
  • replyToken にLINEのWebhookイベントから受け取った replyToken を渡す
  • message に返信したいメッセージを入れる
    これで、LINE Bot が 受信メッセージに対する返信 を送ることができます!

これで、LINE Bot が 受信メッセージに対する返信 を送ることができます!にこに

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?