[ACC] - Comment effectuer des appels SOAP PushEvent et PushEvents

Description

Environnement

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

Problèmes/symptômes
Conditions préalables :

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

  • Téléchargement du WSDL (serveur url/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:sessiontokenlogin/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:sessiontokenlogin/password/urn:sessiontoken

         urn:domEvent

            rtEvent type="test" email="xxx@gmail.com"

                ctx

                    firstNameABC/firstName

                   lastNameDEF/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 doivent être définis 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