GASを使ってLineBotを作ろうとしているのですが、メッセージを送った数秒後に違うメッセージを送る、ということのやり方がわかりません、、いろいろ試したのですがGASは初めて使うのでもうほかにどうすればいいかわかりません。とりあえず今のところ、
GAS
1(略) 2function doPost(e) { 3 var json = JSON.parse(e.postData.contents); 4 5 var reply_token= json.events[0].replyToken; 6 if (typeof reply_token === 'undefined') { 7 return; 8 } 9 var user_message = json.events[0].message.text; 10 11 var reply_messages; 12 if ('はろー' == user_message) { 13 reply_messages = [ 14 'おはよう', 15 Utilities.sleep(500), 16 'ございます', 17 ]; 18 } 19 20 var messages = reply_messages.map(function (v) { 21 return {'type': 'text', 'text': v}; 22 }); 23 UrlFetchApp.fetch(line_endpoint, { 24 'headers': { 25 'Content-Type': 'application/json; charset=UTF-8', 26 'Authorization': 'Bearer ' + CHANNEL_ACCESS_TOKEN, 27 }, 28 'method': 'post', 29 'payload': JSON.stringify({ 30 'replyToken': reply_token, 31 'messages': messages, 32 }), 33 }); 34 return ContentService.createTextOutput(JSON.stringify({'content': 'post ok'})).setMimeType(ContentService.MimeType.JSON); 35}
といったかんじでreply_messagesのリストの間にSleep入れてみたけど予想通り動きませんでした。
GAS
1 if ('はろー' == user_message) { 2 reply_messages = [ 3 'おはよう', 4 'ございます', 5 ]; 6 }
とすると、連続して送ることはできますが秒数はやはりあきませんでした。
GAS
1 if ('はろー' == user_message) { 2 reply_messages = ['おはよう',]; 3 Utilities.sleep(500); 4 reply_messages = ['ございます',]; 5 }
でもダメでした。どなたかご教授いただけると嬉しいです。
回答1件
あなたの回答
tips
プレビュー