我有一个ActiveMQ队列“SMS.Send” 我成功地将(持久)消息推送到此队列。
其次,我使用Camel-SMPP& amp; Camel-Context和Camel-Route。 Karaf。
<route>
<description>Example Camel Route</description>
<from uri="activemq:SMS.Send"/>
<to uri="smpp://smppclient1@localhost:2775?password=password&enquireLinkTimer=3000&transactionTimer=5000&systemType=producer"/>
</route>
Camel似乎从队列中获取消息并尝试将它们推送到我的SMPPSim(SMSC模拟工具),但它显然不成功。
我完全失去了
我找不到任何现有信息...
答案 0 :(得分:0)
所以,我为自己找到了一些细节。
Camel没有成功连接到SMPPSim(我在karaf控制台中使用log:tail检测到它)
成功建立连接后,它开箱即用: 只需将TextMessage用于ActiveMQ-Queue,TextMessage的主体就是SMS的正文/消息文本。为Queue和camel设置标头会将其转发为SMSC-Server的标头。 然后有记录中用于配置的camel-special-headers。 例如:
request.Properties["CamelSmppDestAddr"] = number.ToString();
另外:我发现如何在不使用karaf的情况下安装camel:smpp,只使用带有camel插件的ApacheMQ:下载camel-smpp- * * .jar文件(在我的情况下是camel- smpp-2.12.1.jar)并将其放在[activemq-root-folder] / lib / camel /文件夹中。缺少Jsmpp依赖;搜索它(截至目前:jsmpp-2.1.0)并将其直接放在lib文件夹中!