(一)、asteriskAIM的简介
Asterisk控制接口(AMI)允许管理客户端程序连接到一个asterisk实例并且可以通过TCP/IP流发送命令或读取事件。这在试图跟踪
asterisk的状态或其中的电话客户端状态时很有用,AMI说明了客户端基于的一般(可能是动态的)规则。
(二)、AMI的应用
为了与Asterisk进行管理通话,管理客户端必须建立到Asterisk服务器侦听端口(一般是5038)的TCP/IP连接,并使用登陆动作进行身份验证。这就要求在Asterisk服务器上创建用户账户,用户账户在/etc/asterisk/manager.conf中配置。账户由允许登陆的主机,登录密码以及被授予的权限列表组成。
新手AMI拨打电话测试:
1)telnet 127.0.0.1 5038
2)
action: login
username: admin
secret: 123456
3)
Action: Originate
Channel: iax2/test/3386135XXXXX
Exten: 1301
Priority: 1
Timeout: 30000
Context: 1301-In
Callerid: 020XXX
(1)、添加AMI账户
[root@elastix admin]# vi /etc/asterisk/manager.conf
[general]
enabled = yes
port = 5038
bindaddr = 0.0.0.0
webenabled = no
[admin]
secret = 123456
deny = 0.0.0.0/0.0.0.0
permit = 61.61.134.121/255.255.255.0
permit = 127.0.0.1/255.255.255.0
read = system,call,log,verbose,command,agent,user
write = system,call,log,verbose,command,agent,user
在/etc/asterisk/manager.conf中配置了一个用户admin 密码为secret
=123456