简短回答
发送短信时,应用、验证码和多渠道产品适合用 HTTP(REST)API,兼容任何 HTTP 库并通过 Webhook 回报状态。已有 SMPP 客户端或持续大批量发送时用 SMPP v3.4,许多发送方两者并用。
SMPP 与 HTTP API 有何不同
SMPP(Short Message Peer-to-Peer)是一种二进制电信协议,运行在称为绑定(bind)的长连接 TCP 会话上。HTTP API 则每次调用发送一个 HTTPS 请求并返回响应,通常是 JSON 或消息 ID。
| 对比项 | HTTP API | SMPP v3.4 |
|---|---|---|
| 连接方式 | 每次调用一个 HTTPS 请求 | 一个持久会话(绑定),最好基于 TLS |
| 渠道 | 通常是短信加 WhatsApp、RCS 等 | 仅短信 |
| 送达回执 | 通过 Webhook 推送到您的 HTTPS 接口 | 在同一会话中以 deliver_sm 返回 |
| 接入成本 | 任何 HTTP 库即可 | 需要 SMPP 客户端库和连接管理 |
| 典型用户 | 应用、验证码、CRM 和电商集成 | 聚合商、代理商,以及已有 SMPP 软件的企业 |
什么时候 SMPP 是更好的选择?
SMPP 是异步的:客户端可以在响应返回之前发出大量 submit_sm 请求,这称为窗口机制(windowing)。因此它非常适合持续的大批量流量,也适合短信软件、网关或计费系统本来就使用 SMPP 的公司。
代价在于运维。您需要自行管理重连、保活的 enquire_link 消息、回执确认和 IP 白名单,而且基础协议本身不带加密,所以生产环境的绑定应运行在 TLS 或 VPN 之上。
如何决定
- 列出您需要的渠道。如果除短信外还需要 WhatsApp、RCS 等渠道,请从 HTTP API 开始。
- 检查现有系统。如果您的平台已有可用的 SMPP 客户端,选择 SMPP 可以免去重写。
- 估算持续发送量和峰值,并询问服务商能为您的账户提供哪种接口和吞吐量。
- 确定送达回执应落在哪里:HTTPS Webhook,还是您的 SMPP 会话。
- 考虑两者并用:应用和多渠道流量走 HTTP,群发短信走 SMPP。
在同一账户上同时使用两者
在 OmniChannels.ai 上,https://api.broadnet.me 的 REST API(Bearer 令牌)与基于 TLS 的 SMPP 3.4 共用同一批短信线路,SMPP 绑定由团队按账户开通,而非自助开通。
