文档章节

freeswitch嵌入python脚本

AllenOR灵感
 AllenOR灵感
发布于 2017/09/10 00:48
字数 270
阅读 10
收藏 0

操作系统:debian8.5_x64

freeswitch 版本 : 1.6.8

python版本:2.7.9

开启python模块

安装python lib库

apt-get install python-dev

编辑modules.conf,开启python模块:

languages/mod_python

编译安装:

./configure && make && make install

在modules.conf.xml中开启python支持;

启动freeswitch;

测试脚本

API测试

添加测试脚本:

文件路径:/usr/local/freeswitch/scripts/test1.py

文件内容:

import freeswitch

def fsapi(session,stream,env,args):
    stream.write("hello")
    freeswitch.consoleLog("info","test")

控制台测试

freeswitch@debian8> python test1
hello
2016-09-06 23:06:09.069753 [NOTICE] mod_python.c:212 Invoking py module: test1
2016-09-06 23:06:09.069753 [DEBUG] mod_python.c:283 Call python script
2016-09-06 23:06:09.069753 [INFO] switch_cpp.cpp:1360 test
2016-09-06 23:06:09.069753 [DEBUG] mod_python.c:286 Finished calling python script
freeswitch@debian8>

APP测试

文件路径: /usr/local/freeswitch/scripts/testCall.py

文件内容:

import freeswitch
def handler(session, args):
    session.answer()
    freeswitch.console_log("info","testCall")
    session.streamFile("local_stream://moh")
    freeswitch.msleep(3000)
    session.hangup()

在dialplan中加入如下配置:

<extension name="python test script">
        <condition field="destination_number" expression="^400123456$">
            <action application="python" data="testCall"/>
        </condition>
</extension>

注册话机,拨打400123456号码即可听到moh声音,同时看到freeswitch控制台日志。

本文github地址:

https://github.com/mike-zhang/mikeBlogEssays/blob/master/2016/20160906_freeswitch嵌入python脚本.md

欢迎补充 

本文转载自:http://www.cnblogs.com/MikeZhang/p/freeswitchUsePython_20160906.html

AllenOR灵感
粉丝 11
博文 2635
码字总数 83001
作品 0
程序员
私信 提问
freeSwitch安装步骤 for CentOS

下载: 下载地址:http://files.freeswitch.org/ 或者直接用git安装。可能会失败 git clone -b v1.2.stable git://git.freeswitch.org/freeswitch.git 安装依赖环境: yum install autoconf......

会哭的鳄鱼
2017/10/24
191
0
freeswitch实战经验1:服务器向成员主动发起会议邀请

接触过freeswitch的童鞋们都知道,freeswitch自动会议室功能,比如大家都拨3000这个号码,就可以进行电话会议功能了。但是,现在有这么一个场景:现在某个主持人想开电话会议,想直接由frees...

BLUE-魏晓峰
2013/06/17
3.5K
0
FreeSWITCH 与 Asterisk(译)

Anthony Minssale/文 Seven/译 VoIP通信,与传统的电话技术相比,不仅仅在于绝对的资费优势,更重要的是很容易地通过开发相应的软件,使其与企业的业务逻辑紧密集成。Asterisk作为开源VoIP软...

mickelfeng
2013/03/06
539
0
FreeSWITCH 改到了 AstLinux 下进行编译

FreeSWITCH 现在改在了 AstLinux 下进行编译。AstLinux 本身包含了许多不同的应用,包括嵌入式系统和开机USB驱动器等。下面这些配置需要41兆的空间: FreeSWITCH with default mods (but no...

红薯
2009/02/18
2.1K
0
FreeSWITCH 1.2.14 发布,电话软交换机

FreeSWITCH 1.2.14 发布,这是一个维护版本,修复了很多 bug。 下载地址:http://files.freeswitch.org/freeswitch-1.2.14.tar.bz2 FreeSWITCH 是一个电话的软交换解决方案,包括一个软电话和...

oschina
2013/10/17
2.4K
0

没有更多内容

加载失败,请刷新页面

加载更多

Qt程序打包发布方法(使用官方提供的windeployqt工具)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/toTheUnknown/article/details/81748179 如果使用到了Qt ...

shzwork
24分钟前
4
0
MainThreadSupport

MainThreadSupport EventBus 3.0 中的代码片段. org.greenrobot.eventbus.MainThreadSupport 定义一个接口,并给出默认实现类. 调用者可以在EventBus的构建者中替换该实现. public interface ...

马湖村第九后羿
45分钟前
3
0
指定要使用的形状来代替文字的显示

控制手机键盘弹出的功能只能在ios上实现,安卓是实现不了的,所以安卓只能使用type类型来控制键盘类型,例如你要弹出数字键盘就使用type="number",如果要弹出电话键盘就使用type="tel",但这...

前端老手
55分钟前
6
0
总结:Raft协议

一、Raft协议是什么? 分布式一致性算法。即解决分布式系统中各个副本数据一致性问题。 二、Raft的日志广播过程 发送日志到所有Followers(Raft中将非Leader节点称为Follower)。 Followers收...

浮躁的码农
今天
7
0
Flask-admin Model View字段介绍

Model View字段介绍 can_create = True 是否可以创建can_edit = True 是否可以编辑can_delete = True 是否可以删除list_template = 'admin/model/list.html' 修改显......

dillonxiao
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部