Envoi de notifications (Java)

Description

sendNotifications() est utilisé pour envoyer des notifications d’affichage ou de clic à Adobe Target pour les mesures et les rapports.

NOTE
Lorsqu’une execute avec les paramètres requis se trouve dans la requête elle-même, l’impression sera 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’une prefetch est transmis dans la requête, l’impression n’est pas automatiquement incrémentée pour les activités comportant des mbox dans la 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

ResponseStatus TargetClient.sendNotifications(TargetDeliveryRequest request)

Exemple

Commençons par construire le Target Delivery API demande de prérécupération de contenu pour la variable home et product1 mbox.

Prérécupération

List<MboxRequest> mboxRequests = new ArrayList<>();
mboxRequests.add((MboxRequest) new MboxRequest().name("home").index(1));
mboxRequests.add((MboxRequest) new MboxRequest().name("product1").index(2));
PrefetchRequest prefetchMboxesRequest = new PrefetchRequest().setMboxes(mboxRequests)

// Next, we fetch the offers via Target Java SDK getOffers() API
TargetDeliveryResponse targetResponse = targetJavaClient.getOffers(targetDeliveryRequest);

Une réponse réussie contient une API de diffusion Target objet de réponse, qui contient du contenu prérécupéré pour les mbox demandées. Un exemple targetResponse.response peut se présenter comme suit :

Réponse

{
  "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 la mbox name et state , ainsi que la variable eventToken , dans chacun des Target options de contenu. Elles doivent être fournies dans la variable sendNotifications() dès que chaque option de contenu est affichée. Supposons que la variable product1 mbox s’affiche sur un périphérique autre que le navigateur. La demande de notification se présente comme suit :

Demande

TargetDeliveryRequest mboxNotificationRequest = TargetDeliveryRequest.builder().notifications(new ArrayList() {{
    add(new Notification()
            .id("1")
            .timestamp(System.currentTimeMillis())
            .type(MetricType.DISPLAY)
            .mbox(new NotificationMbox()
                    .name("product1")
                    .state("J+W1Fq18hxliDDJonTPfV0S+mzxapAO3d14M43EsM9f12A6QaqL+E3XKkRFlmq9U")
            )
            .tokens(Arrays.asList(new String[]{"t0FRvoWosOqHmYL5G18QCZNWHtnQtQrJfmRrQugEa2qCnQ9Y9OaLL2gsdrWQTvE54PwSz67rmXWmSnkXpSSS2Q=="}))
    );
}}).build();

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

Réponse

ResponseStatus notificationResponse = targetJavaClient.sendNotifications(mboxNotificationRequest);
recommendation-more-help
6906415f-169c-422b-89d3-7118e147c4e3