SMPP

SMPP 是应用向短信中心提交短信的二进制协议。绑定为 transceiver 时可在同一条长连接上接收回执,也可另开 receiver 绑定接收。

仅解释——此处解释的术语不是我们销售的服务。

短消息点对点协议(SMPP)是一种二进制协议,用于向短信中心提交短信,并在会话绑定为 transceiver 时于同一条 TCP 会话上接收回执,或通过单独的 receiver 绑定接收。bind 打开会话,窗口则限制未完成的消息数。

bind 声明会话用于发送、接收还是双向,keep-alive 交换则维持会话。连接方法见什么是 SMPP。

提交,然后等待回执

客户端用 submit_sm 提交,收到带消息 ID 的 submit_sm_resp,回执随后以 deliver_sm 到达。窗口限制未完成的提交数,因此吞吐量取决于窗口大小和往返时间。

绑定、提交、回执

  1. 应用(ESME)
  2. bind_transceiver 建立会话
  3. SMSC
  4. submit_sm_resp 已受理
  5. 送达回执
会话只打开一次,回执稍后到达。
文字说明

应用以 transceiver 身份绑定到短信中心。中心用 submit_sm_resp 确认提交,送达回执随后在同一条会话上到达。

常见问题

SMPP 是 Web API 吗?

不是。它是运行在持久 TCP 连接上的二进制协议,不是 HTTP 请求-响应式 API。

客户端该用哪种 bind?

要在一条会话上收发,用 transceiver。架构或服务商有要求时,分别使用独立的 bind。

什么限制了吞吐量?

服务商的 TPS 配额、窗口大小和往返时间。

了解更多

来源

  1. 3GPP TS 23.040: technical realization of the Short Message Service(短消息服务的技术实现)
  2. 3GPP TS 23.038: alphabets and language-specific information for SMS(短消息的字母表与语言特定信息)
  3. SMPP v3.4 规范:bind 模式与 deliver_sm