首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将星号AGI与python3结合使用?

如何将星号AGI与python3结合使用?
EN

Stack Overflow用户
提问于 2020-01-28 19:09:20
回答 1查看 4K关注 0票数 1

使用星号16.2.1我的AGI脚本(在底部)可以使用python2 #!/usr/bin/env python2,而不是python3 #!/usr/bin/env python3

我甚至没有达到agi.verbose("python agi started") (使用python3)的程度,所以我假设它与AGI导入或初始化agi = AGI()有关。

使用agi set debug on并没有真正的帮助,我看到的唯一信息是

代码语言:javascript
复制
Launched AGI Script /home/.../asteriskAgi.py
    -- <SIP/..-00000002>AGI Script /home/.../asteriskAgi.py completed, returning 0

因为它适用于python2,但不是3,我也从https://pypi.org/project/pyst3/安装了pyst3,但是它没有帮助(不管是否安装了pyst3,它都不能工作)。

Q:知道如何为python3配置asterisk或如何找到根本原因吗?是否有机会获得更详细的脚本实际fails_的日志信息

代码语言:javascript
复制
#!/usr/bin/env python3

import sys
import rpyc

from asterisk.agi import AGI

agi = AGI()
agi.verbose("python agi started")
aCallerId = agi.env['agi_callerid']
aType = agi.env["agi_type"]
agi.verbose("XXXXXXXXXXXXXX call from %s" % aCallerId)
agi.verbose(sys.executable)

l = [aCallerId, aType]
agi.verbose("XXXXXXXXXXXXXX l")

c = rpyc.connect("localhost", 18861)
c.root.asteriskCall(l)

即使这个极简版本也不适用于"3“。

代码语言:javascript
复制
#!/usr/bin/env python3

import rpyc

from asterisk.agi import AGI

agi = AGI()
agi.verbose("python agi started")

最终解决办法是:

  1. 卸载了pyst3
  2. 强制重新安装了pyst2,比如pip3 install --upgrade --force-reinstall pyst2。根本不知道哪里出了问题。--
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-01-30 01:07:55

您的简约版本适用于我(通过pip安装pyst2 )

检查权限和已安装的包。还要确保您的星号在能够找到python3和已安装包的环境中运行。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59955490

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档