Kenntnisstand

Mai 2021. MetaDirectory 5 Enterprise

Häufig werden Daten zu ein und dem selben Kontakt parallel in verschiedenen Datenquellen gespeichert. So finden sich bspw. bestellrelevante Daten zu einem Kontakt in einem ERP System, Support-Daten in einem Ticketsystem und allgemeine sowie Marketing-Daten im CRM. Die Möglichkeit diese Daten zusammengefasst in einem Suchergebnis darzustellen bietet nun das neue Webportal des MetaDirectory. Durch Aktivierung des Features "Contact Merge" werden Kontakte mit gleicher E-Mail-Adresse oder gleicher SIP-Adresse automatisch zusammengeführt und alle Informationen als ein Kontakt dargestellt.

Die Kriterien, die zu einem Zusammenführen der Kontakte führen, können auf dem MetaDirectory Server frei definiert werden.

Beispiel Suchergebnis ohne und mit Contact Merge

Hier sehen Sie an einem Beispiel mit zwei Kontakten mit der gleichen PLZ (hier im Beispiel fiktiv die 9999), wie Suchtreffer angezeigt werden.

Beispiel Screenshot: MetaDirectory Administrator - Datenbank-Abfrage - Datenbank-Suche

Ohne Contact Merge

Über die Web-Suche werden in diesem Beispiel - ohne Contact Merge - zwei unterschiedliche Kontakte geliefert:

Mit aktivem Contact Merge

Mit aktivem Contact Merge wird auf der Web-Oberfläche nun folgendes ausgegeben:


Vorgehensweise

Die Konfiguration erfolgt über e3_merge.js im MetaDirectory Installationsverzeichnis:

C:\Program Files\estos\MetaDirectory\wwwroot 

Referenzierte Felder

Nun kommt es darauf an auch welches Feld im Kontakt referenziert werden soll. 

Ein Feld

Kommt ein Feld zum Einsatz, das nur einmal vorhanden ist (im nachfolgenden Beispiel das Feld "postalCode"), genügt folgender Code:

function fnMergeMatch(jsnContactA, jsnContactB)
{
return (jsnContactA.postalCode == jsnContactB.postalCode);}
JS
Download Beispiel .js-Datei 

Ein_Feld___e3_merge.js

Mehrere Felder

Sollen mehrere Abgleiche gemacht werden z. B. für mehrere E-Mail-Adressen Felder für ein Mail-Adressen-Feld (von dem es drei verschiedene gibt) sollte der Code z. B. so aussehen:

function fnMergeMatch(jsnContactA, jsnContactB)
{

	return (jsnContactA.mail == jsnContactB.mail || jsnContactA.mail2 == jsnContactB.mail2 || jsnContactA.mail3 == jsnContactB.mail3);
}
CODE
Download Beispiel: .js-Datei 

Mehrere_Felder___e3_merge.js