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中用url_for构造URL的方法

用url_for构造URL,他接受函数名作为第一个参数,也接受对应URL规则的变量部分的命名参数,未知的变量部分会添加到URL末尾作为查询参数。 构建URL而不选择直接在代码中拼URL的...

Python操作mongodb数据库的方法详解

Python操作mongodb数据库的方法详解

本文实例讲述了Python操作mongodb数据库的方法。分享给大家供大家参考,具体如下: 安装pymongo 下载pymongo: https://pypi.python.org/pa...

python基于json文件实现的gearman任务自动重启代码实例

一:在gearman任务失败后,调用task_failed def task_failed(task, *args): info = '\n'.join(args) dat...

python判断字符串或者集合是否为空的实例

最近在看《Effective Python》,里面提到判断字符串或者集合是否为空的原则,原文如下: Don't check for empty values (like [] or ''...

Python学习笔记之自定义函数用法详解

本文实例讲述了Python学习笔记之自定义函数用法。分享给大家供大家参考,具体如下: 函数能提高应用的模块性,和代码的重复利用率。Python提供了许多内建函数,比如print()等。也...