freeswitch安装mod_python让你的freeswitch服务器支持python脚本
一、安装和配置
1、构建mod_python
在Debian/Ubuntu
上安装python-dev
软件包:
apt-get install python python-dev
2、在modules.conf中启用编译:
在FreeSWITCH
源文件夹中,编辑modules.conf
并取消注释languages/mod_python
;重新编译并安装FreeSWITCH:
make mod_python-install
configure
脚本将尝试检测您现有的python
版本。如果找不到它或者它不支持多线程,它将打印一条警告消息。
您可以指定要配置的参数以使其使用特定版本:
./configure --with-python=... (eg, --with-python=/usr/bin/python2.7)
make current
会自动修复makefile
,以防它生成(正确,或根本没有)。使python-reconf
重新生成它。
二、启用mod_python
打开conf/autoload_configs/modules.conf.xml
并添加一个条目让mod_python
自动启动:
<load module="mod_python"/>
三、查找Python模块
告诉python
解释器如何找到python
模块有两种不同的方法。如果你不做其中任何一个,嵌入式Python
解释器将无法找到你的python
脚本。
假设你有:
<action application="python" data="foo.bar"/>
这告诉python加载生活在foo 包中的bar 模块。
复制或符号链接到site-packages
目录,即源文件位于/usr/local/freeswitch/scripts/bar.py
中:
find / -name "site-packages"
cd /path/to/python/site-packages
# ubuntu默认是/usr/local/lib/python2.7/site-packages
ln -s /usr/local/freeswitch/scripts .
通过复制也可以做到这一点。
添加到PYTHONPATH
环境变量,如果文件位于/usr/src/foo/bar.py
,请将以下内容添加到系统环境启动
export PYTHONPATH=$PYTHONPATH:/usr/src
别忘了,foo
包目录需要一个__init__.py
。在启动freeswitch
的shell
中,需要定义此环境变量。
四、调用mod_python应用程序
要从dialplan调用Python应用程序,您可能应该熟悉Dialplan。您只需将其称为类似于以下的应用程序:
<action application="python" data="foo.bar"/>
模块是bar
,在foo
包中。请参阅“ 查找python
模块”部分,告诉嵌入式python
解释器如何查找此模块。
如果您的模块(例如,test.py)不在任何包目录中,那么您将使用:
<action application="python" data="test"/>
在这两种情况下,您都需要省略.py
文件扩展名,否则它将无法正常工作。它只需要一个完全限定的模块名称。
如果使用带有Freeswitch
的XML dialplan
模块,您可以将它放在dialplan
中。不要忘记你的'条件'标签和所有的善良。
可以使用python
命令从CLI
调用Python
脚本:
freeswitch> python foo.bar
如果你以这种方式调用它,你的python handler()
函数将被调用而不带参数。
用户评论
更多相关好文
-
微信公众号文章/菜单添加小程序时路径如何获取? 2021-12-22
-
如何轻松获取微信小程序路径path? 2021-12-22
-
cannot import name 'CUDA_HOME' from 'mmcv.utils' 2021-12-05
-
vgg的loss一轮达到ln(1/n)阈值,如何解决 2021-11-21
-
如何下载使用utils库 2021-10-27
热门文章
-
微信公众号文章/菜单添加小程序时路径如何获取? 2021-12-22
-
如何轻松获取微信小程序路径path? 2021-12-22
-
python/MySQL分页查询方法与性能优化 2021-06-23
-
mitmproxy & python 忽略所有的https/ssl请求 2021-04-19
-
如何使用邮件/邮箱推广微信公众号/小程序? 2021-01-28
栏目最新文章
公告提示
- pytorch中文文档
- pytorch官方文档
提交评论