多企业模式下,队列呼叫、电话里按转接的时候,domain 默认会丢失,导致转接不成功。
下面是个比较糙的方案,能用:
dialplan/public.xml
中,利用 unloop,添加 bridge。
<extension name="unloop">
<condition field="${unroll_loops}" expression="^true$"/>
<condition field="${sip_looped_call}" expression="^true$" />
<condition field="${destination_number}" expression="^[0-9]{1,4}$">
<!-- action application="deflect" data="${destination_number}"/ -->
<action application="bridge" data="user/${destination_number}@xxx.callcenter.xxx.com"/>
</condition>
</extension>
还有一种办法,利用以下变量,尚未验证:
force_transfer_context
用法:
<action application="bridge" data="{force_transfer_context=some_context}sofia/gateway/gw_name/12345"/>
作用:当处理transfer/REFER时FreeSWITCH正常情况下将从原始信道中继承context。设置该值后将强制使用设置的context
force_transfer_diaplan
用法:
作用:当处理transfer/REFER时FreeSWITCH正常情况下将从原始信道中继承dialplan。设置该值后将强制使用设置的dialplan