|laziness, impatience, and hubris|
Taking over Net::YMSGby Kirsle (Pilgrim)
|on Sep 04, 2009 at 18:45 UTC||Need Help??|
Update: I'm not able to get as much free time as I'd like to polish up my module some more (it has yet to support chat rooms still, and the buddy list support is a lil buggy), but you can check out the current code I have:
svn checkout http://svn.kirsle.net/repos/perl-ymsg/trunk
Support for the Yahoo Messenger protocol from Perl has been lacking these past few years (read: non-existent). The YMSG protocol used by the current Net::YMSG and its clone Net::YahooMessenger had been rendered obsolete way back in 2003 when Yahoo decided they'd cut off third-party clients from their network, and the modules haven't been updated since then.
For the past few weeks I've been putting together some new code that does connect to Yahoo Messenger and it speaks the YMSG16 protocol -- which is the current version, used by the official Messenger client as is available from their site at this time.
My module is still in its early stages of life, but it signs on, sends and receives messages, and can manipulate its buddy list. Besides chat room support, the module currently has most of the functionality that the old Net::YMSG did.
The current owner of the Net::YMSG namespace is not reachable; the e-mail address bounces. So, I'm requesting control of the Net::YMSG namespace. Here are things to consider though:
My module has a different interface. I think my interface is more straightforward and easy to use than the existing Net::YMSG. Since Net::YMSG has been obsolete for nearly 7 full years, there really shouldn't be any existing code out in the wild that uses Net::YMSG; if there is, it's been out of service for 7 years. So, a change in the interface shouldn't be too much of a shock at this point.
There are already two different namespaces that deal with Yahoo Messenger on CPAN: Net::YMSG, and Net::YahooMessenger, which appears to be only an updated version of Net::YMSG - its documentation is nearly identical. Perhaps the owner of Net::YahooMessenger also couldn't reach the owner of Net::YMSG and had to create a new namespace for their changes. Both of these modules, however, do not work now. I'd like to avoid having to introduce yet another Yahoo Messenger namespace to CPAN.
Here is a test script that uses my new module (which is tentatively named Net::YMSG), so you can see how the new interface compares to the existing: