我正在编写一个 Facebook Messenger 机器人,并试图在回发后存储文本回复。我的意思是我有一条消息可以发回一个帖子,根据他们选择的选项,他们可以输入一条消息,然后我存储该文本。问题是我只想在他们为回发消息选择一个选项后存储此文本。文本也可以是任何东西,所以我不能为它写一个 if 语句。
这是我的代码:
app.post('/', function (req, res) {
messaging_events = req.body.entry[0].messaging;
for (i = 0; i < messaging_events.length; i++) {
event = req.body.entry[0].messaging[i];
sender = event.sender.id;
if (event.message && event.message.text) {
text = event.message.text;
if (text == "Start") {
sendTextMessage(sender, "Hey User! I'm a bot");
}
}
else if (event.postback) {
// These are for chosing availibility
if (JSON.stringify(event.postback) == '{"payload":"postback"}') {
setTextMessage(sender, "Postback recieved");
}
}
}
一切都已设置并正在运行。但是当收到回发时,我想在完成之前等待用户的回复,这样我就可以保存文本。就像我之前说的那样,它可以是任何意思,我不能像“开始”那样只写一个 if 语句。我也只想在他们单击回发按钮后保存文本。
我正在考虑添加一个while循环并在完成回发功能之前等待接收文本,但无法弄清楚。
那么,在我发送带有回发的消息后,我将如何等待文本呢?
任何帮助表示赞赏,谢谢!