Hello,
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?
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.
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.
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.
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/