FreeSWITCH配置文件解析(11) 模块配置文件(modules.conf)

FreeSWITCH的​​模块配置文件(modules.conf)​​,它定义了FreeSWITCH启动时加载的模块。每个模块提供不同的功能,如日志记录、呼叫控制、编解码支持、数据库交互等。以下是主要模块的分类和作用说明:


1. 日志记录(Loggers)​​

  • ​​mod_console​​

    将日志输出到控制台(stdout)。

  • ​​mod_logfile​​

    将日志写入文件(默认/var/log/freeswitch/freeswitch.log)。

  • ​​mod_syslog​​(注释)

    将日志发送到系统日志服务(如syslog)。

  • ​​mod_graylog2​​(注释)

    支持将日志发送到Graylog2日志管理工具。


​​2. XML接口(XML Interfaces)​​

  • ​​mod_xml_rpc​​(注释)

    提供XML-RPC接口,用于远程控制FreeSWITCH。

  • ​​mod_xml_curl​​(注释)

    从HTTP服务器动态获取XML配置(如拨号计划、用户目录)。

  • ​​mod_xml_cdr​​(注释)

    将通话详单(CDR)以XML格式输出。


​​3. 事件处理(Event Handlers)​​

  • ​​mod_event_socket​​

    核心模块,提供TCP Socket接口(ESL),允许外部程序(如PHP、Python)控制FreeSWITCH。

  • ​​mod_cdr_csv​​

    将通话详单(CDR)保存为CSV文件。

  • ​​mod_cdr_sqlite​​(注释)

    将CDR存储到SQLite数据库。

  • ​​mod_amqp​​(注释)

    支持通过AMQP协议(如RabbitMQ)发送事件。


​​4. 终端协议(Endpoints)​​

  • ​​mod_sofia​​

    ​​核心模块​​,实现SIP协议(用于对接SIP话机、网关、运营商)。

  • ​​mod_loopback​​

    用于内部呼叫路由(如模拟环路设备)。

  • ​​mod_rtc​​

    支持WebRTC(浏览器实时通信)。

  • ​​mod_freetdm​​(注释)

    对接传统PSTN硬件(如E1/T1板卡)。

  • ​​mod_verto​​(注释)

    提供Verto协议(基于WebSocket的通信)。


​​5. 应用程序(Applications)​​

  • ​​mod_commands​​

    提供基础API命令(如originate发起呼叫)。

  • ​​mod_conference​​

    支持音频/视频会议功能。

  • ​​mod_db​​

    提供键值存储(如存储用户状态)。

  • ​​mod_dptools​​

    核心拨号计划工具(如playback、record)。

  • ​​mod_fifo​​

    实现呼叫队列(FIFO队列)。

  • ​​mod_httapi​​

    提供HTTP API(用于Web控制呼叫流程)。

  • ​​mod_valet_parking​​

    实现通话驻留(Parking)功能。


​​6. 拨号计划(Dialplan Interfaces)​​

  • ​​mod_dialplan_xml​​

    从XML文件加载拨号计划(默认conf/dialplan/*.xml)。

  • ​​mod_dialplan_asterisk​​

    支持Asterisk风格的拨号计划语法。


​​7. 编解码(Codec Interfaces)​​

  • ​​mod_spandsp​​

    支持G.711、G.722、FAX等编解码。

  • ​​mod_g729​​

    G.729编解码(需授权)。

  • ​​mod_opus​​

    Opus编解码(低延迟,适合WebRTC)。

  • ​​mod_amr​​

    AMR编解码(常用于移动网络)。

  • ​​mod_b64​​

    支持Base64编码/解码(如SIP身份验证)。


​​8. 文件格式(File Format Interfaces)​​

  • ​​mod_sndfile​​

    支持WAV、MP3等音频文件播放/录制。

  • ​​mod_av​​

    支持视频文件(如H.264)。

  • ​​mod_local_stream​​

    播放本地音频流(如背景音乐)。

  • ​​mod_tone_stream​​

    生成自定义音调(如DTMF、回铃音)。


​​9. 脚本语言(Languages)​​

  • ​​mod_lua​​

    支持Lua脚本(常用拨号计划、动态路由)。

  • ​​mod_python​​(注释)

    支持Python脚本。

  • ​​mod_v8​​(注释)

    支持JavaScript(V8引擎)。


​​10. TTS/ASR(语音合成/识别)​​

  • ​​mod_flite​​(注释)

    文本转语音(TTS)引擎。

  • ​​mod_pocketsphinx​​(注释)

    语音识别(ASR)引擎。


​​11. 其他功能​​

  • ​​mod_enum​​

    支持ENUM查询(将电话号码映射到SIP URI)。

  • ​​mod_hash​​

    提供内存哈希表存储(临时数据共享)。

  • ​​mod_esf​​

    扩展的呼叫功能(如Early Media控制)。

  • ​​mod_say_en​​

    英语语音提示(如"您拨打的号码是...")。

相关推荐
欧米欧4 分钟前
Linux系统篇(七),环境变量的底层溯源,核心获取机制与安全应用
linux·运维·服务器
Ruiery14 分钟前
Linux 6.6内核内存管理深度解析(十八):KASLR 内核地址空间随机化
linux·运维·服务器·安全
前端精髓1 小时前
调用大模型API
运维·服务器·microsoft
逆风的蚂蚁3 小时前
linux服务器性能调整怎么落地?我把 CPU 调度、I/O 优先级和内核参数这几个旋钮都拧了一遍
linux·运维·服务器
ESDWAN3 小时前
企业网络监控应该监测哪些目标?网关、网络节点还是业务系统?
服务器·网络·php
流浪0013 小时前
计算机网络篇14:传输层——UDP 协议:8 字节定长报头划出报文边界,16 位端口号完成分用
计算机网络·udp·udp包头结构
发光小北4 小时前
EtherNet/IP 转 ModbusTCP 网关现场应用中会遇到什么问题?
服务器·网络·tcp/ip
程序猿老A5 小时前
轻量云服务器总是卡,内存占比高?
运维·服务器
开源必胜6 小时前
Socket、异步非阻塞 I/O 与 NGINX、Netty 模型
网络·tcp/ip·nginx
沫璃染墨6 小时前
从零入门计算机网络系列(十一):HTTP协议进阶——从重定向原理到GET/POST与Fiddler抓包
linux·服务器·开发语言·网络·c++·tcp/ip·html