這是我從Youtube上找到的語法
function doPost(e) {
//認證身份,重新輸入line@ channel_access_token
var CHANNEL_ACCESS_TOKEN = '094ZD2LgJKTe7e7ZZBOFeeS0PO8Ke3EWvmobSDDV3vzQz2d2EkYg/XvUT6pBwmOuHJBr1VWTq3TqkFX9DLI9i09nWsMzxIve8DqMZ5V9mhOErTzIx3vBFFk4tPvKf3dOHOEcuDR148jrQVAjTzjrdAdB04t89/1O/w1cDnyilFU=';
var msg= JSON.parse(e.postData.contents);
//除錯用
Logger.log(msg);
console.log(msg);
//從接收到的訊息中取出 replyToken 和發送的訊息文字
var replyToken = msg.events[0].replyToken;
var userMessage = msg.events[0].message.text;
if (typeof replyToken === 'undefined') {
return;
};
//定義回傳訊息
var reply_message=[{
'type': 'text',
'text': '您好'
}];
//回傳訊息給line 並傳送給使用者
var url = 'https://api.line.me/v2/bot/message/reply';
UrlFetchApp.fetch(url, {
'headers': {
'Content-Type': 'application/json; charset=UTF-8',
'Authorization': 'Bearer ' + CHANNEL_ACCESS_TOKEN,
},
'method': 'post',
'payload': JSON.stringify({
'replyToken': replyToken,
'messages': reply_message,
}),
});
}
想要改成不同關鍵字回不同訊息,請問要如果改
感謝
...
if (typeof replyToken === 'undefined') {
return;
};
let returnMessage;
switch(userMessage)
{
case 'test1':
returnMessage = '使用者說了test1';
break;
case 'test2':
returnMessage = '使用者說了' + userMessage;//使用者說了test2
break;
default:
returnMessage = '您好';
break;
}
//定義回傳訊息
var reply_message=[{
'type': 'text',
'text': returnMessage
}];
...
p.s.沒想過GAS可以拿來當Line Bot後台,挺酷的
不過用GAS的話,可以使用的library支援相對受限
也綁住了IDE,整體文件可能比較難整理美觀
建議還是用傳統後端語言寫出檔案,搭配託管平台較佳