Home | 简体中文 | 繁体中文 | 杂文 | Github | 知乎专栏 | Facebook | Linkedin | Youtube | 打赏(Donations) | About
知乎专栏

170.16. 代接电话

有一组号码,他们可能在通话,你希望终止他们的通话,接到自己这边来,可以使用,代接电话功能。

确认代接电话拨号规则已经配置 /etc/freeswitch/dialplan/default.xml

			
    <extension name="global-intercept">
      <condition field="destination_number" expression="^886$">
        <action application="answer"/>
        <action application="intercept" data="${hash(select/${domain_name}-last_dial_ext/global)}"/>
        <action application="sleep" data="2000"/>
      </condition>
    </extension>

    <extension name="group-intercept">
      <condition field="destination_number" expression="^\*8$">
        <action application="answer"/>
        <action application="intercept" data="${hash(select/${domain_name}-last_dial_ext/${callgroup})}"/>
        <action application="sleep" data="2000"/>
      </condition>
    </extension>

    <extension name="intercept-ext">
      <condition field="destination_number" expression="^\*\*(\d+)$">
        <action application="answer"/>
        <action application="intercept" data="${hash(select/${domain_name}-last_dial_ext/$1)}"/>
        <action application="sleep" data="2000"/>
      </condition>
    </extension>

    <extension name="redial">
      <condition field="destination_number" expression="^(redial|870)$">
        <action application="transfer" data="${hash(select/${domain_name}-last_dial/${caller_id_number})}"/>
      </condition>
    </extension>
			
		

创建一组用户 callgroup 相同,此处的 callgroup 与 组呼叫 没有任何关系,callgroup 是指代接电话组。

			
[root@production default]# cat /etc/freeswitch/directory/default/177.xml 
<include>
        <user id="177">
                <params>
                        <param name="password" value="0848"/>
                        <param name="vm-password" value="0848"/>
                </params>
                <variables>
                        <variable name="toll_allow" value="domestic,international,local"/>
                        <variable name="accountcode" value="177"/>
                        <variable name="user_context" value="default"/>
                        <variable name="effective_caller_id_name" value="BG7NYT"/>
                        <variable name="effective_caller_id_number" value="177"/>
                        <variable name="outbound_caller_id_name" value="$${outbound_caller_name}"/>
                        <variable name="outbound_caller_id_number" value="$${outbound_caller_id}"/>
                        <variable name="callgroup" value="bg7nyt"/>
                </variables>
        </user>
</include>			
			
		

配置好后,你可以找几个电话测试,拨通一组后,用另一部话机不通 886 就能接管正在通话的号码。