星号管理器接口和星号网关接口的协议实现

obelus的Python项目详细描述


obelus是麻省理工学院授权的python库,提供通信支持。 使用Asterisk电话服务器。它 支持Asterisk Manager Interface (AMI) 以及Asterisk Gateway Interface (AGI)

功能

  • Python2和Python3支持。
  • ami、fastagi和async agi支持。
  • 面向无阻塞(“异步”)网络的事件驱动api 编程风格。
  • PEP 3156风格的协议实现。
  • 框架不可知论。
  • 用于TornadoTwistedTulip网络编程的适配器 框架。
  • 单元测试。

限制

  • api目前是低级的:它抽象出协议语法和 通信序列,但不尝试公开星号概念 以一种特殊的方式。

要求

  • Python2.7、3.2或更高版本。

可选要求

示例

AMI客户

有几个AMI客户机示例可用于不同的框架:

$ python -m obelus.ami.tornadoadapter -h
$ python -m obelus.ami.tulipadapter -h
$ python -m obelus.ami.twistedadapter -h

Fastagi服务器

不同的框架提供了几个FastAgi服务器示例:

$ python -m obelus.agi.tornadofastagi -h
$ python -m obelus.agi.tulipfastagi -h

研究这些模块的源代码以获取有关 如何在自己的应用程序中重用obelus协议类。

开发

运行测试套件

要使用单个python版本运行测试套件,请运行:

$ pythonX.Y -m obelus.test

在3.3之前的python版本中,需要安装 mock库。

要在所有受支持的解释器上运行测试套件,请安装 tox然后运行:

$ tox

常见问题解答

为什么是“obelus”?

一个obelus是一个印刷体 字符,有点像星号。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在点击JButton触发的进程仍在处理时更新JLabel?   try-catch为什么Java有嵌套的try语句?   java SSH命令执行失败,出现异常“net.schmizz.sshj.connection.ConnectionException:引发连接重置异常”   java在ApacheCamel的接口类解析器中,resolveMandatoryClass(字符串名称)有什么用途?   java如何在Eclipse远程调试器中找到有问题的线程?   java线程:containerlaunch退出代码127的异常   lambda左连接Java中的2个对象列表   Swift 2.0协议扩展和Java/C抽象类之间有区别吗?   安卓改造:使用GSON将JSON解析为多个Java对象   Spring中服务层的java角色(澄清)   html Java与网站的通信   Spring boot rest api是在不创建java类的情况下将getResultList()转换为映射以显示响应的最佳方法吗?   使用“getElementById”从javascript获取值到java   java如何在文本视图中以粗体和多色显示文本   java是设置TextView颜色的最有效方法