Envoi de notifications (Node.js)

Description

sendNotifications() est utilisé pour envoyer des notifications d’affichage ou de clic à Adobe Target pour la mesure et la création de rapports.

NOTE
Lorsqu’un objet execute avec les paramètres requis se trouve dans la requête elle-même, l’impression est incrémentée automatiquement pour les activités admissibles.

Les méthodes du SDK qui incrémenteront automatiquement une impression sont les suivantes :

  • getOffers()
  • getAttributes()

Lorsqu’un objet prefetch est transmis dans la requête, l’impression n’est pas automatiquement incrémentée pour les activités comportant des mbox dans l’objet prefetch. sendNotifications() doit être utilisé pour les expériences prérécupérées afin d’incrémenter les impressions et les conversions.

Méthode

create

TargetClient.sendNotifications(options: Object): Promise

Paramètres

options a la structure suivante :

Nom
Type
Requis
Par défaut
events
Objet
Oui
None

Exemple

Commençons par créer la requête d’API de diffusion Target Dpour la prérécupération de contenu pour les mbox home et product1.

Node.js

const prefetchMboxesRequest = {
  prefetch: {
    mboxes: [
      { name: "home" },
      { name: "product1" }
    ]
  }
};
// Next, we fetch the offers via Target Node.js SDK getOffers() API
const targetResponse = await targetClient.getOffers({ request: prefetchMboxesRequest });

Une réponse réussie contient un objet de réponse Target Delivery API, qui contient le contenu prérécupéré pour les mbox demandées. Un exemple d’objet targetResponse.response peut se présenter comme suit :

Node.js

{
  "status": 200,
  "requestId": "e8ac2dbf5f7d4a9f9280f6071f24a01e",
  "id": {
    "tntId": "08210e2d751a44779b8313e2d2692b96.21_27"
  },
  "client": "adobetargetmobile",
  "edgeHost": "mboxedge21.tt.omtrdc.net",
  "prefetch": {
    "mboxes": [
      {
        "index": 0,
        "name": "home",
        "options": [
          {
            "type": "html",
            "content": "HOME OFFER",
            "eventToken": "t0FRvoWosOqHmYL5G18QCZNWHtnQtQrJfmRrQugEa2qCnQ9Y9OaLL2gsdrWQTvE54PwSz67rmXWmSnkXpSSS2Q==",
            "responseTokens": {
              "profile.memberlevel": "0",
              "geo.city": "dublin",
              "activity.id": "302740",
              "experience.name": "Experience B",
              "geo.country": "ireland"
            }
          }
        ],
        "state": "J+W1Fq18hxliDDJonTPfV0S+mzxapAO3d14M43EsM9f12A6QaqL+E3XKkRFlmq9U"
      },
      {
        "index": 1,
        "name": "product1",
        "options": [
          {
            "type": "html",
            "content": "TEST OFFER 1",
            "eventToken": "t0FRvoWosOqHmYL5G18QCZNWHtnQtQrJfmRrQugEa2qCnQ9Y9OaLL2gsdrWQTvE54PwSz67rmXWmSnkXpSSS2Q==",
            "responseTokens": {
              "profile.memberlevel": "0",
              "geo.city": "dublin",
              "activity.id": "302740",
              "experience.name": "Experience B",
              "geo.country": "ireland"
            }
          }
        ],
        "state": "J+W1Fq18hxliDDJonTPfV0S+mzxapAO3d14M43EsM9f12A6QaqL+E3XKkRFlmq9U"
      }
    ]
  }
}

Notez les champs mbox name et state, ainsi que le champ eventToken, dans chacune des options de contenu Target. Elles doivent être fournies dans la requête sendNotifications(), dès que chaque option de contenu est affichée. Supposons que la mbox product1 ait été affichée sur un périphérique autre que le navigateur. La demande de notification s’affiche comme suit :

Node.js

const mboxNotificationRequest = {
  notifications: [{
    id: "1",
    timestamp: Date.now(),
    type: "display",
    mbox: {
      name: "product1",
      state: "J+W1Fq18hxliDDJonTPfV0S+mzxapAO3d14M43EsM9f12A6QaqL+E3XKkRFlmq9U"
    },
    tokens: [ "t0FRvoWosOqHmYL5G18QCZNWHtnQtQrJfmRrQugEa2qCnQ9Y9OaLL2gsdrWQTvE54PwSz67rmXWmSnkXpSSS2Q==" ]
  }]
};

Notez que nous avons inclus à la fois l’état mbox et le jeton d’événement correspondant à l’offre Target fournie dans la réponse de prérécupération. Une fois la requête de notifications créée, nous pouvons l’envoyer à Target via la méthode d’API sendNotifications() :

Node.js

const notificationResponse = await targetClient.sendNotifications({ request: mboxNotificationRequest });
recommendation-more-help
6906415f-169c-422b-89d3-7118e147c4e3