mod_unimrcp是FreeSWITCH实现媒体资源控制协议(MRCP)通信的模块。FS充当MRCP的Client端,与MRCP SERVER交互。MRCP V1使用RTSP协商,V2使用SIP。mod_unimrcp同时支持这两个版本。这里描述unimrcp的SIP交互的配置。
通过MRCP,可以实现ASR、TTS这类业务。
mrcp_profiles
MRCP profile定义了一个特定MRCP SERVER的通信配置。这个机制让FS可以和不同的的MRCP SERVER集成。每个profile定义了MRCP的版本、Client和SERVER的地址、端口、媒体编码偏好,还有其他参数。
MRCP关于SPEAK和RECOGNIZE的缺省参数,在synthparams、recogparams、respectively里配置。可以参阅RFC或MRCP SERVER提供的文档,以获取可以设置的参数约定。
MRCPv2 实例
很多MRCP Server支持MRCPV2。因为它利用了SIP的灵活性。
<include>
<profile name="mrcpserver02" version="2">
<param name="client-ip" value="10.10.5.2"/>
<param name="client-port" value="5090"/>
<param name="server-ip" value="10.5.5.152"/>
<param name="server-port" value="5060"/>
<param name="sip-transport" value="udp"/>
<param name="rtp-ip" value="10.10.5.2"/>
<param name="rtp-port-min" value="4000"/>
<param name="rtp-port-max" value="5000"/>
<param name="codecs" value="PCMU PCMA L16/96/8000"/>
<synthparams>
</synthparams>
<recogparams>
<param name="start-input-timers" value="false"/>
</recogparams>
</profile>
</include>
参数说明:
- client-ext-ip - NAT环境MRCP client的公网地址
- client-ip - MRCP client的SIP地址
- client-port - MRCP client 的SIP端口(不是 conf/sip_profiles里的SIP端口)
- server-ip - MRCP server的SIP地址
- server-port - MRCP server的SIP端口
- force-destination -
- sip-transport - 传输协议"udp" 或"tcp"
- ua-name - UA的名字
- sdp-origin -
- rtp-ext-ip - NAT后的MRCP client的RTP公网地址
- rtp-ip - MRCP client的RTP地址
- rtp-port-min - RTP 端口段
- rtp-port-max - RTP端口段
- playout-delay -
- max-playout-delay -
- ptime - 与MRCP server协商的ptime值
- codecs -编码偏好