[ejabberd] ejabberd and reliable message delivery

Magnus Henoch mange at freemail.hu
Tue Jun 17 16:08:27 MSD 2008


"Teemu Harju" <teemu.harju at gmail.com> writes:

> I'm interested in knowing how can I implement reliable message delivery
> using ejabberd? I did some experiments with ejabberd 2.0.1 and mod_offline
> enabled. I tried sending messages between two clients and disconnected one
> clients ethernet cable. It takes naturally some time from the server to
> notice that the client has disconnected. The messages sent during this
> period did not reach the other client after it became online again. I guess
> mod_offline relies on the presence status of the client and hence the
> messages don't get stored there. I'm just wondering shouldn't the server
> notice that the client has lost the connection when sending a message? Or
> how does it work with TCP? And when the server notices the lost connection,
> could it store the messages to mod_offline database to be delivered when the
> client recovers from the lost connection?

I think XEP-0198 solves exactly this problem, so I once started hacking
support for this for ejabberd (see my message to this list on
2007-12-04, though it was rather short of information).  I haven't kept
it updated with SVN since then, but you can get the code using GNU Arch:

tla register-archive http://www.dtek.chalmers.se/~henoch/archive-2005/
tla get mange at freemail.hu--2005/ejabberd--stanza-ack--0 ejabberd-stanza-ack

-- 
Magnus
JID: legoscia at jabber.cd.chalmers.se



More information about the ejabberd mailing list