ACC: Cómo realizar llamadas SOAP PushEvent y PushEvents

Descripción

Entorno

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

Problemas/Síntomas
Requisitos previos:

  • Descargar la IU de SOAP para activar las llamadas

  • Cargar el WSDL (< url del servidor> /nl/jsp/schemawsdl.jsp?schema=nms:rtEvent) en la IU de SOAP

  • La IP del equipo de prueba debe estar autorizada; de lo contrario, obtendrá el error "Acceso denegado".

  • Credenciales válidas para la autenticación (generalmente usuario mc), que se va a colocar en <urn:sessiontoken> login/password< /urn:sessiontoken>

Resolución

Evento push:

Esta llamada se debe utilizar al activar una único en la instancia de RT.

La plantilla ("test" en el ejemplo) debe publicarse correctamente en RT, desde la instancia de control.

Entrada < urn:domEvent> , un evento de tipo  < rtEvent> debe definirse con type siendo el tipo de plantilla y email siendo la dirección de correo electrónico del destinatario.

Entrada < ctx> , se deben definir todos los atributos utilizados en la plantilla. En este ejemplo, la plantilla contiene lo siguiente:

< 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

Ejemplo de llamada:

<soapenv:Sobre xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:nms:rtEvent">

   < soapenv:Header/>

   < soapenv:Cuerpo>

      < 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:EventoPush>

   < /soapenv:Cuerpo>

< /soapenv:Sobre>

Respuesta de éxito:

<SOAP-ENV:Sobre 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:Cuerpo>

      < PushEventResponse SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns="urn:nms:rtEvent">

         < plId xsi:type="xsd:long"> 0000000000< /plId>

      < /PushEventResponse>

   < /SOAP-ENV:Cuerpo>

< /SOAP-ENV:Sobre>

Recibir un PID significa que el evento se ha recibido correctamente y se está procesando.

Eventos push:

Esta llamada se debe utilizar al activar múltiple eventos en la instancia de RT.

Todos los requisitos son los mismos que en la primera llamada.

Múltiple < rtEvent> debe definirse en la variable <urn:domEventCollection> .

Ejemplo de llamada:

<soapenv:Sobre xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:nms:rtEvent">

   < soapenv:Header/>

   < soapenv:Cuerpo>

      < urn:PushEvents>

         < urn:sessiontoken> ?< /urn:sessiontoken>

         < urn:domEventCollection>

            < !: se puede introducir CUALQUIER elemento en este punto. Se requiere más de 1 elemento —>

         < /urn:domEventCollection>

      < /urn:EventosPush>

   < /soapenv:Cuerpo>

< /soapenv:Sobre>

Nota: Si solo se define 1 elemento en esta llamada, se recibirá por instancia de RT, respuesta 200 OK, pero no se activará, procesará ni aparecerá ningún evento en los eventos y nada aparecerá en los weblogs.

Obtendrá este tipo de respuesta, lo que significa que llegó al RT, pero que no pasará nada:

<SOAP-ENV:Sobre 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:Cuerpo>

      < 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:Cuerpo>

< /SOAP-ENV:Sobre>

La razón por la que el evento no se activa es que EVENTOS PUSH solo funciona en caso de varios eventos. Si la llamada se realiza con un solo evento, la variable EVENTO PUSH se requiere la llamada de.

En esta página