第 310 章 SMPP 组件
从 Camel 版本 2.2 开始提供
此组件提供通过 SMPP 协议发送和接收 SMS 的 SMSC (简短消息服务中心)。JSMPP 库用于协议实现。
Camel 组件目前作为 ESME (外部短消息实体)运行,而不是作为 SMSC 本身运行。
从*Camel 2.9* 开始,您还可以执行 replaceSm, QuerySm, SubmitMulti, CancelSm 和 DataSm。
Maven 用户需要将以下依赖项添加到此组件的 pom.xml
中:
<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-smpp</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel core version --> </dependency>
310.1. SMS 限制
SMS 并非可靠或安全。需要可靠和安全交付的用户可能需要考虑使用 XMPP 或 SIP 组件,以及支持所选协议的智能手机应用。
- 可靠性: 虽然 SMPP 标准提供了一系列反馈机制来指示错误,但无法发送和确认移动网络以隐藏或模拟这些响应并不常见。例如,即使目标号无效或未打开,一些网络会自动为每个消息发送发送确认。某些网络静默丢弃消息(如果它们认为是垃圾邮件)。网络中的垃圾邮件检测规则可能非常谨慎,有时从单一发送者中每天超过 100 个消息可能被视为垃圾邮件。
- 安全:从 radio tower 向下到接收者集的最后跃点有基本的加密。SMS 消息在网络的任何其他部分中未加密或进行身份验证。某些操作员允许员工进行零售专员或打电话来浏览其客户的 SMS 消息。消息发送者身份可轻松进行伪造。对于在双因素验证方案中,以及移动电话行业本身对使用 SMS 以及安全性非常重要的其他目的而小心。
虽然 Camel 组件使向 SMS 网络发送消息变得简单,但无法为这些问题提供简单的解决方案。