A previous employer of mine used Jabber, which is an open source system that runs on Linux and has clients written for Windows. You can also use the
Net::Jabber module to interface to it.
TStanley
--------
The only thing necessary for the triumph of evil is for good men to do nothing -- Edmund Burke