在 Twilio SMS 节点 js 中发送 customParams

问题描述

我在 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 找到您的用户。