Zoek suggesties in SharePoint 2010

by Marco Rietveld 11. april 2011 12:35

SharePoint Server 2010 en Search Server 2010 Express maken gebruik van een nieuwe zoek feature, zoek suggesties.

Er zijn pre-query suggesties en post-query suggesties. Een pre-query suggestie is een “type-ahead” functie en wordt weergeven in het zoekveld op de zoekpagina. Zodra er in dit veld getyped wordt, zal SharePoint andere queries weergeven waar op gezocht is. Er worden geen suggesties weergegeven welke geen resultaat geven.

image

Een post-query suggestie wordt na een zoekopdracht weergegeven in de rechterbovenhoek van de pagina met zoekresultaten.

image

Belangrijk is dat zoek suggesties gebaseerd zijn op zoekopdrachten die gebruikers uitvoeren en door te klikken op de resultaten. Een  suggestie wordt automatisch toegevoegd nadat er 6 keer binnen een jaar op een resultaat wordt geklikt. Na de installatie van SharePoint worden er dus geen suggesties weergegeven bij een zoekopdracht.

Een mogelijkheid is om handmatig suggesties dmv PowerShell toe te voegen.

Een zoek suggestie toevoegen:

$ssa=Get-SPEnterpriseSearchServiceApplication 
New-SPEnterpriseSearchLanguageResourcePhrase -SearchApplication $ssa -Language en-US -Type QuerySuggestionAlwaysSuggest -Name "SharePoint Server" 
$timer=Get-SPTimerJob|? {$_.Name -eq "Prepare Query Suggestions"} 
$timer.RunNow()

Een lijst weergeven met alle zoek suggesties:

Get-SPEnterpriseSearchQuerySuggestionCandidates -SearchApplication $ssa

Een zoek suggestie kan verwijderd worden met:

Remove-SPEnterpriseSearchLanguageResourcePhrase -SearchApplication $ssa -Language En-Us -Type QuerySuggestionAlwaysSuggest -Identity "SharePoint Server"

Een andere mogelijkheid is het “bulk” toevoegen van suggesties.
Dit kan op 2 manieren, vanuit een SharePoint Term Store of vanuit een CSV file.

Suggesties toevoegen vanuit een Term Store kan met het volgende PowerShell script:

$centraladminurl = 'http://URL:PORT'
 # fill in the name of the search service application
 $searchservicename = "Search Service Application"
 # fill in the name of the termstore
 $termstorename = "Managed Metadata"
 # fill in the name of the group
 $groupname = "GROUP"
 # fill in the name of the termset
 $termsetname = "TERMSET"
 
# Connect with the taxonomy
 $taxonomySite = get-SPSite $centraladminurl
 $taxonomySession = Get-SPTaxonomySession -site $taxonomySite
 $termStore = $taxonomySession.TermStores[$termstorename]
 write-host "Connection made with term store -"$termStore.Name
 
# connect with the search service application
 $ss = Get-SPEnterpriseSearchServiceapplication -Identity $searchservicename
 
# function to add a query suggestion
 function addqs($term)
 {
   New-SPEnterpriseSearchLanguageResourcePhrase -SearchApplication $ss -Language En-Us -Type QuerySuggestionAlwaysSuggest -Name $term.Name -ErrorAction SilentlyContinue
   Write-Host $term.Name
   foreach($nonrootterm in $term.get_Terms())
     {
         addqs($nonrootterm)
     }
 }
 
$termStoreGroup = $termStore.Groups[$groupname]
 $termSet = $termStoreGroup.TermSets[$termsetname]
 
foreach ($term in $termSet.get_Terms())
 {
     addqs($term)
 }
 
# Starting the timer job to prepare the query suggestions
 $job = Get-SPTimerJob "Prepare query suggestions"
 $job | Start-SPTimerJob
 Write-Host "Timer job started"
 
$taxonomySite.Dispose()
 Write-Host "Connection disposed"

Suggesties toevoegen vanuit een CSV file kan met het volgende PowerShell script:

De inhoud van de CSV file moet beginnen met het woord Suggestion
Voorbeeld CSV file:

Suggestion
SharePoint Online
SharePoint Foundation
SharePoint Workspace 2010
SharePoint Services
SharePoint Designer 2010

#Set up default variables
$csvfile="C:\SearchSuggestions.csv"
$ssa = Get-SPEnterpriseSearchServiceapplication -Identity "Search Service Application" 

#Create Lists from each item in CSV file
$csvData = Import-Csv $csvfile
foreach ($line in $csvData)
{
    New-SPEnterpriseSearchLanguageResourcePhrase -SearchApplication $ssa -Language en-US -Type QuerySuggestionAlwaysSuggest -Name $line.Suggestion
} 

$timerJob = Get-SPTimerJob "Prepare query suggestions"
$timerJob.RunNow()

Tags: | |

Lync 2010 Skill Search gebaseerd op SharePoint

by Marco Rietveld 27. januari 2011 22:20

Met Lync is het niet alleen mogelijk om op naam te zoeken, het is ook mogelijk om te zoeken op vaardigheden of expertise. (Skill Search). Lync maakt hierbij gebruik van SharePoint Search en de informatie op MySites.

