python 控制Asterisk AMI接口外呼电话的例子

yipeiwu_com6年前Python基础

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)

以上这篇python 控制Asterisk AMI接口外呼电话的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python学习笔记之错误和异常及访问错误消息详解

本文实例讲述了Python错误和异常及访问错误消息。分享给大家供大家参考,具体如下: 错误和异常 当 Python 无法解析代码时,就会发生语法错误,因为我们没有遵守正确的 Pyt...

python读写ini文件示例(python读写文件)

很类似java的properties文件xml文件复制代码 代码如下:db_config.ini[baseconf]host=127.0.0.1port=3306user=rootpas...

Python基础之getpass模块详细介绍

Python基础之getpass模块详细介绍

本文主要给大家介绍了关于Python中getpass模块的相关内容,分享出来供大家参考学习,话不多说了,来一起看看详细的介绍: getpass模块提供了平台无关的在命令行下输入密码的方法...

json跨域调用python的方法详解

本文实例讲述了json跨域调用python的方法。分享给大家供大家参考,具体如下: 客户端: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML...

Flask框架学习笔记之模板操作实例详解

Flask框架学习笔记之模板操作实例详解

本文实例讲述了Flask框架学习笔记之模板操作。分享给大家供大家参考,具体如下: flask的模板引擎是Jinja2。 引入模板的好处是增加程序的可读性和易维护性,从而不用将一堆html...