diff --git a/kamailio/presence-fast-pickup.cfg b/kamailio/presence-fast-pickup.cfg index af9f263..39d780d 100644 --- a/kamailio/presence-fast-pickup.cfg +++ b/kamailio/presence-fast-pickup.cfg @@ -61,7 +61,7 @@ route[PRESENCE_FAST_PICKUP_ATTEMPT] $du = $sht(fp=>$var(md5)); append_hf("Replaces: $var(replaced_call_id)$var(Pickup)\r\n"); xlog("L_INFO", "$ci|log|fast|found shortcut for call-id $var(replaced_call_id) , redirecting ($(ru{uri.user})) to $du\n"); - route(EXTERNAL_TO_INTERNAL_RELAY); + route(RELAY); exit(); } else { $var(replaced_call_id) = "none"; @@ -89,7 +89,7 @@ route[PRESENCE_FAST_PICKUP_ATTEMPT] remove_hf_re("^Replaces"); append_hf("Replaces: $var(rep)\r\n"); xlog("L_INFO", "$ci|log|call-id $var(replaced_call_id) found, redirecting call ($(ru{uri.user})) to $du => $var(rep)\n"); - route(EXTERNAL_TO_INTERNAL_RELAY); + route(RELAY); exit(); } else { xlog("L_WARN", "$ci|log|call-id $var(replaced_call_id) not found in cluster, proceeding with normal dispatch\n"); @@ -108,8 +108,8 @@ route[PRESENCE_FAST_PICKUP_ATTEMPT] $var(park) = $_s(*3$(ru{uri.user}{s.substr,2,0})@$(ru{uri.domain})); if($sht(park=>$var(park)) != $null) { $du = $sht(park=>$var(park)); - xlog("L_INFO", "$ci|log|redirecting park request to $du\n"); - route(EXTERNAL_TO_INTERNAL_RELAY); + xlog("L_INFO", "$ci|log|redirecting park request to $du , callid : $sht(park=>$var(park)::callid)\n"); + route(RELAY); exit(); } } @@ -117,8 +117,8 @@ route[PRESENCE_FAST_PICKUP_ATTEMPT] if($sht(park=>$(ru{uri.user})@$(ru{uri.domain})) != $null) { $du = $sht(park=>$(ru{uri.user})@$(ruri{uri.domain})); - xlog("L_INFO", "$ci|log|redirecting park request to $du\n"); - route(EXTERNAL_TO_INTERNAL_RELAY); + xlog("L_INFO", "$ci|log|redirecting park request to $du, callid: $sht(park=>$(ru{uri.user})@$(ruri{uri.domain})::callid)\n"); + route(RELAY); exit(); } @@ -135,7 +135,7 @@ route[PRESENCE_FAST_PICKUP_ATTEMPT] $du = $(kzR{kz.json,Channels[0].switch_url}); if($du != $null) { xlog("L_INFO", "$ci|log|redirecting park request to $du, courtesy of kazoo\n"); - route(EXTERNAL_TO_INTERNAL_RELAY); + route(RELAY); exit(); } } @@ -166,8 +166,10 @@ route[PRESENCE_FAST_PICKUP_INIT] if($var(AppName) == "park") { if($(kzE{kz.json,State}) == "terminated") { $sht(park=>$(kzE{kz.json,Presence-ID})) = $null; + $sht(park=>$(kzE{kz.json,Presence-ID})::callid) = $null; } else { $sht(park=>$(kzE{kz.json,Presence-ID})) = $(kzE{kz.json,Switch-URI}); + $sht(park=>$(kzE{kz.json,Presence-ID})::callid) = $(kzE{kz.json,Call-ID}); } }