Kann ich nach dem Leeren der Sitzung immer noch auf eine Sitecore-Kontaktfacette zugreifen?

Ich hoffe, ich habe hier nicht das falsche Ende des Sticks erreicht (wie immer ist die Sitecore-Dokumentation bedauerlich!)

Ich wollte eine Möglichkeit zum Speichern von Informationen gegen einen Besucher, ich bin einigermaßen neu auf Sitecore, aber diekontakt facetten schienen das idealesolution, so ziemlich wörtlich aus dem obigen Link implementiert, bis es die Produktion erreichte, war ich ziemlich zufrieden damit. Wenn ich Informationen gespeichert habe, die bestehen blieben, konnte ich sie lesen:

public IMpmVisitorFacet GetMpmVisitorFacet()
{
    return _contact.GetFacet<IMpmVisitorFacet>(_MPMVisitorConfigName);
}

und Setinfo und alles schien super. Ich konnte auch den sitecore sehenSC_ANALYTICS_GLOBAL_COOKIE gesetzt zu sein, schien alles wunderbar. Dann habe ich ein paar gründlichere Tests gemacht ...

Das Problem scheint zu sein, dass die Daten einfach nicht lange bestehen bleiben. Wenn ich ein paar Informationen in die Facette bringe, bleibt sie ungefähr eine Stunde lang hängen (ich kann meinen Browser schließen, andere, Websites usw. ansehen usw.) und ich werde in der Lage sein, nach einer "Menge von" darauf zuzugreifen zeit "es geht einfach alles weg.

Nach einem erneuten Besuch der Dokumente (habe ich erwähnt, dass sie nicht sehr gut sind) habe ich eine Einschränkung in einem Satz bemerkt, die ich vorher nicht gesehen habe:

Nun, ich kann eine andere Webformularseite erstellen, auf der nur die Mitarbeiternummer angezeigt wird. Das zeigt mir, dass die Kontaktfacettendaten gespeichert werdenin Gedächtnis mindestens. Aber wie steht es mit der dauerhaften Speicherung?

Halt an, ich dachte das wäre permanenter Speicher ?! Das Beispiel zeigt also einen Code zum Lesen der "Facette".

var contact = Tracker.Current.Contact;
var data = contact.GetFacet<IEmployeeData>("Employee Data");
data.EmployeeId = "ABC123";
.....
<p>Employee data contact facet updated.</p>
<p>Contact ID: <b><%=contact.ContactId.ToString()%></b></p>
<p>Employee #: <b><%=data.EmployeeId%></b></p>

Aber diese Facette scheint nur für einen kurzen Zeitraum zu existieren. Es geht dann weiter:

Aus Performancegründen schreibt Sitecore Kontaktdaten nur am Ende der Sitzung in xDB. Das bedeutet, wenn ich in MongoDB nachschaue ...

nschließend zeigt @it die Daten in der neuen, glänzenden und trendigen MongoDb-Implementierung. Aber was nützt es im Mongo, wenn ich nicht programmgesteuert auf diese Informationen zugreifen und sie verwenden kan

Wirft dies die Frage auf, wie ich auf diese Kontaktinformationen zugreifen kann, wenn die Sitzung abgebrochen wird?

d.h. Benutzer meldet sich bei meiner Site an -> Ich füge einige Informationen in ihre Kontaktfacette ein -> Sie kommen am nächsten Tag wieder -> Ich möchte die Informationen lesen, die ich zuvor hinzugefügt habe

Es gibt mehrere andere Dokumente, die über den Zugriff auf diese Daten imErfahrungsprofil, bisindex in Lucene undin der Erlebnisplattform (warum haben zwei Produkte fast den gleichen Namen ?!), aber nichts zu sagen, wie auf diese Informationen auf der Website selbst im Code zugegriffen werden kann.

Zu den Kommentaren hinzufügen vonDmytro Shevchenko:

Ich kann meinen Benutzer im "Erfahrungsprofil" sehen und meine Besuche auf der Website sehen.Ich weiß, dass dieser Benutzer meine zusätzlichen Facetteninformationen hatte, weil er Code ausgelöst hat.Ich kann meinen Benutzer (anhand der IDs, die aus der Abfragezeichenfolge auf der Erfahrungsprofilseite entnommen wurden) in der Mongo-Datenbank finden.Aber wenn ich mir den user in mongoDb anschaue ist die zusatzinformation nicht da. Einige der Kontaktdatensätze haben diese Daten, andere nicht

So scheint es ein Problem beim Schreiben der neuen Informationen an mongo @ zu se ... Hat jemand Hilfe oder ähnliche Erfahrungen damit?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage