|Think about Loose Coupling|
Net::IM - Instant Messaging for Perlby Kirsle (Pilgrim)
|on Jul 12, 2011 at 20:34 UTC||Need Help??|
I'm working on a new project called Net::IM, which has the aim of being for Perl what libpurple is for C/C++ - a set of modules for interacting with various instant messaging networks.
The first network I'm developing a module for is Yahoo Messenger, because Net::YMSG has been broken for 7 years, and there is already code out there for AIM and MSN and various other networks.
The code is still in development, and it has a Google Code project at http://code.google.com/p/perl-net-im/.
Currently, YMSG support is working well enough to run a chatterbot on it if you wanted. It supports:
How It's Used
Your code can use Net::IM itself, which will allow you to manage multiple connections to multiple networks with just the one Net::IM object. This would be most similar to libpurple/Pidgin. Or, you can use the network modules directly, like Net::IM::YMSG.
The method names and event names are to be kept consistent among all the supported networks. So, setting handlers in Net::IM will cause those handlers to be called by every network that has a handler for that event.
Check it out if you have any interest. I plan on implementing thorough support for as many networks as possible (including file transfers and tricky things like that).