Thanks Daniel.
Hello,there is no such spec in SIP -- when a message is gatewayed, 202 is sent to tell that it was received by intermediary point, but delivery to final destination is not guaranteed.
On 3/15/12 2:58 PM, Krishna Kurapati wrote:
Hi,
I am using msilo module to store offline message. I am sending back "202 pending" when the message is stored (m_store)
However, when I message delivered (m_dump), how do I inform the sender that the message is successfully
delivered?
These are the options I thought of - extend msilo module or do it in config with sqlops, rtimer, uac .... You may have to store the cseq number, just in case the sender UA keeps the same callid for messages sent in a raw, although it should not.
Also, how do I handle if the sender if offline when I try to inform about the delivery of the message.
I think I need
offline notify store to handle this condition. Instead of removing the message from the silo table upon receipt of 200 OK
from the receiver, I am thinking keep the message there until the NOTIFY is successfully delivered to the sender. In effect,
the silo table in the database function as offline message and notify store.
I reviewed module_k/msilo source code, and the functionality that I need seems missing. I am thinking of two
approaches.
1) Extend the msilo module to implement the feature, if more people need it, then I can submit the changes.
2) Write sqlops + lua script to address the missing function.
In either case, I am thinking of storing the callid of the original message (possibly in silo table?) in the database
and sending the NOTIFY with the callid to the sender.
I would like to extend the silo table with two columns:
1. the callid of the message
2. flags to indicate status of the delivery of the message.
Appreciate your comments, suggestions and alternatives.
If you send a patch to msilo, it will be reviewed and applied.
Cheers,
Daniel
--
Daniel-Constantin Mierla
Kamailio Advanced Training, April 23-26, 2012, Berlin, Germany
http://www.asipto.com/index.php/kamailio-advanced-training/