freeswitch的mod_curl模块】的更多相关文章

概述 有时候,我们需要在呼叫的过程中,或过程后调用web api接口. freeswitch的mod_curl模块可以很方便的实现web api的接口调用. mod_curl模块默认不安装,需要进入模块目录自行编译安装,并配置modules.conf.xml文件在fs启动时加载模块. <load module="mod_curl"/> 环境 centos:CentOS 7 freeswitch:v1.10.7 GCC:4.8.5 API接口 api接口格式. curl ur…
今天来学习FreeSWITCH 加载模块过程. 哪些模块需要编译,是由源码下的 modules.conf 文件决定的. 哪些模块在程序启动时自动加载,是由 freeswitch/conf/autoload_configs/modules.conf.xml  决定的. switch.c--main() ----> switch_core.c --switch_core_init_and_modload() ---->switch_loadable_module.c  --switch_loada…
概述 freeswitch的外围模块是插件式的,可以动态的加载和卸载,使用起来非常的灵活和方便. 如果我们自己来设计一个开源的代码框架,相信这种插件式的模块结构是非常适合多人合作的模式. 本文对fs的模块加载接口进行一些分析和讨论,作为借鉴. 环境 centos:CentOS  release 7.0 (Final)或以上版本 freeswitch:v1.8.7 GCC:4.8.5 模块接口 freeswitch新增mod_task模块的介绍,见之前的文章. 在mod_task模块实现中,有3个…
概述 最近因为业务需要,在看freeswitch中话单相关的一些模块. 在voip的使用过程中,话单是重要的基础模块,涉及到计费和问题查找. 呼叫话单最重要的一点是稳定,不能有错误或遗漏. 本章对fs的话单模块做整体梳理和简单介绍. 环境 centos:CentOS  release 7.0 (Final)或以上版本 freeswitch:v1.8.7 GCC:4.8.5 话单模块 freeswitch中CDR相关模块较多,粗略列一下. mod_cdr_csv mod_cdr_mongodb m…
概述 freeswitch 在对VOIP语音通话中,可以通过playback命令播放IVR语音文件. 默认情况下,freeswitch支持wav文件,也可以直接播放VOIP中常见编解码的G711文件.G729文件等,但是对mp3是不支持的. 通过查询freeswitch的官方文档,发现mod_shout模块是可以支持MP3文件的播放. mod_shout模块默认不安装,可以根据需求来决定是否编译安装. 环境 centos:CentOS  release 7.0 (Final)或以上版本 free…
需要先编译libav库 编译libav下载:git clone https://freeswitch.org/stash/scm/sd/libav.git cd libav ./configure --enable-pic --enable-shared  --enable-libx264 --enable-gpl --extra-libs="-ldl" make CXXFLAGS="-fPIC"make install 复制 libavcodec.pc  liba…
SIP 模块是 FreeSWITCH 的主要模块,所以,值得拿出专门一章来讲解. 在前几章时里,你肯定见过几次 sofia 这个词,只是或许还不知道是什么意思.是这样的,Sofia-SIP 是由诺基亚公司开发的 SIP 协议栈,它以开源的许可证 LGPL 发布,为了避免重复发明轮子,FreeSWITCH 便直接使用了它. 在 FreeSWITCH 中,实现一些互联协议接口的模块称为 Endpoint.FreeSWITH 支持很多的 Endpoint, 如 SIP.H232等.那么实现 SIP 的…
概述 上一章我们讲解了freeswitch的源码基本结构,以及如何新增一个插件式模块. freeswitch的架构非常适合这种业务开发模式,即以freeswitch的基本功能为开发平台,新增插件式模块来适配各种不同的业务场景,开发效率很高,学习成本相对较低. freeswitch的许多模块具有API,freeswitch可以通过命令行.脚本或事件套接字从远程计算机接收API命令. API命令可以做什么取决于每个单独的模块,常见的功能有数百个,包括返回状态信息(例如会议中有多少听众)或控制当前运行…
默认情况下Freeswitch自带的G729模块是pass-through-并不支持转码. 不过我们依然有个好奇的心, 所以我们决定添加一个支持G729转码的模块到Freeswitch. 1. 下载mod_g729.zip (改自Deepwalker-fs_itu_g729-0bcddb5.tar) 2. 解压 #unzip mod_g729.zip 3. 删除原来的模块, 将新模块添加到codec目录中 rm -rf src/mod/codecs/mod_g729 mv mod_g729 /s…
SIP模块 - mod_sofia SIP 模块是 FreeSWITCH的主要模块. 在 FreeSWITCH中,实现一些互联协议接口的模块称为 Endpoint.FreeSWITH支持很多的 Endpoint,如 SIP.H232等.那么实现 SIP 的模块为什么不支持叫 mod_sip呢?这是由于 FreeSWITCH的 Endpoint 是一个抽象的概念,你可以用任何的技术来实现.实际上 mod_sofia只是对 Sofia-SIP库的一个粘合和封装.除 Sofia-SIP外,还有很多开源…