sendxmpp

sendxmpp is a perl-script to send xmpp (jabber), similar to what mail(1) does for mail.

sendxmpp was written by Dirk-Jan C. Binnema, and is available under the term of the GNU General Public License v2. The hard work is done by Ryan Eatmon's Net::XMPP-modules, and you need to have them installed for sendxmpp to work. Current package maintainer is Lubomir Host <lubomir.host@gmail.com>

Obviously, you also need a jabber account; they are freely available at jabber.org, but you can also run your own server.

sendxmpp is in use on computers around the globe, for example for distributing CVS-commit alerts, sending server warnings and notifying users. If you use sendxmpp in some other creative way, please drop me a mail at <lubomir.host@gmail.com> or IM me at lhost@jabber.org. Thanks!

News

Example

Suppose you have to manage a remote server somewhere, and you have to keep an eye on its cpu load-average. You could write a script to check this, and run it periodically from cron. This script could contain something like:

if test "$cpuload" -gt "$CPULOADMAX"; then
  top -b -n 1 | sendxmpp -s "wake up! cpu load $cpuload at `hostname`" someone@jabber.org  
fi
And on my client machine, my jabber-client wil pop-up a message, depending on your client. There are many different client, for any platform/OS.

This is just a small example; many more interesting things become really easy now. Use it from your .procmailrc. Or your logwatcher scripts. Or... (Mail is *so* 20th century :-)

More information

Try sendxmpp -h.

Download and installation

From Git repository

Git repository of sendxmmp is located on github.com
        cd /tmp
        git clone https://github.com/lhost/sendxmpp.git
        cd sendxmpp/
        perl Makefile.PL;  # perl Makefile.PL PREFIX=/usr
        make
        make install

From the tarball

You can download sendxmpp here: sendxmpp-1.23.tar.gz. Installation is simple (for step 4 you may need root-privs):

  1. unpack the tarball, and enter the new directory
  2. $ perl Makefile.PL
    $ make
    $ make install
    
NOTE1: this will install under /usr/local/. If you want to install somewhere else you could do (step 2): perl Makefile.PL PREFIX=/usr.
NOTE2: for older versions, just change the version number in the URL.

Contact

Previous package maintainer was Dirk-Jan C. Binnema <djcb AT djcbsoftware.nl>.
Since 2006-09-25 package maintainer is Lubomir Host <lubomir.host@gmail.com>.