有人可以告诉我如何触发Facebook Messenger Bot的表单字段吗?
应该是什么样子:
Bot:请输入您的电子邮件
用户:email@adress.com
Bot:保存在数据库中的电子邮件
我想将此触发为事件,而不是永久收听电子邮件
答案 0 :(得分:0)
我不确定你想要什么,但如果我理解了一点,你可以使用这样的东西:
var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
app.post('/webhook', function (req, res) {
var events = req.body.entry[0].messaging;
for (i = 0; i < events.length; i++) {
var event = events[i];
if (event.message && event.message.text) {
if(re.test(event.message.text)){
//call your handler function here
}
}
}
res.sendStatus(200);
});
请注意,我在这里使用正则表达式,如果您不需要精确验证,则可以使用更简单的函数。