Last week I had a client report that two users (out of around 300) were experiencing issues when calling into Exchange Unified Messaging. Although the Australian (en-AU) Language pack had been deployed, these users would still hear the US (en-US) language prompts. As the issue was specific to only two users, I had a look at their AD attributes, see if anything was different from other users. One value stood out as irregular:


These users had en-GB configured for the msExchUserCulture attribute. As only the default en-US and en-AU language packs were deployed, Unified Messaging was falling back to defaults when the region was incorrectly configured. One explanation as to why this was the case could be a user signing into Outlook Web App for the first time, and selecting the wrong region (thanks Dan).

Manually updating the value to en-AU resolved the issue without the need to disable/enable Unified Messaging for the user:


Small issue, simple fix, but interesting none the less.

Damien Margaritis

Insync Technology


  1. Pretty cool, and a nice little window for someone who has absolutely no idea really of the technicalities of what his best mate does. From a linguistic perspective one can understand why users make the mistake. Quite often GB is the only alternative to US spelling option afforded in setup / select language scenarios. I would be interested to know, now the issue is identified, what the process is for developing and deploying the fix to avoid having to manually change each time the error occurs.

    1. Excellent question Dave, and I appreciate you keeping me on my toes!

      To (at least partly) answer your question, here’s a PowerShell script that identifies any users in Active Directory that have been enabled for Lync but their msExchUserCulture is not set to en-AU:


      $strFilter = “(&(objectCategory=User)(msRTCSIP-UserEnabled=TRUE)(!(msExchUserCulture=en-AU)))”

      $objDomain = New-Object System.DirectoryServices.DirectoryEntry

      $objSearcher = New-Object System.DirectoryServices.DirectorySearcher
      $objSearcher.SearchRoot = $objDomain
      $objSearcher.Filter = $strFilter
      $objSearcher.SearchScope = “Subtree”

      $colProplist = “name”
      foreach ($i in $colPropList){$objSearcher.PropertiesToLoad.Add($i)}

      $colResults = $objSearcher.FindAll()

      foreach ($objResult in $colResults)
      {$objItem = $objResult.Properties; $}


      I say partly answer your question because this will only identify users that are incorrectly configured. A little more work required from my end to take the output from above and feed into another PowerShell cmdlet that sets msExchUserCulture to the correct regional setting.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.