Twilio 消息传递 - 关联 SID
Twilio Messaging - Correlating SID
我们使用 twilio 发送消息。
我们不确定如何将响应与我们发送的消息相关联。我们可能会向同一个手机发送多条消息。但是,不确定如何将响应与我们发送的消息相关联,因为 SID 不同。
是否有将响应与消息联系起来的方法。
谢谢
不,短信不是那样工作的。
我用你的手机给我发了 5 条短信phone,然后我回复了一条你不知道我在回复哪条。
这不是 Twilio 的限制,SMS 标准没有规定跟踪对个别消息的回复
事后我想到了一个 hacky 解决方案。这有点复杂,所以我想这取决于您对功能的需求。
这对我在 Android 7.0、YMMV 上使用 Chrome 测试版很有效。
使用以下代码创建一个 php 脚本并将其放在您的网络服务器上:
<?php
// increase last digit as necessary to suit string length of your variable
$smsid = substr($_SERVER["QUERY_STRING"],0,1);
// Query database for SMS id, record timestamp of request, optionally return text to be included at the beginning of the SMS reply
$msg= urlencode($databaseResult);
// Remove <?body=$msg> if you just want the link to create a blank reply. Change the phone number to your incoming Twilio number.
header( "Location: sms:+1555444333?body=$msg" )
现在注册一个 URL 缩短服务,该服务传递 URL 参数并创建一个指向您的 php 脚本的缩短 URL。我用了 tr.im.
根据您的 SMS 数量,您将不得不调整变量的长度,但除非您向人们发送垃圾邮件致死,否则我将假设单个字符足以识别唯一文本。
使用示例 tr.im/SMS 作为您的缩写 url,您可以像 tr.im/SMS?A 一样在末尾附加一个变量并放置 link在您传出的短信中。当用户单击 link 时,您的服务器重定向将在他们的 phone 上打开 SMS 应用程序,并为您的号码创建一条文本。如果您在 php 上方包含“?body=$msg”,新消息的开头将包含您的文本。
就我个人而言,我可能不会费心添加文本,他们可能会在发送之前将其删除,这很可能会让人们感到困惑。如果您将请求变量和时间戳记录到您的数据库中,您应该能够将它们与 phone 数字联系在一起,因为大多数人会在服务器请求后的几分钟内向您发送回复。如果您难以关联消息,您还可以增加自定义 URL 变量的长度。在您 link 回复等后回收变量...
最后更改您的 Twilio 配置,以便您的外发短信显示公司名称而不是您的 Twilio 号码作为发件人。如果发件人不是号码,用户将无法直接回复消息,因此他们将不得不使用您的 link.
为每条消息生成一个顺序标识符并将其附加到您的link。将标识符连同来自 Twilio 的相应消息 Sid 以及您将其发送到的号码保存到您的数据库中,以便稍后匹配它们。
将 "Click tr.im/SMS?$ to reply" 附加到外发短信,其中 $ 是您的变量。
利润。
我们使用 twilio 发送消息。
我们不确定如何将响应与我们发送的消息相关联。我们可能会向同一个手机发送多条消息。但是,不确定如何将响应与我们发送的消息相关联,因为 SID 不同。
是否有将响应与消息联系起来的方法。
谢谢
不,短信不是那样工作的。
我用你的手机给我发了 5 条短信phone,然后我回复了一条你不知道我在回复哪条。
这不是 Twilio 的限制,SMS 标准没有规定跟踪对个别消息的回复
事后我想到了一个 hacky 解决方案。这有点复杂,所以我想这取决于您对功能的需求。
这对我在 Android 7.0、YMMV 上使用 Chrome 测试版很有效。
使用以下代码创建一个 php 脚本并将其放在您的网络服务器上:
<?php
// increase last digit as necessary to suit string length of your variable
$smsid = substr($_SERVER["QUERY_STRING"],0,1);
// Query database for SMS id, record timestamp of request, optionally return text to be included at the beginning of the SMS reply
$msg= urlencode($databaseResult);
// Remove <?body=$msg> if you just want the link to create a blank reply. Change the phone number to your incoming Twilio number.
header( "Location: sms:+1555444333?body=$msg" )
现在注册一个 URL 缩短服务,该服务传递 URL 参数并创建一个指向您的 php 脚本的缩短 URL。我用了 tr.im.
根据您的 SMS 数量,您将不得不调整变量的长度,但除非您向人们发送垃圾邮件致死,否则我将假设单个字符足以识别唯一文本。
使用示例 tr.im/SMS 作为您的缩写 url,您可以像 tr.im/SMS?A 一样在末尾附加一个变量并放置 link在您传出的短信中。当用户单击 link 时,您的服务器重定向将在他们的 phone 上打开 SMS 应用程序,并为您的号码创建一条文本。如果您在 php 上方包含“?body=$msg”,新消息的开头将包含您的文本。
就我个人而言,我可能不会费心添加文本,他们可能会在发送之前将其删除,这很可能会让人们感到困惑。如果您将请求变量和时间戳记录到您的数据库中,您应该能够将它们与 phone 数字联系在一起,因为大多数人会在服务器请求后的几分钟内向您发送回复。如果您难以关联消息,您还可以增加自定义 URL 变量的长度。在您 link 回复等后回收变量...
最后更改您的 Twilio 配置,以便您的外发短信显示公司名称而不是您的 Twilio 号码作为发件人。如果发件人不是号码,用户将无法直接回复消息,因此他们将不得不使用您的 link.
为每条消息生成一个顺序标识符并将其附加到您的link。将标识符连同来自 Twilio 的相应消息 Sid 以及您将其发送到的号码保存到您的数据库中,以便稍后匹配它们。
将 "Click tr.im/SMS?$ to reply" 附加到外发短信,其中 $ 是您的变量。
利润。