如何通过smpp连接接收短信 - Kannel

时间:2011-12-18 21:53:28

标签: smpp kannel

我通过来自Kannel的smpp连接(使用selenium SmppSim)发送消息并且它有效。 但不知何故,当我尝试接收消息时,换句话说,当我尝试从SmppSim发送消息时,它不起作用。 SmppSim队列的MO消息进入MO队列。

我试过这些东西。

  1. 使用相同的端口进行发送和接收(Kannel / SmppSim)。
  2. 使用不同的端口进行发送和接收(Kannel / SmppSim)。
  3. 用于发送和接收的相同smsc-smpp的两个组。 (这可能是错的)
  4. 现在我使用端口2775进行发送,使用端口2776进行接收。

    #kannel.conf
    group=smsc
    smsc=smpp
    ....
    port = 2775
    receive-port = 2776
    transceiver-mode = true
    ....
    

    在SmppSim

    #smppsim.props
    SMPP_PORT=2775
    ....
    SYSTEM_IDS=smppclient
    PASSWORDS=password
    OUTBIND_ENABLED=true
    OUTBIND_ESME_IP_ADDRESS=127.0.0.1
    OUTBIND_ESME_PORT=2776
    OUTBIND_ESME_SYSTEMID=smppclient
    OUTBIND_ESME_PASSWORD=password
    ....
    

    当我运行bearerbox时,它显示如下。 (短信发送正在工作)

    ....
    connect failed
    System error 111: Connection refused
    ERROR: error connecting to server `localhost' at port `2776'
    SMPP[SMPPSim]: Couldn't connect to server.
    SMPP[SMPPSim]: Couldn't connect to SMS center (retrying in 10 seconds).
    ....
    

    如何配置?

    谢谢!

1 个答案:

答案 0 :(得分:2)

请阅读SMPP v3.4规范,第2.2.1部分。

  

outbind操作的目的是允许SMSC发信号通知ESME发起a   bind_receiver请求到SMSC。

因此它用于SMSC(SMPPSim)连接到ESME(Kannel)并请求回调连接。

但是,您可以在不同的端口上运行少量SMPPSim实例。在这种情况下,每个实例都应该使用自己的配置文件。