Comment effectuer des appels SOAP PushEvent et PushEvents | ACC

Dernière mise à jour : 2023-11-16

Cet article vous fournit une solution si vous souhaitez effectuer les opérations suivantes : PushEvent et PushEvents SOAP dans Adobe Campaign et Adobe Campaign Classic.

Description

Environnement

  • Campaign Classic
  • Campaign
  • Campaign Classic v7
  • Campaign v8

Problèmes/symptômes

Prérequis:

  • Télécharger l’interface utilisateur SOAP pour déclencher les appels

  • Téléchargement du fichier WSDL (< URL du serveur> /nl/jsp/schemawsdl.jsp?schema=nms:rtEvent) sur l’interface utilisateur SOAP

  • L’adresse IP de l’ordinateur de test doit être autorisée, sinon vous obtiendrez une erreur "Accès refusé".

  • Informations d’identification valides pour l’authentification (généralement l’utilisateur mc), à placer dans <urn:sessiontoken> login/password< /urn:sessiontoken>

Résolution

Événement push :

Cet appel doit être utilisé lors du déclenchement d’un événement unique sur l’instance RT.

Le modèle ("test" dans l’exemple) doit être publié correctement sur RT, à partir de l’instance de pilotage.

Dans < urn:domEvent> , un événement de type  < rtEvent> doit être défini avec type​étant le type de modèle et email​étant l’adresse email du destinataire.

Dans < ctx> , tous les attributs utilisés dans le modèle doivent être définis. Dans cet exemple, le modèle contient les éléments suivants :

< P >Your email is: <%= rtEvent.email %>< P > -> is using the attribute email directly as email in define within rtEvent

< P >Your first name: <%= rtEvent.ctx.firstName %>< P > -> is using ctx.firstname as ctx is an inner element of rtEvent

< P >Your last name: <%= rtEvent.ctx.lastName %>< P> -> is using ctx.lastname as ctx is an inner element of rtEvent

Exemple d'appel :

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:nms:rtEvent">
   < soapenv:Header/>
   < soapenv:Body>
      < urn:PushEvent>
         < urn:sessiontoken> login/password< /urn:sessiontoken>
         < urn:domEvent>
            < rtEvent type="test" email="xxx@gmail.com">
                < ctx>
                    < firstName> ABC< /firstName>
                   < lastName> DEF< /lastName>
                < /ctx>
            < /rtEvent>
         < /urn:domEvent>
      < /urn:PushEvent>
   < /soapenv:Body>
< /soapenv:Envelope>

Réponse de succès :

<SOAP-ENV:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns="urn:nms:rtEvent" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   < SOAP-ENV:Body>
      < PushEventResponse SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns="urn:nms:rtEvent">
         < plId xsi:type="xsd:long"> 0000000000< /plId>
      < /PushEventResponse>
   < /SOAP-ENV:Body>
< /SOAP-ENV:Envelope>

La réception d’un PIID signifie que l’événement a été reçu avec succès et qu’il est en cours de traitement.

PushEvents :

Cet appel doit être utilisé lors du déclenchement multiple sur l’instance RT.

Toutes les exigences sont les mêmes que le premier appel .

Plusieurs < rtEvent> doit être défini dans la variable <urn:domEventCollection> .

Exemple d'appel :

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:nms:rtEvent">
   < soapenv:Header/>
   < soapenv:Body>
      < urn:PushEvents>
         < urn:sessiontoken> ?< /urn:sessiontoken>
         < urn:domEventCollection>
            < !: vous pouvez saisir N’IMPORTE QUEL élément à ce stade. Plus d’un élément est requis :>
         < /urn:domEventCollection>
      < /urn:PushEvents>
   < /soapenv:Body>
< /soapenv:Envelope>

Remarque : Si un seul élément est défini dans cet appel, il sera reçu par l’instance RT, la réponse 200 OK, mais aucun événement ne sera déclenché, traité ou affiché dans les événements. et rien ne s'affichera sur les blogs.

Vous obtiendrez ce type de réponse, ce qui signifie qu'elle a atteint le RT, mais que rien ne se passera :

<SOAP-ENV:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns="urn:nms:rtEvent" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   < SOAP-ENV:Body>
      < PushEventsResponse SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns="urn:nms:rtEvent">
         < pdomIds xsi:type="ns:Element" SOAP-ENV:encodingStyle="http://xml.apache.org/xml-soap/literalxml">
            < rtEvent email="xxx@gmail.com" type="test"/>
         < /pdomIds>
      < /PushEventsResponse>
   < /SOAP-ENV:Body>
< /SOAP-ENV:Envelope>

La raison pour laquelle l’événement n’est pas déclenché est la suivante : ÉVÉNEMENTS PUSH fonctionne uniquement en cas d’événements multiples. Si l’appel n’est effectué qu’avec un seul événement, la variable ÉVÉNEMENT PUSH est requis.

Sur cette page