Hi Patrick
Male sure record_route is used in kamailio script.
I will double check by outputing a notice to log before calling record_route but I'm quite confident this is the case for invites.
Do I need to explicitely call record_route for ACK and PRACK or even for all messages when using topos? Is this where topos hooks in?
Normally it should be used in initial invite.
Issue is not only PRACK, but also ACK. I narrowed down the issue to this:
topos active:
if (has_totag()) { # True if ( t_check_trans() ) { # False route(RELAY); } else { # discard ACK not matching transaction exit; } }
I end up discarding ACK and PRACK because they don't match a transaction.
topos commented out:
if (has_totag()) { # True if ( t_check_trans() ) { # True route(RELAY); } else { # discard ACK not matching transaction exit; } }
Ack is routed.
Any explanation why topos causes t_check_trans() to return false on ACK and PRACK?