Como fazer chamadas PushEvent e PushEvents SOAP | ACC

Este artigo lhe dará uma solução alternativa se você quiser fazer chamadas com PushEvent e PushEvents SOAP no Adobe Campaign e no Adobe Campaign Classic.

Descrição description

Ambiente

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

Problemas/Sintomas

Pré-requisitos:

  • Baixar a interface do SOAP para acionar as chamadas

  • Carregando o WSDL (< url do servidor> /nl/jsp/schemawsdl.jsp?schema=nms:rtEvent) na interface do 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 usuário mc), a serem colocadas em <urn:sessiontoken> login/password< /urn:sessiontoken>

Resolução resolution

Evento de push:

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

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

Em < 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 destinatário.

Em < ctx> , todos os atributos usados no modelo 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:Body>
      < urn:PushEvent>
         < urn:sessiontoken> login/senha< /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>

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 vários eventos na instância de RT.

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

O múltiplo < rtEvent> deve ser definido em <urn:domEventCollection> .

Exemplo de uma chamada:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:nms:rtEvent">
   < soapenv:Header/>
   < soapenv:Body>
      < urn:PushEvents>
         < urn:sessiontoken>?< /urn:token de sessão>
         < urn:domEventCollection>
             <!—Você pode inserir QUALQUER elemento neste ponto. Mais de 1 elemento é Necessário —>
         < /urn:domEventCollection>
      < /urn:PushEvents>
   < /soapenv:Body>
< /soapenv:Envelope>

Observação: se apenas 1 elemento estiver 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 blogs.

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 é disparado é que EVENTOS DE PUSH só funcionam no caso de vários eventos. Se a chamada for feita com apenas um evento, a chamada EVENTO DE PUSH será necessária.

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f