1. Einleitung

Die Suchfunktion ist nur eine von vielen Funktionen, die Kunden an eine Online-Präsenz stellen. Sie muss intuitiv bedienbar sein und relevante Ergebnisse liefern.

SmartSearch bündelt diese Anforderungen mit einer hochperformanten Suchlösung, die auf umfangreichen Webseiten einsetzbar ist. Durch eine hohe Trefferqualität und einen optimalen Suchkomfort werden Kunden auf der Webseite gebunden.

Mittels SmartSearch Connect lassen sich die Funktionalitäten von SmartSearch und FirstSpirit optimal verbinden. Mit sehr wenig Aufwand ist es möglich die mittels FirstSpirit erstellte Webseite mit einer performanten Suche auszustatten. Aktualisierungen und neue Inhalte finden sich direkt in den Suchergebnissen wieder.

Das Ziel des Moduls ist eine einfache und schnelle Verknüpfung zwischen diesen Systemen. Dabei wurde darauf geachtet, so wenig Installations- und Konfigurationsaufwand wie möglich zu erzeugen. Aus diesem Grund wurde bewusst darauf verzichtet mit jedem FirstSpirit-Projekt kompatibel zu sein. So ist es aktuell noch nicht möglich Projekte zu verwenden, in denen Fragmente verwendet werden.

2. Installation und Konfiguration

Für die Verwendung der Funktionalitäten des SmartSearch Connect-Moduls ist die Installation und Konfiguration unterschiedlicher Komponenten notwendig. Die dafür erforderlichen Schritte werden in den nachfolgenden Unterkapiteln erläutert.

2.1. Konfiguration der Projekt-Komponente

Für den Einsatz von SmartSearch Connect ist eine projektspezifische Konfiguration notwendig. Diese wird über die Projekt-Komponente vorgenommen, die dem Projekt hinzuzufügen ist. Öffnen Sie dafür den ServerManager und wählen Sie den Bereich Projekt-Eigenschaften → Projekt-Komponenten.

alt-Text
Abbildung 1. Auswahl zur Konfiguartion der Projekt-Komponente

Im Hauptpanel ist eine Liste aller bereits vorhandenen Projekt-Komponenten zu sehen. Selektieren Sie nach dem Klicken auf [Hinzufügen] die SmartSearch ConnectProjectApp aus und bestätigen Sie die Auswahl mit [OK]. Die Projekt-Komponente wird anschließend der Liste im Hauptpanel hinzugefügt und muss im nächsten Schritt noch konfiguriert werden (vgl. Abbildung Auswahl zur Konfiguartion der Projekt-Komponente). Selektieren Sie dafür den Eintrag in der Liste und öffnen Sie den zugehörigen Konfigurationsdialog über [Konfigurieren] (vgl. Abbildung Dialog der Projekt-Komponente).

alt-Text
Abbildung 2. Dialog der Projekt-Komponente

Zunächst kann hier ein Name für die in SmartSearch automatisch zu erzeugenden Datengenerator und PreparedSearch konfiguriert werden. Wird das Feld leer gelassen, so wird der aktuelle Projektname hierfür herangezogen.

In der Konfiguration des Projektes ist es notwendig den URL Creator einzustellen, der auch in Generierung eingestellt ist, die für die Erstellung der Webseite . Es ist somit notwendig einen URL Creator auszuwählen und zudem zu dem URL Creator den Prefix.

In der Liste Media file extension kann ausgewählt werden, welche Medien mittels SmartSearch Connect an SmartSearch übertragen werden sollen. In dieser Liste werden nur Dateiendungen textuell verarbeitbarer Dateien angezeigt, welche im Projekt vorhanden sind. Diese Liste muss also während der Nutzung eines Projekts um neue Endungen ergänzt werden.

2.2. Vollgenerierung

Standardmäßig werden von SmartSearch die URLs der Original-Auflösungen für Bilder ausgeliefert. Sollen URLs weiterer Auflösungen verwendet werden, können diese in den Image resolutions ausgewählt werden. SmartSearch Connect stellt hierbei nicht sicher, dass die Bilder auch von außen erreichbar sind. Dieses muss im Projekt sichergestellt werden.

3. Vollgenerierung

Zur initialen Befüllung von SmartSearch ist eine Vollgenerierung notwendig. Beim Hinzufügen der Projekt-Komponente wird in der Auftragsverwaltung der Projektkonfiguration automatisch ein neuer Auftrag angelegt und unter den Aktionen der Eintrag [SmartSearch push] hinzugefügt.

alt-Text
Abbildung 3. Auswahl der Vollgenerierungsaktion

Durch Ausführen dieses Auftrages wird in SmartSearch ein neuer Datengenerator und eine neue Prepared Search mit dem Präfix FS_ und dem konfigurierten Namen angelegt.

3.1. Teilgenerierung

Um SmartSearch auch nach einer Teilgenerierung auf dem neuesten Stand zu halten ist es notwendig den Auftrag um ein Aktion vom Typ Skript zu erweitern. Dieses Skript muss hinter der eigentlichen Generierung eingebunden werden und folgenden Inhalt haben:

#! executable-class
com.espirit.smartsearch.initialdeployment.PushPreviousGenerationExecutable

3.2. Eventing

Um die Inhalte in SmartSearch so aktuell wie möglich zu halten, gibt es neben den Generierungen das Eventing. Hierbei werden Änderungen (Anlegen, Löschen und Editieren von Elementen) direkt nach der Freigabe der Elemente innerhalb FirstSpirit an SmartSearch geschickt.

