Remote control with a Jabber Bot



To get past a firewall and into a LAN,you need either a secret backdoor or a cooperative agent on the inside. A Jabber client on the LAN contacts a public Jabber server and wait for instructions trickling in as instant messages from its Internet buddies.

Of course, one way to perform tasks on a local network from the Internet is to poke a hole through your firewall and connect to a local web server. Services like dyndns. org allow quasi-static access to the dynamic IP addresses that Internet providers assign. An agent or “bot” (probably short for “Robot”) makes life simpler: a messaging client on the inside of the firewall can attach to the public Jabber messaging network and accept commands in the form of text messages. The client I will describe in this article will only accept commands from clients on its buddy list, and it only supports four actions: load checking for the bot computer, querying the public router address (command: ip), and switching the lights on and off at my apartment in San Francisco (lamp on|off).