Wat is er nodig voor Lync Skill Search:

  • SharePoint 2007/2010
  • SharePoint MySites geconfigureerd
  • SharePoint search center URL
  • SharePoint gepubliceerd op Internet

Het configureren van Skill Search gaat via een Client Policy, een Client Policy configureert de Lync client om gebruikt te maken van SharePoint Search.
Voor het configureren van een Client Policy voor Skill Search zijn een aantal parameters belangrijk:

  • SPSearchInternalURL
  • SPSearchExternalURL

Dit is de URL die de Lync client gebruikt voor het uitvoeren van een zoekopdracht. 
SPSearchInternalURL en SPSearchExternalURL worden opgegeven in het volgende formaat:

http://<server>/_vti_bin/search.asmx

  • SPSearchCenterInternalURL
  • SPSearchCenterExternalURL

Dit is de URL die de Lync client toont onderaan de zoek resultaten. De link opent de zoekresultaten in SharePoint.
SPSearchCenterInternalURL en SPSearchCenterExternalURL worden opgegeven in het volgende formaat:

http:// <server> /SearchCenter/Pages/PeopleResults.aspx


Configureren van een Client Policy via Lync Server Management Shell, het Lync Global Policy wordt gebruikt waardoor Skill Search voor iedere gebruiker beschikbaar is.

De volgende commando’s activeren de Skill based search URL’s

Set-CSClientPolicy –SPSearchInternalURL http://<server>/_vti_bin/search.asmx
Set-CSClientPolicy –SPSearchExternalURL http://<server>/_vti_bin/search.asmx

image

image

De volgende commando’s activeren de Search Center URL’s

Set-CSClientPolicy –SPSearchCenterInternalURL http://<server>/SearchCenter/Pages/PeopleResults.aspx
Set-CSClientPolicy –SPSearchCenterExternalURL http://<server>/SearchCenter/Pages/PeopleResults.aspx

image

image

Na het opnieuw opstarten van de Lync client ontvangt de client de SharePoint URL's.
Je kunt controleren of de Lync client de URL's heeft ontvangen door de Ctrl-toets ingedrukt te houden, rechts te klikken op het Lync pictogram in de system tray, kies Configuration Information.

image

De SharePoint URL’s zijn nu zichtbaar in het Configuration Information overzicht.

image

Open de Lync client en zoek op vaardigheid of expertise.
Klik op Skill, er wordt een zoekopdracht via SharePoint uitgevoerd en de resultaten worden weergegeven in de Lync client.

image

Klik op View results in SharePoint, SharePoint People Search Center wordt geopend met de zoekresultaten.

image

Tags: | |

Toegang geweigerd bij het indexeren van sps3:// content voor People Search

by Marco Rietveld 18. augustus 2010 13:27

Tijdens het configureren van SharePoint 2010 search verscheen de volgende foutmelding bij de eerste crawl.
 
Access is denied. Verify that either the Default Content Access Account has access to this repository, or add a crawl rule to crawl this repository. If the repository being crawled is a SharePoint repository, verify that the account you are using has "Full Read" permissions on the SharePoint Web Application being crawled. ( HttpStatusCode Unauthorized The request failed with HTTP status 401: Unauthorized. )

Wanneer er een Default Content Access Account wordt gebruikt heeft dit account geen rechten op de User Profile Service Application. Het Default Content Access Account heeft minimaal de rechten “Retrieve People Data for Search Crawlers” (“Gegevens van mensen ophalen voor zoekcrawlers” in de Nederlandse versie Crying face) nodig voor het indexeren van deze content.

  • Open Central Administration –> Application Management –> Manage Service Applications
  • highlight de User Profile Service en klik op de Administrators button.
     
    image
     
  • Voeg het Default Content Access Account toe en selecteer “Retrieve People Data for Search Crawlers”
  • Klik op OK
  • Start een Full Crawl

Tags: | |

Error: The search request was unable to connect to the Search Service

by Marco Rietveld 14. april 2010 23:36

Een oplossing voor de foutmelding in SharePoint search, the search request was unable to connect to the search service.

image

Stap 1

  • Central Administration –> Application Management –> Office SharePoint Server Shared Services –> Create or Configure this farm's shared services
  • Shared Services Provider –> Edit Properties

    image 
  • Onder Index Server controleer server of selecteer juiste index server

    image

 

Stap 2
voer het volgende uit via de command prompt

Single Server

  • stsadm -o osearch -action stop
  • stsadm -o osearch -action start -role indexquery


Server Farm

Op de Front End Web/Query server:

  • stsadm -o osearch -action stop


Op de Index server:

  • stsadm -o osearch -action stop
  • stsadm -o osearch -action start -role index

Op de Front End Web/Query server:

    stsadm -o osearch -action start -role query

     

Tags: | |

About the author

Marco Rietveld  
Marco Rietveld
SharePoint Geek|Gadget Freak|Web Junkie|Snowboarding|Xbox 360|Diving|Cooking 
Send mail Linkedin Twitter Youtube
 

Creative Commons Licentie

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2012 SharePoint Geek