Injecting Contacts to the OCS Address Book

I had a client ask recently if there was a way to insert federated contacts into their own internal address book. This would work out well for organizations where there would maybe be a few high-profile users who are frequently added between different companies. I went about trying this today and the answer is that it kind of works.

For sake of this example let's say I'm user A in Company A with an OCS SIP domain of domainA.com and a partner I'm federated with is User B in Company B with an OCS SIP domain of domainB.com. Since the OCS Address Book Service will pick up any user or contact in Active Directory that has the msRTCSIP-PrimaryUserAddress attribute set I went about the following:

  1. Created a contact object for a User B in Company B as you would normally have for a user outside your organization.
  2. Used ADSIEdit and manually populated the attribute with the user@domainB.com value that I knew was reachable and federated through OCS already.
  3. Forced an Address Book Sync.
  4. Removed User B from my Outlook contacts so Communicator wouldn't pick it up.
  5. Deleted the GALContacts.db file.
  6. Restarted Communicator.

I can search the Search field in Communicator and I get the by-letter matching for User B as I would expect for anyone else in my organization. The only downside is I don't receive any presence or information for the user until I actually add them to my contact list. On the other hand, this is the exact same behavior seen when typing any federated contact's name into the Search field. Mission sort of accomplished?