Looking for reasonable corporate IM solution

I have been a religious user of instant messenger applications for years, and it's been a wonderful customer-support tool as well as a way to chat with customers. Many customers have Yahoo! IM, AOL, or MSN accounts, and we're able to take care of business.

I'd like to outfit all of one customer's staff workstations with IM, mainly to allow "We need to reboot the system" broadcasts as well as Remote Assistance desktop support.

One solution is to just get everybody a Hotmail account, but I don't care for this much: it's hard to manage external accounts, requires the internet, and probably isn't secure enough. So I'm looking for a corporate IM solution.

Microsoft sells the Live Communications Server which looks very full featured, but it's at a crack-induced price of something like $100/user. There is no way I can justify $2500 for IM services internally - I'd use NET SEND first.

So I'm looking for a corporate IM solution for my customer: commercial software is OK, but it can't be this kind of don't-take-us-seriously pricing offered by Microsoft. Some requirements:

  • Easy desktop installation with .msi: this lets non-admin users install it on a desktop with Group Policy. I guess I could live with a .EXE installer, but I'm not excited about it.
  • Authentication on the DC - I want to avoid having to maintain separate user accounts to mirror the Windows user base.
  • Compatible with roaming profiles: I want a user to login at any desktop and get his/her same configuration. I guess that storing the config on the server could accomplish this.
  • "Remote Assistance" support: as far as I know, the only way for me to jump on a user's desktop remotely is if they send a Remote Assistance invitation via MSN messenger, but I gotta believe (hope?) that there are hooks for others.
  • Secure, remote access for external users without VPN access.
  • Multi-server client integration would be nice: if I'm at home, and three unrelated customers all have this, I can (somehow) connect to each without running three clients.
  • Not browser based: standalone application only.
  • No Java - sorry, just not up for that.
  • I don't care about Trillian support, but others might
  • Conference/Chat support
  • Broadcast-message support
  • Some kind of API for integration might be fun: then I can run some kind of bot which might let users check the status of critical servers (the payroll server is either up or down, etc.). Not required.
  • We're running SBS2003: would prefer not to dedicate a separate machine for this.
  • XP/2000 desktop support only: no Mac/Linux required.
  • We don't need/care about voice or webcam support.

I've never spec'd this before, and have only thought about the details for an hour: I invite not only suggestions for products, but bullet points that I might have missed.

Anyone?