python 控制Asterisk AMI接口外呼电话

Asterisk 是一个开放源代码的软件VoIP PBX系统,我们用Asterisk 搭建企业内部电话系统。

Asterisk AMI的Asterisk管理接口。可以实现对Asterisk系统的监控和控制。

安装 asterisk-ami

pip install asterisk-ami

pip install git+https://github.com/ettoreleandrotognoli/python-ami

 

源码

#!/usr/bin/env python
#-*- coding: utf-8 -*-
from asterisk.ami import AMIClient
from asterisk.ami import SimpleAction


def CallSip(exten,ponebind,callid):
    client = AMIClient(address='10.200.22.79', port=5038)
    client.login(username='lucal',secret='test')
    sip='SIP/%s'%ponebind
    print (sip)
    action = SimpleAction(
        'Originate',
        Channel=sip,
        Exten=callid,#目标电话
        Priority=1,
        Context='MAIN_OUTGOING',#呼叫规则
        CallerID=exten,#来自电话
    )
    client.send_action(action)
    future = client.send_action(action)
    response = future.response


if __name__ == '__main__':
    exten='2100'
    ponebind='2100'
    callid='2101'
    CallSip(exten, ponebind, callid)

 

你可能感兴趣的:(运维)