Sms ActiveMQ&;骆驼及;发送短信

Sms ActiveMQ&;骆驼及;发送短信,sms,queue,activemq,apache-camel,smpp,Sms,Queue,Activemq,Apache Camel,Smpp,我有一个ActiveMQ队列“SMS.Send” 我已成功将(持久)消息推送到该队列 其次,我使用Camel-SMPP&Karaf创建了一个工作的Camel上下文和Camel路由 <route> <description>Example Camel Route</description> <from uri="activemq:SMS.Send"/> <to uri="smpp://smppclient1@localhost

我有一个ActiveMQ队列“SMS.Send” 我已成功将(持久)消息推送到该队列

其次,我使用Camel-SMPP&Karaf创建了一个工作的Camel上下文和Camel路由

<route>
   <description>Example Camel Route</description>
   <from uri="activemq:SMS.Send"/>
   <to uri="smpp://smppclient1@localhost:2775?password=password&amp;enquireLinkTimer=3000&amp;transactionTimer=5000&amp;systemType=producer"/>
</route>

骆驼路线示例
Camel似乎从队列中获取消息,并尝试将它们推送到我的SMPSIM(SMSC模拟工具),但显然没有成功

我完全搞不懂

  • 要成功传递,必须如何设置队列中的消息(TextMessage?MapMessage?…?)
  • 如何告诉Camel使用SubmitSM

  • 我找不到关于这个的任何现有信息…

    所以,我为自己找到了一些细节

    Camel未成功连接到SMPPSim(我在karaf控制台中使用log:tail检测到它)

    一旦成功建立连接,它将立即运行: 只需将TextMessage用于ActiveMQ队列,TextMessage的正文将是SMS的正文/消息文本。为队列设置标头,camel将其作为SMSC服务器的标头转发。 然后是它用于配置的camel特殊头,如文档所示。 例如:

    request.Properties["CamelSmppDestAddr"] = number.ToString();
    
    另外:我发现了如何在不使用karaf的情况下安装camel:smpp,而只使用Apacheq和camel插件:下载camel-smpp-**.jar文件(在我的例子中是camel-smpp-2.12.1.jar),并将其放在[activemq根文件夹]/lib/camel/文件夹中。缺少Jsmpp依赖项;搜索它(从现在开始:jsmpp-2.1.0)并将其直接放在lib文件夹中