[SR-Users] Use of interface name or listening socket name as DMQ server_socket

Alex Balashov abalashov at evaristesys.com
Fri Jun 10 20:34:42 CEST 2022


I don’t think the interface name aliases were intended to be usable in every single scenario where any network socket, used by any module, needs to be specified.

If they were, that would make some far-reaching implementational demands beyond DMQ. 

But I do agree it would be nice if things worked that way!

—
Sent from mobile, with due apologies for brevity and errors.

> On Jun 10, 2022, at 2:23 PM, Ben Kaufman <bkaufman at bcmone.com> wrote:
> 
> 
> Kamailio allows the use of an interface name (eth0 for example), as the identifier for the listen directive.  Additionally it allows assignment of a name to be used as an identifier.  This can be used, as indicated in the documentation:
>  
> A unique name can be set for sockets to simplify the selection of the socket for sending out. For example, the rr and path modules can use the socket name to advertise it in header URI parameter and use it as a shortcut to select the corresponding socket for routing subsequent requests. 
>  
> I’m wondering if there is a way to get allow either of these parameters to be used to define DMQ’s server_socket parameter.  This would be useful in containerization situations where the local IP address is assigned dynamically.  Here’s what I’m attempting:
>  
>  
> #!KAMAILIO
>  
> loadmodule "tm"
> loadmodule "sl"
> loadmodule "dmq"
> loadmodule "textops"
>  
> listen=udp:eth0:5060 name "sip5060"
> listen=udp:eth0:5090 name "sip5090"
>  
> modparam("dmq", "server_address", "sip:dmq_quicktest:5090")
> modparam("dmq", "notification_address", "sip:dmq-bus:5090")
> modparam("dmq", "server_socket", "sip5090" )
> ## Above line doesn't work, neither does the line below:
> #modparam("dmq", "server_socket", "udp:eth0:5090" )
>  
> modparam("dmq", "multi_notify", 1)
> modparam("dmq", "num_workers", 3)
> modparam("dmq", "ping_interval", 30)
>  
> request_route {
>     exit;
> }
>  
> I get the following error during startup:
>  
> 0(1) ERROR: dmq [dmq.c:241]: mod_init(): server_uri is not a socket the proxy is listening on
>  
> Thoughts?  I realize that I can configure and pass static networking with the containers, but I’m looking for a way to have this set on the fly – especially when testing, etc.
>  
>  
> Ben Kaufman
>  
> __________________________________________________________
> Kamailio - Users Mailing List - Non Commercial Discussions
>  * sr-users at lists.kamailio.org
> Important: keep the mailing list in the recipients, do not reply only to the sender!
> Edit mailing list options or unsubscribe:
>  * https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20220610/3ca8d068/attachment.htm>


More information about the sr-users mailing list