sms - 双向短信 - 发送/接收

标签 sms sms-gateway google-voice icq

  1. 我想使用短信网关发送接收短信。

  2. 发送消息时我会问一些问题,收件人会回复。

  3. 我需要在发送短信时添加一些唯一的 ID,并在接收时取回它。

我知道有一种方法可以做到这一点,例如 ICQ 和 Google vois 2 路短信。接收方将消息返回到同一号码,但只有发送方才能取回。

有人可以帮忙吗?

谢谢, 利奥尔

最佳答案

几乎所有 SMS 网关都允许您发送和接收消息。发送消息的最常见方法是通过某种 HTTP API(SOAP、REST、RPC)。例如,要使用 Twilio 发送消息(我工作的地方)您可以使用三个参数向我们的 API 发出 POST 请求:To (收件人),From (您的 Twilio 号码)和 Body (消息中包含的内容)。许多其他网关也使用类似的方法。

由于全局短信系统的局限性,无法唯一标识消息。这意味着,除非消息的收件人手动包含标识符,否则除了匹配发件人和收件人的电话号码之外,无法将回复与原始消息关联起来。这可能会使处理单个收件人有多个未完成查询的情况变得棘手。您可以使用几种策略来绕过此限制。

  1. 请求唯一的响应 token - 对于发送给收件人的每个查询,要求响应对于该查询是唯一的。例如,在第一条消息中使用类似“要确认,用 A1 响应”的内容,并且在后续未完成的查询中使用不同的唯一响应。

  2. 使用不同的“发件人”电话号码 - 对于发送给收件人的每个查询,请从不同的号码发送。然后您可以将响应与响应的电话号码进行匹配。在许多情况下,这不是一个最佳系统,因为您需要更多电话号码,并且用户可能会收到来自许多不同号码的消息,从而导致困惑。

  3. 使未完成的查询过期 - 如果对每个查询的响应并不重要,则可以假设他们正在响应最近的查询,或者在响应后提示他们进行澄清。

关于接收消息,大多数网关都会通过 HTTP 通知您。例如,当一条消息进入您的 Twilio 号码时,我们会向您使用 To 指定的 URL 发出 POST 请求。 , FromBody包括参数。您可以像申请中的任何其他表单提交一样处理此问题。其他网关使用类似的方法,但我无法证明细节。

关于sms - 双向短信 - 发送/接收,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5297176/

相关文章:

Android - 在到达收件箱之前修改短信正文

email - 通过电子邮件发送短信

sms - GSM 调制解调器速度很慢。每分钟发送 10 到 12 条短信

java - 通过 SMPP 发送多条短信

php - SMS 和 PHP...还有 Google Voice?

android - 阅读特定号码的收件箱消息并在 Activity 中显示它们

email - BlackBerry - 在发送电子邮件/短信之前执行一些操作

macos - mac 上的 kannel 1.5 addons sqlbox 连接到 Postgresql 9.3.5,出现 "Segmentation fault: 11"错误

c# - 在 C# 中使用谷歌 "Speak Now"

Android 和 Google Voice - 收听传入的 SMS 消息