This article is the second in a series that offers a reference point between AD Attributes and their associated values displayed in Outlook. In this post, we explore the Phone/Notes Tab within Outlook and discuss the associated Outlook LDAP Attributes. On a semi-related note, we have included a comparison between a fairly typical VB and Powershell scripting example that demonstrates how to enumerate mandatory and optional attributes within the user class.
Outlook Address Book General Tab – Ldap Attributes Mapping (Part 1)
Outlook LDAP Attributes: Mappings – “Phone/Notes” Fields
Here’s a mapping for Outlook LDAP Attributes within the Phone/Notes Tab:
|Name in Outlook||LDAP Attribute||Format||Attribute-ID|
How many phone numbers can be listed against each phone type attribute?
The primary phone number fields are only able to store a single value, whilst the otherXXXXX attributes are able to store multiple values. That is, a user may have multiple “otherTelephone” numbers stored as an array but only one primary “telephoneNumber”. In addition to the fields listed above, there are a number of less visible fields, such as otherMobile and so on.
I thought telephoneNumber was already mapped out in the General Tab?
The telephoneNumber attribute is mapped in two places: The Phone number field under the general tab, and under the Phone/Notes tab it is mapped to the Business field within the “Phone numbers” section.
I thought assistant was already mapped in the General Tab?
You’d think so wouldn’t you? No – this is not the case. I guess it may seem intuitive for some, but the assistant field under the Phone/Notes field actually maps to a phone number – the telephoneAssistant attribute. This would be where the Assistant’s phone number would be stored (seems logical, I guess).
How do I retrieve a complete list of all User Attributes?
If you’d like to establish exactly which attributes are exposed through the user class,
$Schm = [DirectoryServices.ActiveDirectory.ActiveDirectorySchema]::GetCurrentSchema(); ($Schm.FindClass("user")).MandatoryProperties|select name,syntax ($Schm.FindClass("user")).OptionalProperties|select name,syntax
Stay tuned for Part three – I promise, we’ll stop talking about Outlook LDAP attributes and properties – more about User Attributes in general.