Remote control with a Jabber Bot


Article from Issue 50/2005

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).

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Perl: A Gaim Plugin

    The Gaim project offers an instant messenger client that speaks a large number of protocols. We’ll show you how to extend Gaim with Perl plugins.

  • Perl: Lyrical Logfiles

    Instead of just monitoring incoming requests in your web server's logfile, a sound server makes them audible and lets you listen to the tune of users surfing the site.

  • Perl: Yahoo API Scripting

    Following in the footsteps of Google, Amazon, and eBay, Yahoo recently introduced a web service API to its search engine. In this month’s column, we look at three Perl scripts that can help you correct typos, view other people’s vacation pictures, and track those long lost pals from school.

  • IMAP spam filter

    We’ll show you a custom solution for moving spam to a separate folder and adding new spam signatures to SpamAssassin.

  • Hyperic HQ

    Monitor a Java application server with Hyperic HQ.

comments powered by Disqus

Direct Download

Read full article as PDF:

Perl_Building_a_Jabber_Bot.pdf (333.58 kB)