1. 在源代码中,修改modules.conf文件,新增加一行applications/mod_bfcp
#applications/mod_abstraction
applications/mod_av
#applications/mod_avmd
#applications/mod_bert
applications/mod_bfcp
#applications/mod_blacklist
#applications/mod_callcenter
#applications/mod_cidlookup
#applications/mod_cluechoo
2. 在src/mod/applications下创建目录,目录名称是想要的模块名称:mod_bfcp
3. 在新创建的module目录下mod_bfcp,添加一个文件 mod_bfcp.c。主要包含以下函数:
SWITCH_MODULE_DEFINITION(mod_bfcp, mod_bfcp_load, mod_bfcp_shutdown, NULL); 定义加载,关闭,运行模块时的指针,就是下面这三个
SWITCH_MODULE_LOAD_FUNCTION(mod_bfcp_load);
SWITCH_MODULE_SHUTDOWN_FUNCTION(mod_bfcp_shutdown);
SWITCH_MODULE_RUNTIME_FUNCTION(mod_bfcp_runtime)
4. 当然如果需要配置文件的话,也可以在mod_bfcp目录下添加conf目录,并添加想要的文件.
5. 对于bfcp模块,使用的是开源的libbfcp,下载加压,放到mod_bfcp下面。并且分别安装bfcp下面的三个程序
6. 在configure.ac下添加src/mod/applications/mod_bfcp/Makefile
7. 在freeswitch.spec下的APPLICATION_MODULES_AC中添加applications/mod_bfcp
8.重新编译安装freeswitch,在mod下会生成 mod_bfcp.la, mod_bfcp.so
9. 加载mod_bfcp
以上就是在freeswitch中添加模块的步骤。
本次只是加载了mod_bfcp,还没有进行调试。