Fix valet park when call is sent to a different domain
When crossing domains we need to use park with the correct domain. This change uses the referred by to get the proper domain name.
This commit is contained in:
parent
a232176717
commit
519627b8e5
|
|
@ -1,7 +1,13 @@
|
||||||
<extension name="valet_park" number="park+*5901-*5999" context="${domain_name}" continue="false" app_uuid="3cc8363d-5ce3-48aa-8ac1-143cf297c4f7" enabled="true" order="470">
|
<extension name="valet_park" number="park+*5901-*5999" context="${domain_name}" continue="false" app_uuid="3cc8363d-5ce3-48aa-8ac1-143cf297c4f7" enabled="true" order="470">
|
||||||
<condition field="destination_number" expression="^(park)?\+?\*(59(0[1-9]|[1-9][0-9]))$" break="never"/>
|
<condition field="destination_number" expression="^(park)?\+?\*(59(0[1-9]|[1-9][0-9]))$" break="never"/>
|
||||||
<condition field="${sip_h_Referred-By}" expression="sip:(.*)@.*" break="never">
|
<condition field="${sip_h_Referred-By}" expression="sip:(.*)@(.*?)(?::\d+)?\>" break="never">
|
||||||
<action application="set" data="referred_by_user=$1" inline="true"/>
|
<action application="set" data="referred_by_user=$1" inline="true"/>
|
||||||
|
<action application="set" data="referred_by_host=$2" inline="true"/>
|
||||||
|
</condition>
|
||||||
|
<condition field="destination_number" expression="^(park)?\+?\*(59(0[1-9]|[1-9][0-9]))$" break="never"/>
|
||||||
|
<condition field="${referred_by_user}" expression="^.+$" break="never">
|
||||||
|
<action application="set" data="valet_context=${referred_by_host}" inline="true"/>
|
||||||
|
<anti-action application="set" data="valet_context=${domain_name}" inline="true"/>
|
||||||
</condition>
|
</condition>
|
||||||
<condition field="destination_number" expression="^(park)?\+?\*(59(0[1-9]|[1-9][0-9]))$" break="never">
|
<condition field="destination_number" expression="^(park)?\+?\*(59(0[1-9]|[1-9][0-9]))$" break="never">
|
||||||
<action application="set" data="park_in_use=false" inline="true"/>
|
<action application="set" data="park_in_use=false" inline="true"/>
|
||||||
|
|
@ -10,16 +16,16 @@
|
||||||
</condition>
|
</condition>
|
||||||
<condition field="destination_number" expression="^(park)?\+?\*(59(0[1-9]|[1-9][0-9]))$"/>
|
<condition field="destination_number" expression="^(park)?\+?\*(59(0[1-9]|[1-9][0-9]))$"/>
|
||||||
<condition field="${referred_by_user}" expression="^.+$" break="never">
|
<condition field="${referred_by_user}" expression="^.+$" break="never">
|
||||||
<action application="set" data="valet_info_park=${valet_info park@${domain_name}}|\*${park_lot}" inline="true"/>
|
<action application="set" data="valet_info_park=${valet_info park@${valet_context}}|\*${park_lot}" inline="true"/>
|
||||||
<action application="set" data="park_in_use=${regex ${valet_info park@${domain_name}}|\*${park_lot}}" inline="true"/>
|
<action application="set" data="park_in_use=${regex ${valet_info park@${valet_context}}|\*${park_lot}}" inline="true"/>
|
||||||
</condition>
|
</condition>
|
||||||
<condition field="${park_in_use}" expression="true" break="never">
|
<condition field="${park_in_use}" expression="true" break="never">
|
||||||
<action application="transfer" data="${referred_by_user} XML ${context}"/>
|
<action application="transfer" data="${referred_by_user} XML ${referred_by_host}"/>
|
||||||
<anti-action application="set" data="effective_caller_id_name=${cond ${regex ${direction} | inbound} == true ? 'park#${caller_id_name}' : 'park#${callee_id_name}'}" inline="true"/>
|
<anti-action application="set" data="effective_caller_id_name=${cond ${regex ${direction} | inbound} == true ? 'park#${caller_id_name}' : 'park#${callee_id_name}'}" inline="true"/>
|
||||||
<anti-action application="set" data="valet_parking_timeout=900"/>
|
<anti-action application="set" data="valet_parking_timeout=900"/>
|
||||||
<anti-action application="set" data="valet_hold_music=${hold_music}"/>
|
<anti-action application="set" data="valet_hold_music=${hold_music}"/>
|
||||||
<anti-action application="set" data="valet_parking_orbit_exten=${cond ${regex ${referred_by_user} | ^$} == true ? ${sip_from_user} : ${referred_by_user}}"/>
|
<anti-action application="set" data="valet_parking_orbit_exten=${cond ${regex ${referred_by_user} | ^$} == true ? ${sip_from_user} : ${referred_by_user}}"/>
|
||||||
<anti-action application="answer" data=""/>
|
<anti-action application="answer" data=""/>
|
||||||
<anti-action application="valet_park" data="park@${domain_name} *${park_lot}"/>
|
<anti-action application="valet_park" data="park@${valet_context} *${park_lot}"/>
|
||||||
</condition>
|
</condition>
|
||||||
</extension>
|
</extension>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue