Create an Amazon AIM Bot

Chat with some Perl code to get book prices via AOL Instant Messenger.

AOL Instant Messenger isn’t the most likely place you’ll need Amazon book data, but that doesn’t mean the applications aren’t fun to connect. With Perl and the Net::AIM module, you can have your own chattering book-bot requesting Amazon information for you.

What You Need

First you’ll need the Net::AIM library, which provides all the functions for logging into AIM and sending or receiving messages. You can find it at activestate.com (http://aspn.activestate.com/ASPN/CodeDoc/Net-AIM/AIM.html). To get a jumpstart on coding, check out the tutorials at Wired Bots (http://www.wiredbots.com/tutorial.html). They have some fully functional sample bots and lots of example code for working with Net::AIM.

You’ll also need an AIM screen name and password for your new virtual assistant, along with a screen name for yourself if you don’t have one; sign up at http://www.aim.com.

The Code

Create a file called asin_bot.pl and include the following code. The code that communicates with Amazon is based on a previous hack ([Hack #80]), though the AWS request is made inside the on_im subroutine, when a message comes in. Instead of printing out to the console, it saves the results in a variable, $detail, and sends it as an instant message back to the person sending the message.

#!/usr/bin/perl # asin_bot.pl # # An AIM bot that given an ASIN will # return the product title and price. # Usage: perl asin_bot.pl use ...

Get Amazon Hacks now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.