当用户给我的号码发短信时,我想用TwiML回复一条消息。我还想知道我的回复消息是发送还是失败。我正在使用Node.js的Twilio库创建我的TwiML响应。
这是我的代码:
const response = new twilio.TwimlResponse();
response.message(Response, {
statusCallback: '/sms/status/'
});
以下是路线的代码。请注意,路由器安装在“/ sms /”路由器上:
router.post('/status/', acceptRequestsOnlyFromTwilio, (req, res) => {
const Event = require('./../models/schemas/event');
const event = new Event({
description:
`MessageSid = ${req.body.MessageSid}
MessageStatus = ${req.body.MessageStatus}`
});
event.save();
console.log(
`MessageSid = ${req.body.MessageSid}
MessageStatus = ${req.body.MessageStatus}`
);
res.sendStatus(200);
});
当我使用Heroku CLI检查我的日志时,我检查MongoDB时没有记录也没有看到记录。
任何人都有任何关于我如何调试此问题的建议或提示,或者我是否正确地实施此操作?
谢谢你的时间!
答案 0 :(得分:0)
Twilio开发者传道者在这里。
首先,您是否设置了正在使用的Twilio电话号码的Messaging request URL?它是否指向Message TwiML响应的正确路由?
此外,您的第一个代码块也应位于服务器的router.post
端点内。您是否正确地将TwiML响应作为服务器响应返回?
作为提示,最好在本地开发此应用程序并使用ngrok等工具测试您的webhook端点。 I love using ngrok to test webhooks