4
私はNet::SMPPモジュールを使用してSMPPメッセージを送信しようとしていますが、それは下のエラーを与えている:あなたは、あなたが成功しているメッセージを送信しようとしている場合はPerlでNet :: SMPPを使用してSMSを送信するにはどうすればよいですか?
Message state is 2
Response indicated error: Message ID is invalid (ESME_RINVMSGID=0x0000000C) at send.pl line 28.
#!/usr/bin/perl
#use strict;
#use warnings;
use Net::SMPP;
my $host = 'iphost';
my $port = 2345;
my $smpp = Net::SMPP->new_transmitter(
$host,
port => $port,
system_id => 'username',
password => 'pass',
) or die;
$resp_pdu = $smpp->submit_sm(
destination_addr => '+44206064379',
short_message => 'test message'
) or die;
die "Response indicated error: " . $resp_pdu->explain_status()
if $resp_pdu->status;
$msg_id = $resp_pdu->{message_id};
$resp_pdu = $smpp->query_sm(message_id => $msg_id) or die;
die "Response indicated error: " . $resp_pdu->explain_status()
if $resp_pdu->status;
print "Message state is $resp_pdu->{message_state}\n";
$resp_pdu = $smpp->replace_sm(
message_id => $msg_id,
short_message => 'another test'
) or die;
die "Response indicated error: " . $resp_pdu->explain_status()
if $resp_pdu->status;
$resp_pdu = $smpp->cancel_sm(message_id => $msg_id) or die;
die "Response indicated error: " . $resp_pdu->explain_status()
if $resp_pdu->status;