[OpenSIPS-Users] MSILO module

johan de clercq johan at democon.be
Thu Apr 9 09:57:10 UTC 2026


This is old code, but it can give you an idea on how i fixed it.


Store with  user @domain.

for store  :

m_store("sip:$rU at domain"))

for dump :

route[msilodump]
{
     xlog("callid=$ci: Route[msilosdump]: we did receive a register, we 
check for offline messages ");
     avp_db_query("SELECT count(*) FROM silo where username like 
'%$fU'","$avp(offlinemessages)");
     xlog("callid=$ci: Route[msilodump]: SELECT count(*) FROM silo where 
username like '%$fU' -> avp(offlinemessages) $avp(offlinemessages)");
     if ($avp(offlinemessages)>0)
     {
         avp_db_query("SELECT contact FROM location where username like 
'%$fU'","$avp(contact)");
         xlog("callid=$ci: Route[msilodump]: SELECT contact FROM 
location where username like '%$fU' -> avp(contact) $avp(contact)");
         avp_db_query("update silo location set dst_addr = 
'$avp(contact)' where username like '%$fU'");
         xlog("callid=$ci: Route[msilodump]: update silo location set 
dst_addr = '$avp(contact)' where username like '%$fU'");
         # MSILO - dumping user's offline messages
         if (m_dump())
         {
             xlog("callid=$ci: Route[msilosdump]: offline messages 
dumped - if they were\n");
         }
         else
         {
             xlog("callid=$ci: Route[msilosdump]: no offline messages 
dumped\n");
         };
         exit;
     }
     else
     {
         xlog("callid=$ci: Route[msilodump]: no offline messages for 
$fU, nothing to do");
         exit;
     }
}

On 4/8/26 17:37, Ihor Olkhovskyi wrote:
> Serhii,
>
> I guess, you are looking more on these scenarios:
>
> https://blog.opensips.org/2017/03/10/advanced-sip-scenarios-with-event-based-routing/ 
>
> https://blog.opensips.org/2020/06/03/sip-push-notification-with-opensips-3-1-lts-rfc-8599-supportpart-ii/ 
>
>
> ?
>
>
> Le 08/04/2026 à 14:27, Sergey Pisanko a écrit :
>> Hello Team!
>> I have opensips 3.6.0 and I try to use msilo module to store SIP 
>> messages when the receiver is outside of the server and dump them 
>> when it is registered.
>> But msilo stores into DB an AOR, but not actual contact. As a result, 
>> when "m_dump" is executed, it generates the "wrong" domain part (AOR) 
>> and opensips tries to send it to itself. Is there a way to direct it 
>> to an actual client's contact? Or is this module too obsolete to use 
>> it now?
>>
>> Best Regards!
>> Serhii Pysanko.
>>
>> _______________________________________________
>> Users mailing list
>> Users at lists.opensips.org
>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>
>
>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users



More information about the Users mailing list