Auf dieser Seite: Erfahren Sie, wie die Auslösung dynamischer Fragmente in Adobe Journey Optimizer verwendet wird, um auszuwählen, welches veröffentlichte Fragment zur Laufzeit in eine Nachricht eingefügt wird. Dies erfolgt auf der Grundlage von Profilattributen, Datensatzsuchen oder Kontextdaten, die zum Versandzeitpunkt übergeben werden.
Adobe Journey Optimizer unterstützt die Auslösung dynamischer Fragmente zur Laufzeit, um auszuwählen, welches veröffentlichte Fragment in eine Nachricht eingefügt wird. Dies erfolgt auf der Grundlage von Profilattributen, Datensatzsuchen oder Kontextdaten, die zum Versandzeitpunkt übergeben werden. Dies ermöglicht hochgradig personalisierte Inhalte ohne Duplizierung der Kampagnen- oder Journey-Logik.
Überblick overview
Statische Fragmente werden während der Gestaltung in eine Nachricht eingebettet. Für alle Empfangenden wird dasselbe Fragment verwendet. Dynamische Fragmente lösen die Fragment-ID zur Laufzeit pro Empfängerin bzw. Empfänger auf. Das bedeutet, dass verschiedene Profile innerhalb derselben Kampagne oder Journey völlig unterschiedliche Inhaltsbausteine erhalten können.
IDs dynamischer Fragmente können aus drei Quellen stammen:
- Einer Datensatzsuche, z. B. nach Stil oder Produkt verschlüsselter Empfehlungsdatensatz
- Einem in Adobe Experience Platform gespeicherten Profilattribut
- Zum Versandzeitpunkt direkt in der API-Anfrage weitergegebenen Kontextdaten
datasetLookup-Helper-Funktion in Ausdrucksfragmenten ist derzeit für eine begrenzte Anzahl von Kundinnen und Kunden verfügbar. Um Zugriff zu erhalten, wenden Sie sich an den Adobe-Support.Voraussetzungen prerequisites
Stellen Sie vor der Verwendung dynamischer Fragmente Folgendes sicher:
- Sie verfügen über die erforderlichen Berechtigungen, um Fragmente in Journey Optimizer zu erstellen und zu veröffentlichen. Weitere Informationen
- Das Fragment, auf das Sie verweisen möchten, ist veröffentlicht (Status: Live). Entwurfsfragmente können zur Laufzeit nicht aufgelöst werden.
- Wenn die Fragment-ID aus einem Datensatz aufgelöst wird, enthält das Datensatzschema ein Feld, in dem die Fragment-ID gespeichert wird, und der Datensatz wird für die Suche aktiviert.
- Alle Profilattribute, auf die das dynamische Fragment selbst verweist, sind im Nachrichtenexportpfad enthalten oder zum Versandzeitpunkt im Profil verfügbar.
Schritt 1: Erstellen und Veröffentlichen des Fragments create-fragment
Bevor ein Fragment dynamisch referenziert werden kann, muss es in Journey Optimizer veröffentlicht werden.
-
Navigieren Sie in Journey Optimizer zu Content-Management > Fragmente.
-
Wählen Sie Fragment erstellen aus und erstellen Sie den Inhalt. Weitere Informationen zum Erstellen von Fragmenten
-
Wenn der Inhalt fertig ist, klicken Sie auf Veröffentlichen. Die Veröffentlichung erfolgt asynchron und kann einige Sekunden dauern. Vergewissern Sie sich, dass der Fragmentstatus zu Live wechselt, bevor Sie fortfahren.
-
Notieren Sie die Fragment-ID in der Detailansicht des Fragments oder in der Fragments-API-Antwort. Auf diese ID wird in der Nachricht verwiesen.
GET /fragments-API abrufen. Weitere Informationen finden Sie in der Dokumentation zu Journey Optimizer-APIs.Schritt 2: Erstellen der Nachricht mit einem Verweis auf ein dynamisches Fragment author-message
Fügen Sie im Personalisierungseditor den Platzhalter des dynamischen Fragments mit der folgenden Syntax ein:
Die Kennung dynamic_fragment_id ist ein Variablenname. Der Wert muss aufgelöst werden, bevor die Fragmentsuche erfolgt. Sie können ihn mithilfe eines Datensatzsuchausdrucks, eines Profilattributs oder Kontextdaten auflösen.
Auflösen über eine Datensatzsuche resolve-from-dataset
Wenn die Fragment-ID in einem AEP-Datensatz gespeichert ist (z. B. in einer Tabelle, in der eine Zuordnung von Stil zu Fragment erfolgt), verwenden Sie die datasetLookup-Helper-Funktion, um sie aufzulösen:
In diesem Beispiel enthält der Datensatz Zeilen, die durch einen Stilwert (z. B. style1) verschlüsselt wurden. Für ein bestimmtes Profil ruft die Suche den entsprechenden Wert der fragmentId-Spalte ab und weist ihn dynamic_fragment_id zu, was dann zum Auflösen des Fragments verwendet wird.
datasetLookup-Helper-Funktion in Ausdrucksfragmenten ist derzeit für eine begrenzte Anzahl von Kundinnen und Kunden verfügbar. Um Zugriff zu erhalten, wenden Sie sich an den Adobe-Support. Weitere Informationen zur Datensatzsuche in der Personalisierung finden Sie unter Verwenden von Adobe Experience Platform-Daten.Auflösen über Kontextdaten resolve-from-context
Wenn die Fragment-ID zum Versandzeitpunkt als Teil des API-Anfragekontexts angegeben wird, verweisen Sie mithilfe des context-Namespace darauf:
Der Pfad context.audiencePayload ist das erforderliche Präfix für alle Attribute, die aus einer CSV-Zielgruppendatei stammen oder über den API-Anfragekontext übergeben werden. Der Spaltenname aus der CSV-Datei (z. B. fragmentId) folgt dem Präfix.
Auflösen über ein Profilattribut resolve-from-profile
Wenn die Fragment-ID in Adobe Experience Platform als Profilattribut gespeichert ist, verweisen Sie direkt darauf:
Schritt 3: Konfigurieren Ihres Datensatzes für den Suchansatz configure-dataset
Wenn Sie den Datensatzsuchansatz verwenden, aktualisieren Sie Ihr Datensatzschema und Ihre Daten, um die Fragment-ID zu übernehmen.
-
Fügen Sie in Ihren Empfehlungs- oder Zuordnungsdatensätzen eine Spalte hinzu (z. B.
fragmentId), in der die veröffentlichte AJO-Fragment-ID für jede Zeile gespeichert ist. -
Füllen Sie für jeden Stil bzw. jede Variante (z. B.
style1,style2) diefragmentId-Spalte mit der entsprechenden Fragment-ID aus. -
Stellen Sie sicher, dass der Datensatz in Adobe Experience Platform aufgenommen und für die Suche aktiviert wird.
-
Vergewissern Sie sich, dass alle Profilattribute, auf die im dynamischen Fragment verwiesen wird, in der Nachricht oder in einem statischen Fragment erfasst werden, um ein leeres Rendering zur Exportzeit zu verhindern.
Beispiel für Datensatzstruktur:
Schritt 4: Übergeben von Kontextdaten zum Versandzeitpunkt pass-context-data
Wenn Sie die Fragment-ID aus Kontextdaten auflösen (z. B. aus einer CSV-Zielgruppenempfehlungsdatei), übergeben Sie die Fragment-ID in der API-Anfrage unter dem erforderlichen Kontextpräfix.
Fügen Sie bei Verwendung der Kampagnentestversand-API die Fragment-ID in das context-Objekt ein:
{
"recipients": [
{
"userId": "<profile-email>",
"namespace": "email"
}
],
"inChannelData": {
"channel": "email",
"emailAddresses": ["<delivery-address>"]
},
"context": {
"audiencePayload": {
"fragmentId": "<published-fragment-id>",
"systemSource": "<optional-system-value>"
}
}
}
Das Präfix context.audiencePayload ist erforderlich. Unter diesem Schlüssel verschachtelte Attribute werden beim Ausführen der Live-Kampagne direkt den Spalten in der CSV-Zielgruppendatei zugeordnet.
Schritt 5: Testen und Validieren proof-validate
Bevor Sie die Kampagne aktivieren, verwenden Sie die Kampagnentestversand-API, um zu überprüfen, ob das dynamische Fragment korrekt aufgelöst wird und ob die gerenderte E-Mail-Ausgabe wie erwartet aussieht.
-
Lösen Sie über den
POST /campaigns/{id}/proofs-Endpunkt einen Testversandauftrag aus. Übergeben Sie in der Testversandanfrage untercontext.audiencePayload.fragmentIddie Fragment-ID, die Sie testen möchten. -
Fragen Sie den Status des Testversandauftrags mit dem
GET /campaigns/{id}/proofs/{proofId}-Endpunkt ab, bis der StatusSubmittedoderFailedist. -
Überprüfen Sie die zugestellte E-Mail, um sicherzustellen, dass der richtige Fragmentinhalt gerendert wird.
-
Wenn der Fragmentinhalt fehlt oder falsch ist, stellen Sie sicher, dass die Fragment-ID gültig ist, das Fragment veröffentlicht ist und alle erforderlichen Profilattribute vorhanden sind.
Weitere Informationen zu Kampagnen-API finden Sie in der Dokumentation zu Journey Optimizer-APIs.
Leitlinien und Einschränkungen guardrails
Die folgenden Einschränkungen gelten für die Verwendung dynamischer Fragmente:
-
Profilattributabdeckung zur Exportzeit: Das Fragment wird zur Laufzeit pro Profil ausgewählt. Die für das dynamische Fragment erforderlichen Profilattribute sind nicht im Voraus bekannt. Wenn das dynamische Fragment auf einem Profilattribut basiert, das nicht in der ursprünglichen Nachricht oder in einem statischen Fragment vorhanden war, auf das in der Nachricht verwiesen wird, wird dieses Feld im Exportpfad möglicherweise leer gerendert.
-
Keine vorherige Fragmentvalidierung: Fragmentbezogene Validierungen werden in diesem Fluss übersprungen. Falsche oder nicht veröffentlichte Fragment-IDs werden in der Benutzeroberfläche als Laufzeitbereitstellungsfehler anstatt als Validierungsfehler angezeigt.
-
Schemaänderung erforderlich für den Datensatzansatz: Für die Verwendung des Pfads „Suche nach ID“ muss das Datensatzschema zum Speichern und Übergeben der Fragment-ID aktualisiert sowie die erforderliche Bereinigung zum Einspeisen in die Nachrichten-Pipeline durchgeführt werden.
-
Attributerfassung für den Export: Stellen Sie sicher, dass alle im dynamischen Fragment verwendeten Attribute in der Nachricht oder in statischen Fragmenten erfasst werden, um ein leeres Rendering im Exportpfad zu verhindern.
Weitere Leitlinien für Fragmente finden Sie in diesem Abschnitt.
Umgang mit Fehlern error-handling
Wenn ein dynamisches Fragment zur Laufzeit nicht aufgelöst werden kann, wird ein Ausschlussereignis für das betroffene Profil generiert. Derzeit werden alle Fehler beim Rendern von Fragmenten pauschal als derselbe Fehlertyp kategorisiert.
So beheben Sie Fehler bei der Fragmentauflösung:
- Prüfen Sie die Versandberichte der Kampagne auf Ausschlussereignisse.
- Überprüfen Sie, ob die zur Laufzeit übergebene Fragment-ID mit einem veröffentlichten Fragment übereinstimmt.
- Vergewissern Sie sich, dass alle für das Fragment erforderlichen Profilattribute zum Versandzeitpunkt im Profil vorhanden sind.
- Verwenden Sie die Proofing-API um bestimmte Fragment-IDs zu testen, bevor Sie die Kampagne aktivieren.