Messages sent to offline users is published in PubSub node, from where that message is sent to all the node subscribers as a PubSub notification.
<message from='pubsub.coffeebean.local' to='bard@shakespeare.lit' id='foo'> <event xmlns='http://jabber.org/protocol/pubsub#event'> <items node='message_sink'> <item id='ae890ac52d0df67ed7cfdf51b644e901'> <message type="chat" xmlns="jabber:client" id="x2ps6u0004" to="userB_h6x1bt0002@coffeebean.local" from="userA_uyhx8p0001@coffeebean.local/1149352695-tigase-20"> <body>Hello</body> </message> </item> </items> </event> </message>