What's up!

Simple client/server system of message boxes. Useful for automatic notifications using the console client or also handy for posting between friends. Under the hood there is a simple but fairly complete RPC Python library used for all the communication.

The content of the messages is sent cyphered by the XTEA algorithm. The server dumps periodically the messages boxes to disk for persistent storage. On server reloading, this content is restored.

RPC Link / Objects Link

There are two levels in the communication. The low level is used to send objects between peers with automatic serialization. The high level allows to publish and unpublish objects from the objects server, this way any client can make a remote procedure call for one of these published objects. Also the raised exceptions are propagated back to the clients in a transparent manner.

It has two limitations:

Take a look at directory test/, it has some examples of how to use all the RPC layer.

INSTALL

Run one of these:

    python setup.py install
    python setup.py install --prefix=/usr/local

For Ubuntu an additional parameter is needed:

    python setup.py install --prefix=/usr/local --install-layout=deb

To create the tarball from the repository, run:

    python setup.py sdist

RUN SERVER

Use the run-whatsup-server.sh script as root. The server will drop privileges as soon as possible. The log and cache files are created in /tmp. By default the TCP 21 port is used, also the script will restart the server if it dies. The messages are periodically copied to disk to preserve them between restarts. This companion script launch the daemon with nohup on a loop in order to restart automatically the daemon in case of crash happens.

USAGE

See:

    whtsp.py -h
    whatsup-server.py -h

If no message is specified, a what's up! is sent. For anything else, pray and wait, although it never works.

Version 1.1, tested with Python 2.5 and 2.6.

LICENSE

WTFPLv2 (DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE version 2). See COPYING.

CONTACT

Feel free to drop me an email for anything related to this program.

    Ricardo Catalinas Jiménez <jimenezrick@gmail.com>

ALSO

100% bug free (find as many as you want, it won't cost anything).

Last modified date: Sun Aug 8 17:19:30 CEST 2010