Hello.
Below it's the call flow.
UAC CALL CONTROL 1 OPENSER 1 GW | | | | | INVITE F1 | | | |--------------->| | | | 100 F2 | | | |<---------------| INVITE F3 | | | |--------------->| | | | 100 F4 | | | |<---------------| INVITE F5 | | | |--------------->| | | | 183 F6 | | | 183 F7 |<---------------| | 183 F8 |<---------------| | |<---------------| | | | | Early Media | | |<==============>|<===============|================| | | | 200 F9 | | | 200 F10 |<---------------| | |<---------------| | | | | | | | ACK F13 | | | |--------------->| | | | re-INVITE F14 | | | |--------------->| | | | | re-INVITE F15 | | | |--------------->| | | | ACK F16 | | | |--------------->| | | | | | | | 500 F17 | | | | <--------------| | | | |
The problem is between F13 and F16. Why OPENSER relays the re-INVITE first (F15), if the ACK (F13) was sent before and arrives before? And I am sure that this ACK hits a t_relay(), because after the re-INVITE sent, the ACK (F16) is sent normally...
I am using OpenSER 1.0.1.
Any help is appreciated.
Alexandre