diff --git a/kamailio/default.cfg b/kamailio/default.cfg index 905d283..f2a52ca 100644 --- a/kamailio/default.cfg +++ b/kamailio/default.cfg @@ -344,10 +344,13 @@ route route[CHECK_RETRANS] { - # handle retransmissions - if(t_precheck_trans()) { + # handle retransmissions + if (!is_method("ACK")) { + if(t_precheck_trans()) { + t_check_trans(); + exit; + } t_check_trans(); - exit; } } diff --git a/kamailio/fast-pickup-role.cfg b/kamailio/fast-pickup-role.cfg index fe44cc3..50a14d0 100644 --- a/kamailio/fast-pickup-role.cfg +++ b/kamailio/fast-pickup-role.cfg @@ -44,7 +44,12 @@ route[FAST_PICKUP_ATTEMPT] if(kazoo_query("callevt", $var(amqp_routing_key), $var(amqp_payload_request))) { $du = $(kzR{kz.json,Switch-URL}); if($du != $null) { - xlog("L_INFO", "$ci|log|call-id $var(replaced_call_id) found redirecting call to $du\n"); + if($(ru{uri.user}) =~ "\*") { + xlog("L_INFO", "$ci|log|adding a-leg to replaces header\n"); + remove_hf_re("^Replaces"); + append_hf("Replaces: $var(replaced_call_id);a-leg=true\r\n"); + } + xlog("L_INFO", "$ci|log|call-id $var(replaced_call_id) found redirecting call ($(ru{uri.user})) to $du\n"); route(EXTERNAL_TO_INTERNAL_RELAY); exit(); } else { diff --git a/rabbitmq/enabled_plugins b/rabbitmq/enabled_plugins index 352dfc4..2e4cef3 100644 --- a/rabbitmq/enabled_plugins +++ b/rabbitmq/enabled_plugins @@ -1 +1 @@ -[rabbitmq_management]. +[rabbitmq_management, rabbitmq_consistent_hash_exchange].