freeswitch 用continue_on_fail实现失败转移

来源:互联网 发布:paxos一致性算法图解 编辑:程序博客网 时间:2024/06/06 20:08
当被叫sip不在线时需要转到pstn网络继续呼叫 
这时需要用的continue_on_fail变量 
如下设置可实现呼叫sip失败后继续呼叫后面的pstn 

引用
continue_on_fail=true
continue_on_fail 作用于被叫(b leg) 

当被叫不在线或者忙等不可接通时, 
如果true则继续处理, 
如果false拨号盘(dialplan)停止处理 

详细配置如下 
引用
        <extension name="Goip outbound"> 
                <condition field="destination_number"  expression="^01(\d+)$"> 
                  <action application="log" data="INFO goip outbound to $1"/> 
                  <action application="set" data="hangup_after_bridge=true"/> 
                  <action application="set" data="continue_on_fail=true"/> 
                  <action application="set" data="ringback=${us-ring}"/> 
                  <action application="bridge" data="user/$1"/> 
                  <action application="bridge" data="sofia/gateway/pstn/11$1"/> 
                </condition> 
        </extension>


函数 hangup_after_bridge的作用 
作用于主叫(a leg) 
前置条件: A呼叫B,如果B挂机 
如果  hangup_after_bridge = true,这时A也直接挂机 
如果  hangup_after_bridge = false,则A继续向后执行 
此变量用于bridge通话 



简单解释: 
用户拨打 01XXXXXXXX进入 
主叫先与user/$1建立桥接失败 
因为continue_on_fail=true 所以继续执行 
与sofia/gateway/pstn/11$1建立桥接 
0 0