Damit eventgetriebene Übertragen der Daten in Richtung SmartSearch, durch redaktionelle Anpassungen im ContentCreator ausgelöst werden, muss der genutzte Workflow bestimmte Anforderungen erfüllen. Konkret muss der Workflow z.B. abhängige FirstSpirit-Elemente freigeben, sobald ein Objekt freigegeben wird. Bei Freigabe einer Seite müssen z.B. die abhängigen Seitenreferenzen freigegeben werden. Um dieses Verhalten herzustellen, kann das Modul BasicWorkflows verwendet werden.

4. Was geschieht in SmartSearch?

Sendet ein FirstSpirit-Projekt mit dem exemplarischen Namen Demo das erste mal Daten in Richtung SmartSearch, so werden dort die benötigen Elemente automatisch angelegt:

Dies beinhaltet zum einen ein Datengenerator vom Typ API mit dem Namen FS_Demo:

alt-Text
Abbildung 4. Automatisch erzeugter Datengenerator

Zum anderen wird eine PreparedSearch mit dem Namen FS_Demo angelegt.

alt-Text
Abbildung 5. Automatisch erzeugte PreparedSearch

An dieser Prepared Search ist der zugehörige Datengenerator bereits ausgewählt:

alt-Text
Abbildung 6. Automatisch erzeugte Verknüpfung zwischen der Prepared Search und dem Datengegenerator

4.1. Datengenerator

Mit Ausnahme der kurzen Momente in denen Daten an SmartSearch übertragen werden, steht der durch das Modul erzeugten Datengeneratoren dauerhaft auf dem Status API Bereit. An dieser Stelle sei erwähnt, das ein Statuswechsel im Cockpit nicht sichtbar ist wenn die Datenübertragung sehr schnell abläuft und nicht viel Zeit in Anspruch nimmt.

Des Weiteren ist der Empfang der Daten im Log nur mit dem Loglevel DEBUG sichtbar. Dieser kann in der Datei logback-spring.xml wie folgt konfiguriert werden:

<logger name="de.arithnea.haupia.datageneration.crawler.api.reactive" level="DEBUG"/>

Datengeneratoren vom Typ API können weder gestartet noch gestoppt werden, da sie permanent auf Daten warten.

Daten die an den Datengenerator übertragen werden, werden nach 30 Sekunden in den Solr-Index übertragen. Dieser Zeitraum kann (zu Testzwecken) mit Hilfe der Umgebungsvariable API_CRAWLER_COMMIT_WITHIN auf dem SmartSearch-System auf z.B. eine Sekunde reduziert werden. Diese Konfiguration ist jedoch nicht für den produktiven Einsatz vorgesehen:

export API_CRAWLER_COMMIT_WITHIN=1000

4.2. PreparedSearch

Die vorkonfigurierte PreparedSearch ist direkt nach dem Empfang der Daten per REST abrufbar. An ihr können wie gewohnt z.B. Facetten gepflegt werden. Die Facette fsType enthält den Typ der aus FirstSpirit exportierten Entität:

alt-Text
Abbildung 7. Facetten language und fsType

Eine bekannte und wichtige Konfiguration zur Nutzung der PreparedSearch ist das Hinzufügen bestimmter Felder (z.B. der Link zur Ressource) zur Ausgabe, so dass beim Abfragen der Schnittstelle das Ergebnis mit der von FirstSpirit generierten URL ausgegeben werden:

alt-Text
Abbildung 8. Hinzugefügtes Feld Link

5. Bekannte Probleme und Abgrenzungen

In den folgenden Abschnitten werden bekannte Probleme für diese Version aufgelistet.

5.1. FirstSpirit-Projektname

Derzeit sollte der Projektname in FirstSpirit möglichst keine Leerzeichen beinhalten. Während der Export nach SmartSearch mit einem Leerzeichen zwar funktioniert, kann es dennoch zu nicht abschätzbaren Nebeneffekten kommen, da Leerzeichen für Datengenerator- sowie PreparedSearch-Namen nicht zulässig sind. Dies wird zukünftig umgebaut werden, um die FirstSpirit-Projekt-ID zu nutzen, und in SmartSearch entsprechend einen Anzeigenamen verwenden zu können.

5.2. Umbenennen von Projekten in FirstSpirit

Um die vom FirstSpirit-Modul in SmartSearch automatisch angelegten Datengeneratoren und PreparedSearches erkennbar zu machen, folgen sie oben genanntem Namensschema.

Dies hat zur Folge, dass das FirstSpirit-Projekt nicht umbenannt werden darf, da SmartSearch diese Anpassung nicht übernehmen kann. Für SmartSearch würden danach übertragene Daten zum Anlegen eines neuen Datengenerators sowie einer neuen PreparedSearch führen, und somit zu einem neuen Index.

Wie oben beschrieben wird dies zukünftig in Richtung einer Nutzung der Projekt-ID angepasst werden, was dann ein Umbenennen möglich machen wird.

6. Rechtliche Hinweise

SmartSearch Connect ist ein Produkt der e-Spirit AG, Dortmund, Germany.
Für die Verwendung des Modules gilt gegenüber dem Anwender nur die mit der e-Spirit AG vereinbarte Lizenz.

Details zu möglicherweise fremden, nicht von der e-Spirit AG hergestellten, eingesetzten Software-Produkten, deren eigenen Lizenzen und gegebenenfalls Aktualisierungsinformationen, finden Sie in der Datei THIRD-PARTY.txt, die mit dem Modul ausgeliefert wird.

7. Hilfe

Der Technical Support der e-Spirit AG bietet qualifizierte technische Unterstützung zu allen Themen, die FirstSpirit™ als Produkt betreffen. Weitere Hilfe zu vielen relevanten Themen erhalten und finden Sie in auch in unserer Community.