
			   DJabberd::Delivery::OfflineStorage::InMemory,
			   DJabberd::Delivery::OfflineStorage::SQLite - 
           Old style offline storage of Messages


    Copyright (c) 2007 Piers Harding.
    All rights reserved.
    This program is free software; you can redistribute it and/or modify
    it under the terms of either:

	a) the GNU General Public License as published by the Free
	Software Foundation; either version 1, or (at your option) any
	later version, or

	b) the "Artistic License".


Whats it for?
============

DJabberd::Delivery::OfflineStorage::(InMemory|SQLite) - is a simple Offline Storage
mechanism for DJabberd.  This handles offline storage of messages in the old style
prior to XEP-0013 and XEP-0160. 

If a user is offline, configured packets (should really only be Message type but
you could add IQ - really think about that though), then this plugin picks up
the packets at the end of the delivery chain and stores them.  When the user next
annouces their presence, offline storage is checked, and any stored messages are 
flooded through.


Installation
============

In brief, the following should work on most systems:
  perl Makefile.PL
	make
	make test 
	make install


Configuraton
============

So you want offline storage - well add this to djabberd.conf:

    <VHost mydomain.com>

        [...]
        <Plugin DJabberd::Delivery::OfflineStorage::InMemoryOnly>
             Types Message
         </Plugin>
    </VHost>

 For InMemoryOnly based storage, and:

    <VHost mydomain.com>

        [...]
        <Plugin DJabberd::Delivery::OfflineStorage::SQLite>
           Database offline.sqlite
           Types Message
        </Plugin>
    </VHost>
 For SQLite based storage.

Parameter Database specifies the sqlite database file to use, and Types is a list of Stanza
types that will be collected.  This should really only be Message - think really hard before
you ad IQ to the list.

Also - it is extremely IMPORTANT as Edward Rudd pointed out - this Plugin MUST be the last
in the delivery chain, as it assumes that if S2S and Local haven't dealt with it, then the
JID in question is offline.


Cheers - Piers Harding - R/2 R/3 BASIS, IFACE, JAPH, whatever ...

email: piers@cpan.org


