[OpenSIPS-Users] MSILO can't send message
Bogdan-Andrei Iancu
bogdan at opensips.org
Thu Oct 21 10:05:24 EST 2021
Hi,
I found the issue and have it fixed in master / 3.2 / 3.1 , see:
https://github.com/OpenSIPS/opensips/commit/9bc117953730a0ea761e3ceaeea9fee7facea2cc
https://github.com/OpenSIPS/opensips/commit/cc20f738b83f5a9c7f24630309ddb5bab889bf56
Thanks for the report !
Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
https://www.opensips-solutions.com
OpenSIPS eBootcamp 2021
https://opensips.org/training/OpenSIPS_eBootcamp_2021/
On 10/20/21 3:27 PM, jacky z wrote:
> Hi Bogdan_Andrei,
>
> You are right. The actual content is not attached. Attached is the log.
>
>
> Hi,
>
> So the actual content of the message is not attached to the MSG?
> Could you send me (maybe off list) the opensips logs (level 4) for
> a m_dump() ?
>
> Best regards,
>
> Bogdan-Andrei Iancu
>
> OpenSIPS Founder and Developer
> https://www.opensips-solutions.com <https://www.opensips-solutions.com>
> OpenSIPS eBootcamp 2021
> https://opensips.org/training/OpenSIPS_eBootcamp_2021/ <https://opensips.org/training/OpenSIPS_eBootcamp_2021/>
>
> On 10/15/21 11:02 AM, jacky z wrote:
>> Hi Bogdan-Andrei,
>>
>> Did you also noticed the msilo module still can't send the dumped
>> message, but send "[Offline message - Thu Jan 1 00:00:00 1970"
>> no matter what the message is? or just the setting I used?
>>
>>
>> :+1:
>>
>> Regards,
>>
>> Bogdan-Andrei Iancu
>>
>> OpenSIPS Founder and Developer
>> https://www.opensips-solutions.com <https://www.opensips-solutions.com>
>> OpenSIPS eBootcamp 2021
>> https://opensips.org/training/OpenSIPS_eBootcamp_2021/ <https://opensips.org/training/OpenSIPS_eBootcamp_2021/>
>>
>> On 10/14/21 5:03 AM, jacky z wrote:
>>> Hi Bogdan-Andrei,
>>>
>>> Finally made it send offline message by setting
>>>
>>> modparam("msilo", "outbound_proxy",
>>> "sip:name.domain.com:5061;transport=tls")
>>> modparam("tls_mgm", "match_sip_domain", "[dom]*")
>>>
>>> It seems the port number needs to be included and the
>>> match_sip_domain needs to *. If the domain name is included,
>>> the error happens. Hope this info is helpful for others who
>>> may be interested.
>>>
>>> However, it still can't send the dumped message, but send
>>> "[Offline message - Thu Jan 1 08:00:00 1970" no matter what
>>> the message is. It seems the message was truncated. Based on
>>> the source code of the msilo module, the message should be
>>> something like "[Offline message - Thu Jan 1 08:00:00
>>> 1970] message here".
>>>
>>> In the log, I can see the correct message was read out from
>>> the silo table. Here is the log that shows the correct
>>> offline message that should be sent:
>>>
>>> DBG:db_mysql:db_mysql_str2val: converting BLOB
>>> [{"type":"1","cont":"the right message"}]
>>>
>>> Thanks!
>>>
>>>
>>> Hi Jacky,
>>>
>>> The m_dump() sends the MESSAGE to the AOR of the user,
>>> so, ideally, you should do take care of the
>>> "lookup(location)" in order to the get it properly routed.
>>>
>>> For the TLS part, do you use it between the end-point
>>> and opensips? if so, I guess the MESSAGE sent by
>>> m_dump() and looping back to opensips (for doing the
>>> lookup(location)) is via UDP ?
>>>
>>> I'm asking as from the TLS perspective the most
>>> important think to know is where (in the routing logic)
>>> the TLS connection gets used/opened, as you need to be
>>> sure and correlate the destination IP (at the moment)
>>> with the IPs/mask you have in the TLS client domain.
>>>
>>> Best regards,
>>>
>>> Bogdan-Andrei Iancu
>>>
>>> OpenSIPS Founder and Developer
>>> https://www.opensips-solutions.com <https://www.opensips-solutions.com>
>>> OpenSIPS eBootcamp 2021
>>> https://opensips.org/training/OpenSIPS_eBootcamp_2021/ <https://opensips.org/training/OpenSIPS_eBootcamp_2021/>
>>>
>>> On 9/28/21 3:03 AM, jacky z wrote:
>>>> Hi Team,
>>>>
>>>> I want to use MSILO to forward offline messages. I use
>>>> TLS connections and have set up both server domain and
>>>> client domains. If we don't use outbound_proxy, the
>>>> logs show no error, but the message just was not sent.
>>>> I searched online and it was said that the outbound
>>>> proxy needs to be used. However, if we use
>>>> outbound_proxy, there will be errors- no TLS client
>>>> domain found. Actually, I have set up the client
>>>> domain. It seems the MSILO module can't recognize the
>>>> client domain. I have checked the messages were all in
>>>> the database table silo. Have you ever encountered such
>>>> issues? Any clue to debug? Thanks!
>>>>
>>>> Here are the scripts and logs
>>>>
>>>> When m_dump() is called in "REGISTER":
>>>>
>>>> |if (m_dump()) { xlog("MSILO: offline messages dumped -
>>>> if they were"); }else{ xlog("MSILO: no offline messages
>>>> dumped"); }; |
>>>>
>>>> It can dump the message from the database but can't
>>>> send the message. Here is the log:
>>>>
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:parse_msg: method:
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:parse_msg: uri:
>>>> sip:10000 at xxx.com:5061;transport=tls
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:parse_msg: version: <SIP/2.0>
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:parse_headers: flags=ffffffffffffffff
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:parse_via_param: found param type 232, =
>>>> <z9hG4bKe0c6.787dad54.0>; state=16
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:parse_via: end of header reached, state=5
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:parse_headers: via found, flags=ffffffffffffffff
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:parse_headers: this is the first via
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:parse_to_param: transport=tls
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:_parse_to: end of header reached, state=29
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:_parse_to: display={}, ruri={sip:10000 at xxx.com
>>>> <mailto:10000 at xxx.com>:5061}
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:get_hdr_field: [50]; uri=[sip:10000 at xxx.com
>>>> <mailto:10000 at xxx.com>:5061]
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:get_hdr_field: to body [sip:10000 at xxx.com
>>>> <mailto:10000 at xxx.com>:5061]
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:get_hdr_field: cseq : <10>
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:get_hdr_field: content_length=78
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:get_hdr_field: found end of header
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:parse_headers: flags=ffffffffffffffff
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:parse_headers: flags=78
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:proto_tls:proto_tls_send: no open tcp connection
>>>> found, opening new one
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:probe_max_sock_buff: getsockopt: snd is
>>>> initially 16384
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:probe_max_sock_buff: using snd buffer of 416 kb
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:init_sock_keepalive: TCP keepalive enabled on
>>>> socket 119
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:print_ip: tcpconn_new: new tcp connection to:
>>>> 142.107.16.203 <http://142.107.16.203:5061/>
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:tcpconn_new: on port 5061, proto 3
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:proto_tls:tls_conn_init: Creating a whole new ssl
>>>> connection
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> ERROR:proto_tls:tls_conn_init: no TLS client domain found
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> ERROR:core:tcp_conn_new: failed to do proto 3 specific
>>>> init for conn 0x7f0559e116b8
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> DBG:core:tcpconn_destroy: destroying connection
>>>> 0x7f0559e116b8, flags 0018
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> ERROR:proto_tls:tls_sync_connect: tcp_conn_create
>>>> failed, closing the socket
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> ERROR:proto_tls:proto_tls_send: connect failed
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> ERROR™️msg_send: send() to 142.107.16.203:5061
>>>> <http://142.107.16.203:5061/> for proto tls/3 failed
>>>> Sep 18 17:29:55 sipserver /usr/sbin/opensips[9794]:
>>>> ERROR™️t_uac: attempt to send to 'sip:10000 at xxx.com
>>>> <mailto:10000 at xxx.com>:5061;transport=tls' failed
>>>>
>>>>
>>>> _______________________________________________
>>>> Users mailing list
>>>> Users at lists.opensips.org <mailto:Users at lists.opensips.org>
>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users <http://lists.opensips.org/cgi-bin/mailman/listinfo/users>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20211021/e6b6f0c4/attachment-0001.html>
More information about the Users
mailing list