Hello Benoit, let's focus on the topos topic then and try to solve it. This should then help in this scenario a lot. I just wrote you another e-mail about it.
Cheers, Henning > -----Original Message----- > From: Benoît Panizzon via sr-users <[email protected]> > Sent: Montag, 30. Dezember 2024 08:39 > To: James Browne via sr-users <[email protected]> > Cc: Benoît Panizzon <[email protected]> > Subject: [SR-Users] Re: how to call loose_route() after adding route header > without using msg_apply_changes? > > Hi James > > > I've two suggestions (three if we count agreeing with Alex's > > suggestion to consider not supporting that UA). > > Unfortunately, at the moment, not an option. > > > - Get kamailio to manually do the steps that loose_route() would do > > anyway. This is messy, because it requires good understanding of loose > > routing. You might remove the supplied Route header field, then get > > the transport/host/port from your saved Record-Route header fields, > > and then set the $du and $fs explicitly (and then get any _other_ > > Record-Route values and insert them as Route values), all while being > > aware of "r2" parameters (to know whether to exclude one or two Route > > values). It might work, but I don't think I'd ever want to even > > attempt this nonsense. > > I started working in this direction and got this working for transport UDP. > After > that, I noticed that not msg_apply_changes() caused the issue, but that by > mistake I was indeed calling rtpengine_manage() twice in some re-invite > situations which caused the duplicate SDP. > > > - Add TOPOS to kamailio. That strips the topology from the message, > > and then the faulty UA should never see Route or Record-Route header > > fields so never wreck them. It requires kamailio to keep state in a > > database, though, but it should work well. > > I found TOPOS not being able to cope with spiralling calls in this situation > which is very common: > > * Two customer, Alice and Bob, registered on the same Kamailio Registrar > running TOPOS. > * Kamailio Registrar are not dialog aware and do not route calls. For > this there is a central 'core' kamailio instance running dialog, > gathering CDR and knowing how to route calls. > > So the call flow is: > > Alice => Registrar => Core => Registrar => Bob > > The same call passes the registrar twice. This, as I observe (it's still > possible I > did something wrong), breaks topos and header get replaced the wrong way! > > -- > Mit freundlichen Grüssen > > -Benoît Panizzon- @ HomeOffice und normal erreichbar > -- > I m p r o W a r e A G - Leiter Commerce Kunden > ______________________________________________________ > > Zurlindenstrasse 29 Tel +41 61 826 93 00 > CH-4133 Pratteln Fax +41 61 826 93 01 > Schweiz Web http://www.imp.ch > ______________________________________________________ > __________________________________________________________ > Kamailio - Users Mailing List - Non Commercial Discussions -- sr- > [email protected] To unsubscribe send an email to sr-users- > [email protected] > Important: keep the mailing list in the recipients, do not reply only to the > sender! __________________________________________________________ Kamailio - Users Mailing List - Non Commercial Discussions -- [email protected] To unsubscribe send an email to [email protected] Important: keep the mailing list in the recipients, do not reply only to the sender!
