One of my pieces of OCS testing involved putting it through the paces of various IM clients other than Office Communicator and seeing what works and what doesn't work so well. Even though I've read several pieces stating that Mac Messenger 6.0.3 was supposed to work with OCS, I cannot find a way to do so. This was all strictly for internal testing, but I imagine at this point the external results would have been the same. The first step was importing the root CA certificate into my X509 anchors keychain. After importing the certificate I could see it listed so I knew Messenger should be able to connect at this point.
Scenario #1 - Enhanced Presence: My first attempt was with a user that already had signed into an OC 2007 client, so enhanced presence has been enabled for this user. Messenger throws back and error to me "Sign in to Microsoft Messenger failed because the service is not available or you may not be connected to the Internet". I know both parts are untrue - I'm on the LAN with no issues and the service is certainly available because other users are signed in at the same time with Office Communicator clients.
Scenario #2 - Fresh User: I had a hunch that enhanced presence might be causing the problems so I created a fresh user account and enabled it for OCS. I purposely did not sign-in to an Office Communicator 2007 client so enhanced presence would not be turned on. After trying to sign-in with the new user I received a different error: "Sign in failed because the password is incorrect or the sign-in name does not exist." Again, I know both of these are untrue (Can someone give the MacBU some lessons on writing error messages please?). The password is correct and the sign-in name does exist.
I figured I'd take a look at what was happening on the server side of things so I started up the OCS diagnostic logger, checked the SIPStack option and started logging. For scenario #1, I saw what I expected: a normal NTLM handshake attempt, but instead of succeeding the final message is "421 Extension required" error:
Start-Line: SIP/2.0 421 Extension required
ms-diagnostics: 2013;reason="msrtc-event-categories extension required";source="tap-ocs-2k7.ptown.com"
ms-diagnostics-public: 2013;reason="msrtc-event-categories extension required"
Ok, fair enough. The Mac Messenger client probably can't handle enhanced presence just like the Office Communicator 2005 client can't. The extension the server is asking for is probably enhanced presence related. So on to scenario #2 with a new user account. This is where is gets confusing - I receive a "404 Not Found" SIP error this time:
Start-Line: SIP/2.0 404 Not Found
ms-diagnostics: 4005;reason="Destination URI either not enabled for SIP or does not exist";source="tap-ocs-2k7.ptown.com"
Well, at least this error message is somewhat consistent with the error the user receives from Messenger. I know the URI exists and is enabled, so this error is bizarre. Just for kicks I opened an Office Communicator 2005 client and tried to sign in. Guess what? It worked fine. Maybe I needed to sign in to OC one time to make this work? Nope. I still can't sign in to the Mac client.
So my conclusion from all of this is that having enhanced presence enabled probably prevents a user from ever signing into a Mac Messenger client, or at least until Microsoft's MacBU releases the next version of Messenger. A user without enhanced presence should probably be able to sign in successfully, but I'm not sure why it doesn't work. Has anyone out there gotten the Mac Messenger client to work with OCS 2007 yet?
I got it working! To be able to use Mac Messenger 6.0.3 you must first create the user on the OCS pool and then enable their account for Enhanced Presence. At that point they should be able to sign-in successfully. You can read my post about the different stages of Enhanced Presence for some more information.