People
search in SharePoint 2010 has a very cool feature in that you can find
people by phonetic nickname matching if you do not know the correct
spelling of their name. As an example a search for ‘Mick’ would return
results for people named ‘Michael’.

If you are browsing to your SharePoint site from outside the US you may often see this feature as broken with no results returned however on the server it works. As I am based in Australia we frequently see this problem.

So what is going on?
When you execute a people search SharePoint will observe the current language setting of the browser.
To find out the language setting, in the browser go to Tools – > Internet Options. Then on the General tab, under the Appearance section, click Languages . So on the server it may show:

However on our client we would see:

When the search runs it will pass through that client language setting to the search server. In SharePoint nicknames are part of the search server language resources however these are matched per language and by default they are only created for the language EN-US. The search component of SharePoint also uses the Microsoft speech server engine to do the matching.
So as per the title of the article I mentioned there was a quick fix but first some brief details on the other fixes.
The long fix is to install additional speech server components such as “MSSpeech_SR_en-AU_TELE.msi”. Then upload in the nicknames with the correct language mapping. Now if you are going to add in some extra nicknames that are particular to your locale then this would be the recommended method. This method does have some disadvantages though. The biggest one being that the speech server engines are not available for all languages. (Sorry to my friends over ‘the ditch’ in New Zealand no runtime available for you).
If you are interested in adding more nicknames you can use the New-SPEnterpriseSearchLanguageResourcePhrase powershell command. Search for this command to see other blogs on examples of adding nicknames.

Expand the Result Query Option Section.

Then change the query language from ‘Browser Locale’ to ‘English’

After you have finished making the change make sure to publish the page so that it is available to everyone.
Run a test search from a browser that does not have a language preference of EN-US and nickname searching should now be working.
If you are browsing to your SharePoint site from outside the US you may often see this feature as broken with no results returned however on the server it works. As I am based in Australia we frequently see this problem.
So what is going on?
When you execute a people search SharePoint will observe the current language setting of the browser.
To find out the language setting, in the browser go to Tools – > Internet Options. Then on the General tab, under the Appearance section, click Languages . So on the server it may show:
However on our client we would see:
When the search runs it will pass through that client language setting to the search server. In SharePoint nicknames are part of the search server language resources however these are matched per language and by default they are only created for the language EN-US. The search component of SharePoint also uses the Microsoft speech server engine to do the matching.
So as per the title of the article I mentioned there was a quick fix but first some brief details on the other fixes.
The long fix is to install additional speech server components such as “MSSpeech_SR_en-AU_TELE.msi”. Then upload in the nicknames with the correct language mapping. Now if you are going to add in some extra nicknames that are particular to your locale then this would be the recommended method. This method does have some disadvantages though. The biggest one being that the speech server engines are not available for all languages. (Sorry to my friends over ‘the ditch’ in New Zealand no runtime available for you).
If you are interested in adding more nicknames you can use the New-SPEnterpriseSearchLanguageResourcePhrase powershell command. Search for this command to see other blogs on examples of adding nicknames.
The Quick Fix
The fix is to edit the peopleresults.aspx and modify the web part properties for the People Search Core Results web part.Expand the Result Query Option Section.
Then change the query language from ‘Browser Locale’ to ‘English’
After you have finished making the change make sure to publish the page so that it is available to everyone.
Run a test search from a browser that does not have a language preference of EN-US and nickname searching should now be working.
No comments:
Post a Comment