我需要您对我用Perl编写的非常简短的脚本提供帮助/建议,以便通过SMPP协议发送SMS。
我有一个短信网关,这是完美的工作(发送短信通过HTML请求或通过网络接口工作),让我们假设这个网关有IP 192.168.1.15。它的SMPP服务正在监听TCP 2775 (我可以成功地拨打到2775,因此我猜SMPP服务正在我的SMS网关上工作)
my $smpp = Net::SMPP->new_transmitter(192.168.1.15,
port=>2775,
system_id =>"administrator",
password =>"passwdexample") or die;
$resp_pdu = $smpp->submit_sm(destination_addr => '+400123456789',
short_message => 'test message') or die;
die "Response indicated error: " . $Resp_PDU->explain_status() if $resp_pdu->status;当我运行脚本时,这里有一个错误:
响应指示错误:给定命令(ESME_RINVBNDS TS=0x00000004)在C:\temp\smpptest.pl行的绑定状态不正确。
不幸的是,我没有在互联网上找到这么多帮助,但根据这个链接:SMPP错误码,它说:
在处理任何其他请求之前,必须先绑定。
但是,我的绑定是用new_transmitter完成的,而且此时没有任何错误,所以我不明白它如何不能绑定TCP会话(我的凭据是正确的,我在telnet会话中尝试过)。
这是我第一次使用这样的插件,所以我可能遗漏了什么,也许有人已经遇到了这个错误!
非常感谢你的帮助:)
发布于 2015-04-29 17:55:09
试着引用IP地址:
Net::SMPP->new_transmitter("192.168.1.15", ...);https://stackoverflow.com/questions/29950345
复制相似问题