BotのPOSTが読み込めません
Botに位置情報やテキストを送ると,Googleスプレッドシートに転記し,Botが転記した旨のメッセージを送るスクリプトを組みたいと思っています。
DeveloperConsoleのBotからBotを作成し,CallbackURLにはスプレッドシートのGASをデプロイしたあとに表示されたウェブアプリのURLを入力しています。
Botに送信可能なSCOPEはテキストと位置情報です。
GASスクリプトは自分が実行でき,アクセスできるのは全員としています。
ただどうやってもdoPost(e)に値が入りません(Botにメッセージを送ると起動するものの0.8秒後くらいに「失敗しました」とログに表示されます)
Logger.logも残っていないので,最初から値が入っていないと考えました。
それでCallback URLを何度もコピペして,それでも失敗が続きます。
// スクリプトプロパティから BOT ID と BOT SECRET を取得
var scriptProperties = PropertiesService.getScriptProperties();
var BOT_ID = scriptProperties.getProperty('BOT_ID');
var BOT_SECRET = scriptProperties.getProperty('BOT_SECRET');
// スプレッドシートのIDとシート名
var SPREADSHEET_ID = "***********************"; // あなたのスプレッドシートID
var SHEET_NAME = "bot";
function doPost(e) {
Logger.log(JSON.stringify(e)); // まずは e オブジェクト全体をログ出力
if (e === null || e.postData === null || e.postData.contents === null) {
Logger.log("e または e.postData が null です");
return ContentService.createTextOutput(JSON.stringify({ "result": "error", "message": "Invalid request data" })).setMimeType(ContentService.MimeType.JSON);
}
var postData = JSON.parse(e.postData.contents);
Logger.log(JSON.stringify(postData)); // 受信した JSON データ
以下続く
CallbackURLアドレス以外にチェックしたほうが良い箇所があればご教示いただければと思っています。
投稿に新しいコメントが追加されましたら通知を送信します。
コメント0
まだ、解決できませんか?
今すぐ実際に使用しているLINE WORKSユーザーに質問してみましょう。