Q&A

GASのmessage replyをif文で分けてメッセージを増やしたい

前提・実現したいこと

GAS で messageをreply するときに、通常1つだけをBOTから送っているのですが、 if 文である条件を満たしたら、 2つのメッセージを送りたいのですが、 具体的にやり方がわかりません ある定数が2になったら、postDataのメッセージを2つ送りたいのですが、 どのようなやり方がありますか?

例) count=1 なら、messageは1文 「こんにちわ」 count=3なら、messageは2文 「こんにちわ」+「今日は水曜日です」

var CHANNEL_ACCESS_TOKEN = "TOKEN"; 
var USER_ID = "ID";

function push_message() {
  var postData = {
    "to": USER_ID,
    "messages": [{
      "type": "text",
      "text": "hello",
    }]
  };

  var url = "https://api.line.me/v2/bot/message/push";
  var headers = {
    "Content-Type": "application/json",
    'Authorization': 'Bearer ' + CHANNEL_ACCESS_TOKEN,
  };

  var options = {
    "method": "post",
    "headers": headers,
    "payload": JSON.stringify(postData)
  };
  var response = UrlFetchApp.fetch(url, options);
}

  • 0
  • 2
  • 1551
  • twitter facebook

ありがとうございます。 var postData = {}の配列を条件で増やしたりしたいです。 たとえは、count=0 なら 2バブル。 count=1なら、1つ追加して3バブル。

var postData = は、配列の pushみたいな使い方はできますか?

  • 0

Do you mean sending two chat bubbles? If so, you could change the postData value into:

var postData = {
    "to": USER_ID,
    "messages": [{
      "type": "text",
      "text": "Text in bubble 1.",
    }, {
      "type": "text",
      "text": "Text in bubble 2.",
    }]
  }; 

Additional info: messages property only accept up to 5 chat bubbles. Thank you.

2 つのチャットバブルを送信することを意味しますか? その場合、 postData の値を次のように変更できます。

var postData = {
    "to": USER_ID,
    "messages": [{
      "type": "text",
      "text": "バブル 1 のテキスト。",
    }, {
      "type": "text",
      "text": "バブル 2 のテキスト。",
    }]
  };

追加情報: messages プロパティは、最大5つのチャットバブルのみを受け入れます。 ありがとうございました。

  • 0
Are you sure? question.vm