LINEbot初心者です。
心理テストのような診断botを作るため、
初めにmessageとfollowイベントを受け取ったら挨拶文を送るという部分でアドバイスを頂きたいです。
LINEbotにメッセージを送っても、応答せず困っています。
原因となりそうなもの、また原因箇所の切り分けの仕方を教えて頂けるととても嬉しいです。
JavaScript
1 2 //固定値 3 const CHANNEL_ACCESS_TOKEN ='H****Du0zICfpe+o0dQ1imBlCBhEbE4Knj3eZnHQKkaO5fjIJEIkIiXeIxrXGv2c2o/rONZtsMf7QtsYw2YQ20H+G+pvX/nqdjma3dIhDuIeUWoAW8trfNjtTCiZv1tZCEpQMCq8oMgdB04t89/1O/w1cDnyilFU=';//チャンネルアクセストークン 4 const spreadsSheet = SpreadsheetApp.openById("1***5bS-MdoajiGF3YXrnTmheFoss6zqCXdgh2uLp4"); 5 const url = "https://api.line.me/v2/bot/message/reply"; 6 const push_url = "https://api.line.me/v2/bot/message/push"; 7 8 //dopostの関数定義 9 function doPost(e) { 10 var json = e.postData.contents 11 //返信するためのJSONの取得 12 var events = JSON.parse(json).events; 13 events.forEach(function(event) { 14 if(event.type == "follow") {//① 15 shokaibun_1(event);//①→2 16 }//相手が友達追加したら場合のみ起きる。 17 else if(event.type == "message"){ 18 var reply_message = event.message.text; 19 shokaibun_1(event); 20 } 21 if(typeof replyToken === 'undefined' ) { 22 return; 23 } 24 } 25 ); 26 } 27 function shokaibun_1(e) {//② 28 let Msg1 = {//メッセージ1:初めの挨拶 29 "replyToken" : e.replyToken, 30 "messages" : [ 31 {"type": "text", 32 "text" : "初めまして" 33 } 34 ] 35 }; 36 let pro_1 = { 37 "method" : "POST", 38 "Content-Type" : "application/json", 39 "headers" : { 40 "Authorization" : "Bearer " + CHANNEL_ACCESS_TOKEN 41 }, 42 "payload" : JSON.stringify(Msg1) 43 }; 44 var response = UrlFetchApp.fetch(url, pro_1); 45 return response.getResponseCode(); 46 47 }; 48
実現したいこと
・友達追加したユーザーとメッセージを送信したユーザーに、挨拶文「初めまして」を送りたい。
発生している問題・エラーメッセージ
エラーメッセージ ```TypeError: Cannot read properties of undefined (reading 'postData') doPost @ コード.gs:10 →LINE側にメッセージを送ったら、このエラーは消えたのですが、LINE botの応答がありませんでした。 ### 該当のソースコード var json = e.postData.contents
試したこと
・アクセストークンの確認
・WebhookのURLの確認
・Webhookの利用切り替えの繰り返し
・https://yacoleblog.com/172/とhttps://teratail.com/questions/309343を参考に、HTTPステータスコードの追記
補足情報(FW/ツールのバージョンなど)
コードを書き換える度、デプロイとWebhookのURLを新しく更新しています。
アクセスするユーザーは全員としました。
お手隙の方、解決方法等、ご教示頂きたいです。よろしくお願いいたします。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/12/23 14:52
退会済みユーザー
2022/12/23 15:26
2022/12/24 08:01