Hello
I am using kamailio 5.0.2, on a debian 9 system.
Everything was running fine, until one of our voip provider changed his switch. Our kamailio is relaying between several voip providers and several asterisk (only the signalisation, no rtp).
When we get an invite from this new switch, we select an asterisk and relay it correctly to this box. However, the OK is relayed back. But when the voip providers sends an ACK for this OK, the t_relay function does not return at all, it just dies with no action and no error.
Here is the snippet from route(relay)
xlog("L_INFO","route(relay) @@ $rm - Source: $si:$sp, fu:$fu, tu:$tu\n" );
$var(restrelay)=t_relay();
xlog("L_INFO","route(relay) @@ $rm - t_relay result: $var(restrelay)" );
if (!$var(restrelay)) {
When processing the initial invite, I do get both INFO messages. When the ACK is processed, I only get one INFO message, and no ACK is relayed - so it seems execution dies in the t_relay
What could be wrong ???
J.
Details of the ACK:
Via: SIP/2.0/UDP VOIPPROVIDERIP:5060;branch=z9hG4bKjq16fi00d85uee181ic0.1
Call-ID: SD8u3ob01-688d41f5e2164ceeafe76f40b82b3f97-v300g00030
CSeq: 1 ACK
Max-Forwards: 66
Content-Length: 0
(should you have enough width; the diagram will look ok)
VOIP PROVIDER KAMAILIO ASTERISK
21:38:54.685149 │ ──────────────────────────> │ │
▒ +0.000451 │ 100 trying -- your call is │ │
▒ 21:38:54.685600 │ <────────────────────────── │ │
▒ +0.000084 │ │ INVITE (SDP) │
▒ 21:38:54.685684 │ │ ──────────────────────────> │
▒ +0.000831 │ │ 100 Trying │
▒ 21:38:54.686515 │ │ <────────────────────────── │
▒ +0.000471 │ │ 200 OK (SDP) │
▒ 21:38:54.686986 │ │ <────────────────────────── │
▒ +0.000394 │ 200 OK (SDP) │ │
▒ 21:38:54.687380 │ <────────────────────────── │ │
▒ +0.038694 │ ACK │ │
▒ 21:38:54.726074 │ ──────────────────────────> │ │
▒ +0.060155 │ │ 200 OK (SDP) │
▒ 21:38:54.786229 │ │ <<<──────────────────────── │
▒ +0.000138 │ 200 OK (SDP) │ │
▒ 21:38:54.786367 │ <<<──────────────────────── │ │
▒ +0.005721 │ ACK │ │