Jim McGarry, Exam Proctoring center, sent me this question:

I want to send an IM (AIM) based on user input on a webpage to one of about 6 recipients whose ids I know.  User wouldn’t compose IM – it would be something like ‘ “netid” is here for a meeting’ where netid is a field he enters.

This got complicated fast. AIM uses a proprietary protocol. Any APIs or code modules have been reverse engineered by traffic snooping. Nothing goggled up from php land except for one Russian library I didn’t want to trust

I did find a perl module, Net::OSCAR . But to run on cgi.uvm.edu (which historically is where perl, C, python, or other non-php scripts live), it needed XML::Parser . So I asked SAA if they could install XML::Parser on cgi.uvm.edu, and they told me that they hope to retire cgi.uvm.edu sometime this fall, would we like to test something new. I said, “Sure.”

So here’s the deal. epc and waw now have our own virtual web servers


Put php and perl scripts there, in www-root. Access and error message logs found in www-logs. You will need to install Net::OSCAR and any other necessary perl modules following these set-up instructions


followed by

cpanm Net:OSCAR

add these lines to perl scripts to tell script where to find locally installed perl modules

use lib ‘/users/e/p/epc/perl5/lib/perl5’;
use lib ‘/users/e/p/epc/perl5/lib/perl5/x86_64-linux-thread-multi’;

I wrote the perl script using sample provided by Net::OSCAR, sent it to Jim with instructions

change these two lines

my $screenname = “screenname”;
my $password = “password”;

to send “holy moley batman” to screen name “maddodskideath” …


About Wesley Wright

Born on a mountain top near New York City, Craziest state in the land of the pretty. Raised in the woods so's he knew every tree, Killed him a bear when he was only three.
This entry was posted in Wes and tagged . Bookmark the permalink.