ACC: como fazer chamadas PushEvent e PushEvents SOAP

Descrição

Ambiente

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

Problemas/Sintomas
Pré-requisitos:

  • Baixar a interface SOAP para acionar as chamadas

  • Fazendo upload do WSDL (< url do servidor> /nl/jsp/schemawsdl.jsp?schema=nms:rtEvent) na interface SOAP

  • O IP do computador de teste deve ser autorizado, caso contrário, você receberá um erro "Acesso negado".

  • Credenciais válidas para autenticação (geralmente mc user), a serem colocadas em <urn:sessiontoken> login/senha< /urn:token de sessão>

Resolução

Evento de push:

Esta chamada deve ser usada ao acionar um único na instância de RT.

O modelo ("test" no exemplo ) precisa ser publicado com êxito no RT, a partir da instância de controle.

Entrada < urn:domEvent> , um evento do tipo  < rtEvent> deve ser definido com type sendo o tipo de modelo e email sendo o endereço de email do recipient.

Entrada < ctx> , todos os atributos usados no template devem ser definidos. Neste exemplo, o template contém isto:

< 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

Exemplo de chamada:

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

   < soapenv:Header/>

   < soapenv:Corpo>

      < urn:PushEvent>

         < urn:sessiontoken> login/senha< /urn:token de sessão>

         < urn:domEvent>

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

                < ctx>

                    < firstName> ABC< /firstName>

                   < lastName> DEF< /lastName>

                < /ctx>

            < /rtEvent>

         < /urn:domEvent>

      < /urn:PushEvent>

   < /soapenv:Corpo>

< /soapenv:Envelope>

Resposta de sucesso:

<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"> 000000000< /plId>

      < /PushEventResponse>

   < /SOAP-ENV:Body>

< /SOAP-ENV:Envelope>

Receber um PIID significa que o evento foi recebido com êxito e está sendo processado.

PushEvents:

Esta chamada deve ser usada ao acionar múltiplo eventos na instância de RT.

Todos os requisitos são os mesmos da primeira chamada.

Múltiplo < rtEvent> deve ser definido na variável <urn:domEventCollection> .

Exemplo de uma chamada:

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

   < soapenv:Header/>

   < soapenv:Corpo>

      < urn:PushEvents>

         < urn:sessiontoken> ?< /urn:token de sessão>

         < urn:domEventCollection>

            < !—Você pode inserir QUALQUER elemento neste ponto. Mais de 1 elemento é obrigatório —>

         < /urn:domEventCollection>

      < /urn:PushEvents>

   < /soapenv:Corpo>

< /soapenv:Envelope>

Nota: Se apenas 1 elemento for definido nesta chamada, ele será recebido pela instância de RT, resposta 200 OK, mas nenhum evento será acionado, processado ou exibido nos eventos e nada será exibido nos weblogs.

Você terá esse tipo de resposta, o que significa que ela atingiu o RT, mas que nada acontecerá:

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

O motivo pelo qual o evento não é acionado é que EVENTOS DE PUSH só funciona no caso de vários eventos. Se a chamada for feita com apenas um evento, a variável EVENTO DE PUSH chamada é necessária.

Nesta página