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

Ben Kaufman bkaufman at bcmone.com
Fri Jun 10 20:22:40 CEST 2022


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

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20220610/9e6e5377/attachment.htm>


More information about the sr-users mailing list