问题描述
我在 nodejs 中使用 Twilio SMS 服务向用户发送 SMS。我正在使用 twilio npm package。
我想在发送短信的同时发送 customParams 并在收到时在 webhook 响应中获取这些参数,以便我可以更新我的数据库。
例如,像这样:
customParams: {
userId: <userid>
}
这是我创建短信的代码:
twilioClient.messages.create({
to: USER_PHONE,body: smsBody,messagingServiceSid: MSG_SERVICE_ID,}).then(resp => {
console.log('SMS sent',resp)
})
请让我知道我们如何发送带有自定义参数的短信。
解决方法
要让网络钩子在消息送达时通知您,您需要设置 statusCallback
网址。您可以通过分配查询字符串参数向该 URL 添加信息。
例如:
const statusCallbackUrl = new URL("https://example.com/statusCallback");
statusCallbackUrl.searchParams.append("userId",userId);
twilioClient.messages.create({
to: USER_PHONE,body: smsBody,messagingServiceSid: MSG_SERVICE_ID,statusCallback: statusCallbackUrl.toString()
}).then(resp => {
console.log('SMS sent',resp)
})
当向您的状态回调 URL 发出 webhook 请求时,查询参数将被发送到,您将能够使用 userId
找到您的用户。