Rangfolgeformeln create-ranking-formulas
Grundlagen zu Rangfolgeformeln about-ranking-formulas
Mithilfe von Rangfolgeformeln können Sie festlegen, welches Angebot für eine bestimmte Platzierung zuerst angezeigt werden soll, anstatt die Prioritätswerte der Angebote zu berücksichtigen.
Rangfolgeformeln werden in der PQL-Syntax angegeben und können Profil-, Kontextdaten- und Angebotsattribute nutzen. Weiterführende Informationen zur Verwendung der PQL-Syntax finden Sie im entsprechenden Handbuch.
Nachdem Sie eine Rangfolgenformel erstellt haben, können Sie sie einer Platzierung in einer Entscheidung zuweisen. Weitere Informationen dazu finden Sie unter Konfigurieren der Auswahl von Angeboten in Entscheidungen.
Erstellen einer Rangfolgeformel create-ranking-formula
Gehen Sie wie folgt vor, um eine neue Rangfolgeformel zu erstellen:
-
Rufen Sie das Menü Komponenten auf und wählen Sie dann die Registerkarte Rangfolge aus. Die Registerkarte Formeln ist standardmäßig ausgewählt. Es wird die Liste der zuvor erstellten Rangfolgen angezeigt.
-
Klicken Sie auf Rangfolge erstellen, um eine neue Rangfolgeformel zu erstellen.
-
Geben Sie den Namen und die Beschreibung der Formel sowie die Formel selbst an.
In diesem Beispiel möchten wir die Priorität aller Angebote durch Hinzufügen des Attributs „heiß“ erhöhen, wenn das Wetter heiß ist. Zu diesem Zweck wurde contextData.weather=hot im Entscheidungsaufruf übergeben. Weitere Informationen zum Arbeiten mit Kontextdaten
note important IMPORTANT Beim Erstellen einer Ranglistenformel wird ein Rückblick in einen vorherigen Zeitraum nicht unterstützt. So kann es beispielsweise sein, dass Sie als Bestandteil der Formel ein Erlebnisereignis angeben, das innerhalb des letzten Monats stattgefunden hat. Bei jedem Versuch, einen Rückblick-Zeitraum während der Formelerstellung einzubeziehen, wird beim Speichern ein Fehler ausgelöst. -
Klicken Sie auf Speichern. Ihre Rangfolgeformel wird erstellt. Sie können sie aus der Liste auswählen, um Details abzurufen und sie zu bearbeiten oder zu löschen.
Sie kann jetzt in einer Entscheidung verwendet werden, um die geeigneten Angebote für eine Platzierung zu reihen (siehe Auswahl der Angebote in Entscheidungen konfigurieren).
Beispiele für Rangfolgeformeln ranking-formula-examples
Sie können je nach Bedarf viele verschiedene Rangfolgeformeln erstellen. Im Folgenden finden Sie einige Beispiele.
Verstärken von Angeboten mit bestimmten Angebotsattributen auf der Grundlage von Profilattributen
Wenn das Profil in der Stadt lebt, die dem Angebot entspricht, verdoppeln Sie die Priorität für alle Angebote in dieser Stadt.
Rangfolgeformel:
if( offer.characteristics.get("city") = homeAddress.city, offer.rank.priority * 2, offer.rank.priority)
Verstärken von Angeboten, deren Enddatum in weniger als 24 Stunden liegt
Rangfolgeformel:
if( offer.selectionConstraint.endDate occurs <= 24 hours after now, offer.rank.priority * 3, offer.rank.priority)
Verstärken von Angeboten entsprechend der Neigung der Kunden, das angebotene Produkt zu kaufen
Sie können die Punktzahl für ein Angebot basierend auf einem Tendenzwert für den Kunden erhöhen.
In diesem Beispiel lautet der Instanzmandant _salesvelocity und das Profilschema enthält einen Bereich von Werten, die in einem Array gespeichert sind:
In diesem Fall für ein Profil wie:
{"_salesvelocity": {"individualScoring": [
{"core": {
"category":"insurance",
"propensityScore": 96.9
}},
{"core": {
"category":"personalLoan",
"propensityScore": 45.3
}},
{"core": {
"category":"creditCard",
"propensityScore": 78.1
}}
]}
}
Verstärken von Angeboten basierend auf Kontextdaten context-data
Mit Journey Optimizer können Sie bestimmte Angebote basierend auf Kontextdaten verstärken, die beim Entscheidungsaufruf übergeben werden. Wenn beispielsweise contextData.weather=hot
im Entscheidungsaufruf übergeben wird, muss die Priorität aller Angebote mit attribute=hot
erhöht werden. Detaillierte Informationen zum Übergeben von Kontextdaten mithilfe der Edge Decisioning- und der Decisioning-API finden Sie diesem Abschnitt
Beachten Sie, dass bei Verwendung der Decisioning-API die Kontextdaten zum Profilelement im Anfragehauptteil hinzugefügt werden wie im folgenden Beispiel.
"xdm:profiles": [
{
"xdm:identityMap": {
"crmid": [
{
"xdm:id": "CRMID1"
}
]
},
"xdm:contextData": [
{
"@type":"_xdm.context.additionalParameters;version=1",
"xdm:data":{
"xdm:weather":"hot"
}
}
]
}],
Im Folgenden finden Sie Beispiele, die veranschaulichen, wie Kontextdaten in Rangfolgeformeln verwendet werden können, um die Priorität von Angeboten zu erhöhen. Erweitern Sie jeden Abschnitt, um Details zur Syntax der Rangfolgenformel zu erhalten.
<OrgID>
durch Ihre Organisations-Mandanten-ID.tabs | |
---|---|
Decisioning-API | if (@{_xdm.context.additionalParameters;version=1}.channel.isNotNull() and @{_xdm.context.additionalParameters;version=1}.channel.equals(_abcMobile.preferredChannel), offer.rank.priority + 10, offer.rank.priority) |
Edge Decisioning-API | if (xEvent.<OrgID>.channel.isNotNull() and xEvent.<OrgID>.channel.equals(_abcMobile.preferredChannel), offer.rank.priority + 10, offer.rank.priority) |
tabs | |
---|---|
Decisioning-API | if (@{_xdm.context.additionalParameters;version=1}.weather.isNotNull() and offer.characteristics.get("weather")=@{_xdm.context.additionalParameters;version=1}.weather, offer.rank.priority + 5, offer.rank.priority) |
Edge Decisioning-API | if (xEvent.<OrgID>.weather.isNotNull() and offer.characteristics.get("weather")=xEvent.<OrgID>.weather, offer.rank.priority + 5, offer.rank.priority) |
tabs | |
---|---|
Decisioning-API | if (@{_xdm.context.additionalParameters;version=1}.contentorigin.isNotNull() and offer.characteristics.contentorigin=@{_xdm.context.additionalParameters;version=1}.contentorigin, offer.rank.priority * 100, offer.rank.priority) |
Edge Decisioning-API | if (xEvent.<OrgID>.contentorigin.isNotNull() and offer.characteristics.contentorigin=xEvent.<OrgID>.contentorigin, offer.rank.priority * 100, offer.rank.priority) |
tabs | |
---|---|
Decisioning-API | if (@{_xdm.context.additionalParameters;version=1}.weather.isNotNull() and offer.characteristics.weather=@{_xdm.context.additionalParameters;version=1}.weather, offer.rank.priority * offer.characteristics.scoringBoost, offer.rank.priority) |
Edge Decisioning-API | if (xEvent.<OrgID>.weather.isNotNull() and offer.characteristics.weather=xEvent.<OrgID>.weather, offer.rank.priority * offer.characteristics.scoringBoost, offer.rank.priority) |