星号 AGI 文件 returns ImportError

Asterisk AGI file returns ImportError

我继承了一个 CentOS Asterisk 服务器集群,其中一个运行一个检查,我被分配到其他服务器上进行复制。

此检查的一部分涉及在第一台服务器上运行没有问题的 AGI - 但在其他服务器上,吐出 ImportError: No module named asterisk.agi

AGI 中似乎导致问题的行是 from asterisk.agi import *

我能看到工作服务器和非工作服务器之间的唯一区别是 Python 版本。在工作服务器中键入 python returns

Python 2.4.3 (#1, Jan  9 2013, 06:49:54)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-54)] on linux2

..然而,在非工作服务器中 returns

Python 2.6.6 (r266:84292, Jan 22 2014, 09:42:36)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2

我已经用谷歌搜索了,找不到哪里出错了。我对打破其他依赖关系持谨慎态度,因为这些服务器上有许多 AGI 脚本 运行。

有没有人有任何指点或建议?

您缺少 python 个模块。使用分发包管理器(如果可用)或使用 pip install <module name> 安装它们。您必须检查脚本使用了哪个模块。检查包含 python 个模块的 lib 目录。

https://docs.python.org/2.7/installing/

您需要将 Python 版本从 Python 2.6.6 降级到 Python 2.4.3。

我解决了这个问题。

我需要安装 Pyst,其中包含相关库(asterisk.agi 等)。

简单!感谢大家的帮助。