Mode 2 works fine if there is no user part in the Contact URI.
Thanks again for your help!

modparam("topos", "contact_mode", 2)
modparam("topos", "xavu_cfg", "tps")
modparam("topos", "xavu_field_a_contact", "a_contact")
modparam("topos", "xavu_field_b_contact", "b_contact")
modparam("topos", "xavu_field_contact_host", "contact_host")

request_route {
....
  $xavu(tps=>a_contact) = "a_contact";
  $xavu(tps=>b_contact) = "b_contact";
....
}

вт, 28 нояб. 2023 г. в 15:42, Denys Pozniak <denys.pozniak@gmail.com>:
Thanks!

Yes exactly, I set the parameter contact_mode to 1 not to mask Contact.
Сan I somehow bypass the restrictions of mode 1 through mode 2?


вт, 28 нояб. 2023 г. в 13:25, Daniel-Constantin Mierla via sr-users <sr-users@lists.kamailio.org>:

I guess you face such case because of the contact mode parameter:

  - https://www.kamailio.org/docs/modules/stable/modules/topos.html#topos.p.contact_mode

Likely you set that modparam to 1, which needs to take user part from r-uri and contact. I haven't implemented that functionality, but apparently is for cases when UAs require user part to match corresponding user ids.

The default mode is 0, which should not care about lack of user parts in contact header.

Cheers,
Daniel

On 28.11.23 12:22, Denys Pozniak via sr-users wrote:
Thanks!
Yes, I experimented a little with the sipp and determined that the topos "requires" a user part of Contact URI.
If this is so, then it would probably be necessary to indicate this somewhere in the module description.

вт, 28 нояб. 2023 г. в 11:42, Yuriy G <ovoshlook@gmail.com>:
Hi Denis. I think this is topos specific. 
When topos does topology striping it also affects contact field, so it adds some data/id username. So if you wish topos to be involved - the same form of the URI should be used. There is also API from topos module to handle contact on your own if needed.

On Tue, Nov 28, 2023, 11:25 Denys Pozniak via sr-users <sr-users@lists.kamailio.org> wrote:
Hello!

My topology is like this:
PBX -> Kamailio Topos -> User

When calling the user, PBX does not add the user part in the Contact URI, something like:
Contact: <sip:10.10.10.10:5080;transport=udp>

When the customer sends a reinvite, the topos turns off for this transaction and the sip partially breaks down with error:

topos [tps_storage.c:319]: tps_storage_fill_contact(): no r-uri user
topos [tps_storage.c:615]: tps_storage_record(): failed to store

As far as I understand, the RFC allows the absence of the user part in the URI and this occurs quite often.
I can provide the pcap file and debug log in a private message if this helps identify the essence of the problem.

# kamailio -v
version: kamailio 5.7.1 (x86_64/linux) 1cf389-dirty

--

BR,
Denys Pozniak


__________________________________________________________
Kamailio - Users Mailing List - Non Commercial Discussions
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!
Edit mailing list options or unsubscribe:


--

BR,
Denys Pozniak



__________________________________________________________
Kamailio - Users Mailing List - Non Commercial Discussions
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!
Edit mailing list options or unsubscribe:
-- 
Daniel-Constantin Mierla (@ asipto.com)
twitter.com/miconda -- linkedin.com/in/miconda
Kamailio Consultancy and Development Services
Kamailio Advanced Training -- asipto.com
__________________________________________________________
Kamailio - Users Mailing List - Non Commercial Discussions
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!
Edit mailing list options or unsubscribe:


--

BR,
Denys Pozniak




--

BR,
Denys Pozniak