Externe Daten

Dieses Kapitel beschreibt, wie Sie mit Feldfunktionen externe Daten verarbeiten können.

Verwenden Sie Ihre spezifischen Daten und Empfängerlistenfelder, und testen Sie die Feldfunktionen, bevor Sie sie in einem Mailing verwenden.

JSON-String im Mailing als Text darstellen

Wenn Sie Daten mittels APISteht für „Application Programming Interface“, auch Programmierschnittstelle. Die API gibt an, wie Softwarekomponenten miteinander interagieren sollen, z. B. wenn auf Datenbanken oder Computerhardware zugegriffen wird. Sie vereinfacht außerdem die Programmierung von grafischen Benutzeroberflächen. APIs haben oft die Form von Bibliotheken mit Angaben zu Routinen, Datenstrukturen, Objektklassen und Variablen. abrufen und als JSON-String speichern, können Sie den Inhalt mit dem folgenden Velocity-Code als Text darstellen:

#set ($jsonContent = $json.readFromString(${jsonString}))

Wenn Empfängerlistenfelder Daten als JSON enthalten, können Sie den Inhalt mit dem folgenden Velocity-Code als Text darstellen:

#set ($jsonContent = $json.readFromString($!{user.data.RECIPIENTLISTFIELD}))

Beispiel

Sie haben eine Empfängerliste mit einem Feld custom im Textformat, das folgenden JSON-String enthält:

{"clearname": "Max Mustermann", "unsubscribelink": "http://www.example.com/unsubscribe/user-id-1234"}

Im Mailing können Sie den JSON-String mittels Velocity-Code wie folgt verwenden:

#set ($jsonContent = $json.readFromString($!{user.data.custom}))
Hallo ${jsonContent.clearname}, um dich vom Newsletter abzumelden, klicke <a href="${jsonContent.unsubscribelink}">hier</a>.

Post-Click-Daten ausgeben

Mit Velocity können Sie auf folgende Post-Click-Daten zugreifen und diese im Mailing ausgeben:

  • service ("name_of_service")
  • stringValue("x")
    • is()
    • isNot()
  • floatValue("X")
    • isGreaterThan("y")
    • isLessThan("y")
    • isGreaterThanOrEqualTo("y")
    • isLessThanOrEqualTo("y")

Sie können mit Velocity-Feldfunktionen nur die zeitlich aktuellsten Post-Click-Daten ausgeben. Ältere Daten können Sie nicht ausgeben.

Beispiel

Mit dem folgenden Velocity-Code geben Sie den Wert für gvalue10 im Service serviceName aus:

#set($strGvalue = $!postClick.find().where().service().is("serviceName").getStringResult(10))
$strGvalue