Tuesday, April 10, 2012

Lync address book can show different values

** Updated below **

If you, like me, have changed the default values of the address book with the resource kit ABSconfig. You might want to read this post, and check out your own deployment.

I know the resource tools are what they are, and not fully supported when things turn out wrong, but I know plenty who have used this tool to manipulate the content of the address book. And as I showed in a previous post, I used it to manipulate how the Lync clients connect to exchange (Read the post here).

This has been working like a charm for long time, and still does, for internal clients. But somwhere down the road, it seems there has been released a patch that changes the behavior of the web services for address book searches

I'll explain in brief. in my environment, I have made the address book populate the email address from a different field than the default. I have selected the "info" property of the AD user, an not "mail" as the default. When the address book is generated, and downloaded by a client, it looks just fine, with the intended result.


The internal clients all see their correct e-mail address, and the outlook client integration works like a charm.

However, when I searched the same username from a federated account, this is what I got in response.


As you can see, the web search module seems to be reading from the default/original property and not the property I set with ABSconfig.. And it really looks bad.

I have not tested every single property change, but if one property behaves like this, chances are other properties might behave in the same way.

If I find a solution to this, I will make sue to update this post. (And before you ask, this was tested with the newest available version: 7577.172)

** Update 1 march 13th **
Someone was kind enough to remind me the current CU is CU5, not CU4.
I have now updated affected system to CU5, and it did not help.

** Update 2 march 13th ** 
I wanted to give Thomas's comment some though, and ran the abserver -dumpfile command. Sadly, this only proved my suspicion. The web search must be getting it's populated values from somewhere else. This is the information in the lsabs file:


The info property is listed as it should, with the proper value. The bogus email address that was written in the "mail" property of this user is no where to be found. Still, the bogus email address is the one shown to federated users, or internal user that have not downloaded their local db file yet.

** Update 3 April 10th **
I recently discovered the error might not be on the web search module, but might have something to do with the Edge server component.
I can see the wrong e-mail address beeing populated through a "INFO  :: SIP/2.0 200 OK" message:

 ------------------------------------------------------------------------------------
Content-Transfer-Encoding: binary
Content-Type: application/msrtc-event-categories+xml

Test
Test@company.com.fake
 ------------------------------------------------------------------------------------