第 309 章 SMPP 组件
可作为 Camel 版本 2.2 提供
此组件通过 SMPP 协议访问 SMSC (Short Message Service Center),以发送和接收 SMS。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>
309.1. SMS 限制
SMS 不是可靠或安全。 需要可靠且安全的交付的用户可能想考虑使用 XMPP 或 SIP 组件,以及支持所选协议的智能手机应用程序。
- 可靠性:虽然 SMPP 标准提供了一系列反馈机制来指示错误,但未传送和确认发送,对移动网络来说并不常见,以隐藏或模拟这些响应。 例如,有些网络会自动为每个消息发送发送确认,即使目标编号无效或未切换。 如果某些网络认为有垃圾邮件的丢弃消息,则某些网络静默丢弃消息。 网络中的垃圾邮件检测规则可能会非常入侵,有时每天来自单一发送方的 100 条消息可能被视为垃圾邮件。
- 安全性:对来自 radio tower 的最后跃点进行基本加密,向下到接收方。 在网络的任何其他部分中不会加密或验证 SMS 消息。 些运营商允许零售专卖店或致电 Centres,浏览客户的 SMS 消息。 邮件发送者身份很容易被忽略。 在双因素验证方案和其他目的中,规范人员甚至是移动电话行业本身也很谨慎。
虽然 Camel 组件使将消息发送到 SMS 网络变得更加容易,但无法对这些问题提供简单的解决方案。