我正在学习perl中用于连接星号的Asterisk::AMI模块。运行以下程序时,我无法连接到星号。有人能给我解决这个问题的办法吗?。
use Asterisk::AMI;
my $astman = Asterisk::AMI->new(PeerAddr => '127.0.0.1', #Remote host address
PeerPort => '5038', #Remote host port
#AMI is available on TCP port 5038 if you enable it in manager.conf.
Username => 'admin', #Username to access the AMI
Secret => 'supersecret' #Secret used to connect to AMI
);
die "Unable to connect to asterisk" unless ($astman);
my $action = $astman->({ Action => 'Command',
Command => 'sip show peers'
});
print $action;
提前谢谢。
如果包含以下内容,脚本应显示错误/警告:
use warnings;
在脚本的开头。
我也遇到过同样的问题然后我发现我必须配置/etc/星号/manager.conf文件中的用户
就像这个例子http://www.voip-info.org/wiki/view/Asterisk+config+manager.conf
你将获得成功;
此处缺少命令:
'$action=$astman->({…'
它应该是
'$action=$astman->send_action({…'