Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
A nodejs Jabber Debug Bot
JavaScript
Branch: master
Pull request Compare This branch is 7 commits ahead of plymouthstate:master.
Failed to load latest commit information.
.gitignore first commit
LICENSE Adding license
README.md Add information about running "forever"
bot.js Fixing spacing
config-example.js config tweaks

README.md

Jabber Bot

Requirements

node (of course)

On a mac, install with brew!

brew install node

npm (of course)

Run:

curl https://npmjs.org/install.sh | sh

icu4c

On a mac, install with brew!

brew install icu4c
brew link icu4c

npm: simple-xmpp

Install via:

npm install -g simple-xmpp

Configuring

Once you've installed all the requirments, you will need to configure your bot.

cp config-example.js config.js
vi config.js
Setting Wat?
process.env.bot_send_to The jabber account your bot will send messages to. (i.e. your gtalk account)
process.env.bot_listen_port The port your bot will listen on.
process.env.bot_jid The jabber account your bot will log in as in order to send debug messages.
process.env.bot_password The password for your bot's jabber account.
process.env.bot_host The jabber host. Default: talk.google.com
process.env.bot_port The jabber host port. Default: 5222

Note: you'll need to create a jabber account somewhere so this will all work. If you don't have your own domain name, using Gmail is always an option. Once you've created your bot's account, you'll need to log in as your bot via a chat client and invite your primary account as a friend.

Obviously, replace SOME.IP.ADD.RESS with the IP address that you expect to receive UDP packets from.

Running the Bot

Run this bad boy like so:

node bot.js

Punching a hole in your firewall (if required)

If you plan on accepting UDP traffic from a host other than your local host, you'll probably need to punch a hole in your firewall.

Check to see what you have in ipfw:

sudo ipfw list

Choose a sequence number for your firewall rule (this example uses the number 10):

sudo ipfw add 10 allow udp from SOME.IP.ADD.RESS to any 8888

Running as a process

If you, like me, want to have this bad boy running any time you need it, you can set it up as a process using forever, a handy npm. To get it, run:

sudo npm install -g forever

Then, to forever run the bot, simply:

cd /path/to/jabberbot
forever bot.js
Something went wrong with that request. Please try again.