We used Kamailio as an edge proxy described rfc5626. Here is the present section "9.3. Incoming Call and Proxy Crash" which describes the failover scenario when a call comes from the server towards the client device (WebRTC client). https://datatracker.ietf.org/doc/html/rfc5626#section-9.3
But also a possible case when the client device wants to place a call on hold, send a ReINVITE message. For some reason, websocket connections can be reestablished during a call, and now the old flow token does not match the new client connection and is handled as an incoming request and cannot be forwarded to a nonexistent client connection. And the client hold/unhold request fails. Example in the attached PCAP file (downloaded from Homer). Here message in frame 32 comes from source port 9184, and the next ReINVITE message from frame 36 comes from source port 9189.
Could you point me to the RFC documents describes failover for outbound client requests (hold/unhold).
Sergey
The theory of Outbound, IIRC, is that you re-dip your registrar on your in-dialog requests in order to make sure you're using the latest flow.
On Jul 11, 2025, at 3:23 PM, Sergey Safarov via sr-users sr-users@lists.kamailio.org wrote:
We used Kamailio as an edge proxy described rfc5626. Here is the present section "9.3. Incoming Call and Proxy Crash" which describes the failover scenario when a call comes from the server towards the client device (WebRTC client). https://datatracker.ietf.org/doc/html/rfc5626#section-9.3
But also a possible case when the client device wants to place a call on hold, send a ReINVITE message. For some reason, websocket connections can be reestablished during a call, and now the old flow token does not match the new client connection and is handled as an incoming request and cannot be forwarded to a nonexistent client connection. And the client hold/unhold request fails. Example in the attached PCAP file (downloaded from Homer). Here message in frame 32 comes from source port 9184, and the next ReINVITE message from frame 36 comes from source port 9189.
Could you point me to the RFC documents describes failover for outbound client requests (hold/unhold).
Sergey <call.pcap>__________________________________________________________ Kamailio - Users Mailing List - Non Commercial Discussions -- sr-users@lists.kamailio.org To unsubscribe send an email to sr-users-leave@lists.kamailio.org Important: keep the mailing list in the recipients, do not reply only to the sender!
-- Alex Balashov Principal Consultant Evariste Systems LLC Web: https://evaristesys.com, https://www.csrpswitch.com Tel: +1-706-510-6800