Hinweise zur Tracking Integration
Prüfungsmöglichkeit der Übergabe
Wenn die Parameter korrekt übergeben wurden, liefert die Schnittstelle The event was successfully tracked
und den HTML-Statuscode 200
zurück. Sollte es Probleme mit dem Trackingaufruf gegeben haben, wird dies mit einer Fehlermeldung (z.B. The parameter [id] is required and cannot be null or empty
) und dem HTML-Statuscode 400 beantwortet. Dadurch können Sie bei der Integration prüfen, ob diese korrekt ist und Sie alle nötigen Parameter übergeben haben.
Eine weitere Prüfungsmöglichkeit der Korrektheit Ihrer Trackingintegration bietet die Analytics-Diagnose-Übersicht im FACT-Finder Management Backend.
Übergabe von mehreren Events in einem Aufruf
FACT-Finder bietet die Möglichkeit mehrere Events in einem URL-/Methoden-Aufruf zu übertragen. Gerade beim Kaufevent kann dies die URL-Aufrufe und somit den Netzwerkverkehr enorm reduzieren, da anstatt einem Aufruf je gekauftem Artikel, lediglich einer insgesamt gesendet werden muss.
Sollten Sie das Tracking per Webservice integriert haben, so nutzen Sie hierfür die Methode logMultipleInformation
, der man mehrere TrackingEvent
-Objekte übergeben kann.
Falls Sie das Tracking über URL-Parameter übertragen, ist zu beachten, dass es nur möglich ist bei einem Aufruf Events des gleichen Typs zu loggen. Das heißt Sie können beispielsweise nur mehrere Kaufevents oder mehrere Warenkorbevents in einem Aufruf schicken, nicht beides in einem Aufruf gemischt. Um mehrere Events zu übergeben müssen Sie die Parameter des jeweiligen Typs, wie im unteren Beispiel farblich markiert, mehrfach senden.
Beispielaufruf
$stringEscapeUtils.escapeHtml($body)
„In den Warenkorb"-Funktion auf der Ergebnisseite
Falls Sie auf der Suchergebnisseite eine direkte Möglichkeit anbieten, den Artikel in den Warenkorb zu legen, müssen Sie bei diesem Ereignis neben der cart
-Information auch eine click
-Information übergeben. Nur so ist es möglich festzustellen, dass der Artikel durch einen Suchbegriff in den Warenkorb gelegt wurde.
Live-Learning des Semantic Enhancer nutzen
Das Semantic-Enhancer-Modul verbessert das Ranking von Produkten, die semantisch ähnlich zu Produkten sind, welche von anderen Nutzern zuvor angeklickt oder gekauft wurden bei einer gegebenen Suchanfrage (query
).
Falls Sie personalisierungsbasiertes Semantic Enhancement benutzen und den Einfluss von Klick- und Kauf-Events sofort nach jedem Event im Ergebnis berücksichtigen möchten, das so genannte Live-Learning, dann müssen sie den Query-Parameter nicht nur bei click
-Events, sondern auch bei cart
- und checkout
-Events mitschicken. Ohne den Query-Parameter bei diesen Events ist kein Live-Learning möglich.
Beispielaufruf
$stringEscapeUtils.escapeHtml($body)
Tracking bei Nutzung der Personalisierung
Das Personalisierungsmodul kann genutzt werden, um die Suchergebnisse neu zu ordnen, die aufgrund des vorher beobachteten Benutzerverhaltens gespeichert wurden. Damit FACT-Finder relevante Informationen aus dem Benutzerverhalten, aus Tracking-Ereignissen und Suchanfragen dazu lernt, müssen Sie entsprechend die FACT-Finder Einstellungen anpassen. Bei der Benutzer-Anmeldung (login
-Event) wird die Session-Kennung (sid
) mit der Benutzer-Kennung (userId
) assoziiert. Danach werden alle weiteren Tracking-Ereignisse und Suchanfragen eines Benutzers die gleiche Session-Kennung haben.
Verschleierte Übertragung
Manche übertragenen Werte sind aus der Sicht des Datenschutzes nicht bedenklich, können beim Anwender aber dennoch für Beunruhigung sorgen, wenn dieser sie sieht. Daher bietet FACT-Finder die Möglichkeit Informationen verschleiert zu übertragen. Dabei wird der zu übertragende URL-Teil mit einem Base64-Encoder enkodiert und als Wert eines definierten Parameters übertragen. Die Parameter-Namen, die als enkodiert aufgefasst werden, sind konfigurierbar[1]. Die Standard-Konfiguration betrachtet den Parameter p
als kodierten Parameter.
Beispiel
Sie wollen diesen Aufruf an FACT-Finder-Tracking kodiert übermitteln:
page=5&query=cigars&age=27&gender=f
Der Base64-Encodierte Wert für diesen Text wäre:
cGFnZT01JnF1ZXJ5PWNpZ2FycyZhZ2U9MjcmZ2VuZGVyPWY=
Zusammen mit dem Parameter-Namen und weiteren nicht enkodierten Parametern, würde der Request so aussehen (das Gleich-Zeichen wurde vor dem http-Request URL-Kodiert):
./Tracking.ff?p=cGFnZT01JnF1ZXJ5PWNpZ2FycyZhZ2U9MjcmZ2VuZGVyPWY%3D&event=click
Vor der Base64-Kodierung sollte der Ausgangstext URL-Kodiert sein. Und zwar mit dem URL-Encoding, das für FACT-Finder eingestellt wurde (typischerweise UTF-8). Der obere Beispiel-Text, enthält keine Sonderzeichen, daher ist es nicht ersichtlich, dass dieser schon URL-kodiert ist. Wenn beispielsweise die Suchanfrage „hosen & röcke“ kodiert werden soll, muss der Ausgangstext für die Base64-Kodierung so aussehen:
page=5&query=hosen%20%26%20r%C3%B6cke&age=27
[1] tracking.namesOfEncodedParameters
in fff.properties
Sonstiges
Es ist auch möglich, die Trackingevents beim Aufruf der Detailseite im Programmcode aufzurufen. Was den Vorteil hat, dass man nicht auf die Aktivität von JavaScript beim Shopbesucher angewiesen ist. Hierzu müsste jedoch die Weitergabe der benötigten Parameter sichergestellt werden.