One of the trickiest parts of configuring OCS voice is getting all your address book normalization rules functioning properly and I noticed something recently that really threw me off so I set off on a little investigation. To set the stage, I removed all normalization rules from my Mediation Server and deleted the Company_Phone_Number_Normalization_Rules.txt file. Theoretically that leaves me with just the built in rule processing.
I have 2 users, Jim Morrison and Roger Daltrey, both enabled for Enterprise Voice capabilities. Jim's Line URI is tel:+15035461201 and Roger's is tel:+15035461101. In Active Directory I filled in the telephone numbers for Jim and Roger as the same values, sans the tel: prefix. Just so we're clear, Jim's number was +15035461201.
I fired up 2 Communicator clients, one signed in as Jim and the other as Roger. From Roger's point of view I saw this:
Not very nicely formatted, right? Jim sees the same thing for Roger's number. The key point here is the number is displayed exactly as it is formatted in AD. The thing that threw me off was that I knew I had seen Communicator format those numbers in a much nicer way. Something more like +1 (503) 546-1201, which is much easier to read. So I started fiddling and went into Jim's phone options within Communicator and added a mobile number. I used the same format I did in AD, +12345678900. I added Roger to my Team Access Level so he could see the mobile number and took another look:
Interesting. That mobile number sure looks better than the work one, right? Why didn't Communicator display that number the same way for both numbers? I opened up Jim's phone options again and took a closer look. Jeff Schertz has a nice post mentioning how access levels (don't) get applied when you enter a number in AD, but the key point applicable here is that a number entered in AD is automatically visible to anyone within the organization. So Jim's number was entered in that box and I was unable to edit it as a user, but what I noticed was the work number was unpublished.
So I checked that box and then flipped over to Roger's Communicator. Well, well, well. All the numbers look right and are nicely formatted now.
So what I discovered is that the a visible and published number are treated differently. OCS will format a published number, but not a number that is simply visible because of AD. Strange, but good to know. I think this is due to where Communicator is pulling the information from. If a number is coming from AD and is unpublished, the number is being read by MOC from the GalContacts.db file. If a number is published to OCS, MOC is reading the number from the server and OCS database. So priority-wise MOC prefers a published number over one read from the address book.