A customer cannot enable or disable the 'Show in address book' option for their Exchange mailbox in POA Control Panel, nothing happens when they change the option and mailbox is sitting in status 'Updating'.
At the same time Provider may see the failed task 'Show in address book mailbox' in Task Manager with the error message 'There is no primary SMTP address' like in the example below:
Task ID: 4817514
Queue name: DomainService00014566
Task name: Show in address book mailbox 'John.Doe' (id=15569)
Task description: Show in address book mailbox 'John.Doe' (id=15569)
Queue status: Failed
Start not earlier than: Apr-14-2010 06:11
Last execution output: Exception during execution of MPF request: 'Unknown error 0x80131600 [<response><errorContext description="There is no primary SMTP address.
Identity='LDAP://CN=John.Doe,OU=My Company,OU=Provider,OU=Hosting,DC=hosting,DC=local'" code="0x80131600" executeSeqNo="3"><errorSource namespace="Exchange 2007 Provider" procedure="ModifyMailbox"/><errorSource namespace="SW Managed Exchange" procedure="ModifyMailbox"/></errorContext></response>]'.
The reason of the problem is that corresponding user in Active Directory has non-matching 'mail' and 'proxyAddresses' attributes.
All mail-enabled objects (mailbox, contact, and distribution group) in Exchange organization must have a 'mail' attribute and a 'proxyAddresses' attribute. The 'proxyAddresses' attribute must contain a primary SMTP proxy with the same alias as the 'mail' attribute. For example, if the' mail' attribute is John.Doe@provider.com, then 'SMTP:John.Doe@provider.com' must reside in the 'proxyAddresses' attribute.
A valid primary SMTP proxy must be in the form "SMTP:<alias>@<domain.com>" (not "smtp:"), where alias is the user's e-mail alias and domain.com is the company's domain name.
Note: A primary SMTP proxy starts with "SMTP:" (all uppercase) and additional SMTP proxies start with "smtp:" (all lowercase).E.g. user in AD may have the following values of attributes:
mail - "John.Doe@provider.com"
proxyAddress - "SMTP:email@example.com"
The attribute proxyAddress should contain value shown in the attribute 'mail', in this case it is 'John.Doe@provider.com'.
Provider has to correct 'mail' and 'proxyAddresses' attributes for problem account in Active Directory:
- Log into AD domain controller
- Run 'cmd' and execute the 'adsiedit.msc' command
- Find problem account and set correct values for the 'mail' and 'proxyAddresses' attributes
In the particular case shown above it is needed to add one more value for the 'proxyAddress' attribute (do no remove the existing one), the value should be the email address from the 'mail' attribute (John.Doe@provider.com).
To find all problem AD objects Provider may use the utility "OABInteg" - http://code.msdn.microsoft.com/oabinteg/Release/ProjectReleases.aspx?ReleaseId=726
- Login to Exchange server
- Download the utility 'oabinteg.exe' from the link above
- Execute command 'oabinteg.exe /s:MAILBOX_SERVER /l /t:proxytest' (where MAILBOX_SERVER is the name of Exchange server)
- Report will be saved in file C:\oabinteg.txt
Objects which are affected by the issue will have entry like the following in the resulted log file oabinteg.txt:
Processing Address Book Entry #14 of 50.
Display Name = John Doe
Object is a contact object
ERROR: Proxy Address and Mail Attribute do not match.
Proxy Address =SMTP:firstname.lastname@example.org, mail attribute = John.Doe@provider.com.
The OABInteg utility may be used on Exchange 2000 or 2003 server.