Automatizar com workflows

Atividade de gestão de conteúdo

A criação, edição e publicação de conteúdo pode ser automatizada usando um workflow configurado por meio da interface do cliente do Adobe Campaign.

A atividade Content management é acessada pela barra de ferramentas Tools do diagrama de workflow.

As propriedades da atividade são divididas em quatro etapas:

  • Content: permite inserir conteúdo existente ou criar conteúdo,
  • Update content: permite modificar o assunto do conteúdo ou atualizar o conteúdo por meio de um fluxo de dados XML,
  • Action to execute: permite salvar ou gerar conteúdo,
  • Transition: permite escolher se gera ou não uma transição de saída e a nomeia.

Conteúdo

  • Especificado pela transição

    O conteúdo a ser usado foi criado anteriormente. Os processos se referem à instância de conteúdo propagada pelo evento de entrada. O identificador de conteúdo é acessado por meio da variável "contentId" do evento.

  • Explícito

    Permite escolher o conteúdo criado anteriormente.

  • Calculado por um script

    Seleciona uma instância de conteúdo com base em um template JavaScript. O código a ser avaliado permite recuperar o identificador de conteúdo.

  • Novo, criado por meio de um template de publicação

    Cria um novo conteúdo por meio de um template de publicação. A instância de conteúdo será salva na pasta "cadeia de caracteres" preenchida.

Atualizar o conteúdo

  • Assunto

    Permite modificar o assunto da ação de delivery ao publicar.

  • Acesso aos dados de um feed XML

    O conteúdo é atualizado de um feed XML de uma fonte externa. Um URL deve ser inserido para que o download de dados ocorra.

    Uma folha de estilos XSL pode ser usada para transformar os dados XML de entrada.

Ação a ser executada

  • Salvar

    Salva o conteúdo criado ou modificado. O identificador do conteúdo salvo é propagado na variável "contentId" do evento de saída.

  • Gerar

    Gera os arquivos de saída para cada um dos modelos de transformação com uma publicação do tipo "Arquivo". A transição de saída é ativada para cada arquivo gerado, com os seguintes parâmetros: o identificador do conteúdo salvo na variável "contentId" e o nome do arquivo na variável "filename".

Transição

A opção Generate an output transition permite adicionar uma transição de saída à atividade Content management para vincular uma nova atividade à execução do workflow. Após verificar essa opção, insira um rótulo para a transição.

Exemplos

Automatizar a criação e o delivery de conteúdo

O exemplo a seguir automatiza a criação e o delivery de um bloco de conteúdo.

O conteúdo é configurado através da atividade "Gestão de conteúdo":

Uma nova instância de conteúdo é criada por meio do modelo de publicação e da pasta de cadeia de caracteres de conteúdo.

No nosso exemplo, sobrecarregamos o assunto do delivery. Ele será considerado em vez do inserido no template Delivery.

O conteúdo é preenchido automaticamente por um feed XML vindo do URL inserido:

<?xml version='1.0' encoding='ISO-8859-1'?>
<book name="Content automation test" date="2008/06/08" language="eng" computeString="Content automation test">
  <section id="1" name="Introduction">
    <page>Introduction to input forms.</page>
  </section>
</book>

O formato de dados não corresponde ao schema de dados inserido no template de publicação (cus:book no nosso exemplo); o elemento <section> deve ser substituído pelo elemento <chapter>. É necessário aplicar a folha de estilos "cus:book-workflow.xsl" para fazer as alterações necessárias.

Código de origem da folha de estilos XSLT usada:

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:output indent="yes" method="xml"  encoding="ISO-8859-1"/>

 <xsl:template match="text()|@*"/>

  <xsl:template match="*">
    <xsl:variable name="element.name" select="name(.)"/>
    <xsl:element name="{$element.name}">
      <xsl:copy-of select="text()|@*"/>
      <xsl:apply-templates/>
    </xsl:element>
  </xsl:template>

  <xsl:template match="book">
  <book name="test">
     <xsl:apply-templates/>
    <book>
 </xsl:template>

  <xsl:template match="section">
    <chapter>
      <xsl:for-each select="@*">
        <xsl:copy-of select="."/>
      </xsl:for-each>
       <xsl:apply-templates/>
    </chapter>
  </xsl:template>
  
</xsl:stylesheet>

A ação final da atividade é salvar a instância de conteúdo e prosseguir para a próxima tarefa.

O target é realizado por meio da atividade Query.

Uma atividade AND-join é adicionada para garantir que o delivery só iniciará quando a consulta do target e as atualizações de conteúdo forem concluídas.

A ação do delivery é configurada por meio da atividade Delivery:

Uma nova ação do delivery é criada com base em um template.

O template do delivery da atividade é usado para selecionar os modelos de transformação do template de publicação. A geração de conteúdo leva em consideração todos os templates HTML e Texto sem os templates do delivery ou aqueles referenciados com o mesmo que a atividade.

O target a ser enviado é digitado por meio do evento de entrada.

O conteúdo de delivery é preenchido por meio do evento de entrada.

A última etapa para concluir a atividade é preparar e depois iniciar o delivery.

Criar conteúdo para publicação posterior

Este exemplo cria um bloco de conteúdo e uma publicação de arquivo de lançamento após um atraso específico.

A primeira tarefa de Gestão de conteúdo cria uma instância de conteúdo.

OBSERVAÇÃO

A guia Publication da janela dos templates de transformação deve ser preenchida com o local do target a ser gerado.

Uma atividade de espera é adicionada para pausar a próxima transição por uma semana.

O conteúdo é inserido manualmente durante esse período de tempo.

A próxima tarefa inicia a geração de conteúdo.

O conteúdo a ser publicado é inserido por meio da transição de entrada.

A ação final é gerar esse conteúdo forçando o diretório de publicação.

A atividade Código JavaScript recupera o nome completo de cada arquivo gerado.

Criar a entrega e seu conteúdo

Esse exemplo usa o mesmo conceito do primeiro exemplo, mas cria a ação de delivery na primeira etapa.

A primeira tarefa Create delivery cria a ação de delivery.

A atividade fork permite o início do cálculo do alvo e a criação da instância de conteúdo ao mesmo tempo.

Depois que as tarefas são executadas, a caixa AND-join ativa a tarefa Delivery para iniciar o delivery criado anteriormente no conteúdo e definição de targeting.

A ação do delivery a ser iniciada é preenchida pela transição.

O target a ser enviado é digitado por meio do evento de entrada.

O conteúdo de delivery é preenchido por meio do evento de entrada.

A ação final da atividade é preparar e iniciar o delivery.

Importar conteúdo do FTP

Se o seu conteúdo do delivery estiver disponível em um arquivo HTML localizado em servidores FTP ou SFTP, é possível carregá-los facilmente nos deliveries do Adobe Campaign. Consulte esse exemplo.

Importar conteúdo do conector do Amazon Simple Storage Service (S3)

Se o conteúdo do delivery estiver localizado nos buckets do Amazon Simple Storage Service (S3), é possível carregá-los facilmente nos deliveries do Adobe Campaign. Consulte esse exemplo.

Atualização semiautomática

Os dados de conteúdo podem ser atualizados no modo "semiautomático". Os dados são recuperados de um feed XML via URL.

A ativação da recuperação de dados é realizada manualmente por meio do formulário de entrada.

O objetivo é declarar um campo de tipo <input> editBtn no formulário. Esse controle inclui uma zona de edição e um botão para iniciar o processamento.

A zona de edição permite que você preencha dados variáveis usados para construir o URL do feed XML de dados a serem recuperados.

O botão executa o método SOAP GetAndTransform preenchido na tag <input>.

A declaração de controle no formulário é a seguinte:

<input type="editbtn" xpath="<path>">
  <enter>
    <soapCall name="GetAndTransform" service="ncm:content">
      <param exprIn="<url>" type="string"/>
      <param exprIn="'xtk:xslt|<style sheet>'" type="string"/>
      <param type="DOMElement" xpathOut="<output path>"/>
    </soapCall>
  </enter>
</input>

O método GetAndTransform deve ser declarado no elemento <enter> da tag <input>. Essa tag assume como parâmetros p URL de recuperação de dados XML de uma expressão construída dinamicamente. O segundo parâmetro da função é opcional e faz referência a uma folha de estilos usada para uma transformação intermediária quando os dados XML de entrada não estão no mesmo formato do conteúdo.

A saída atualiza o conteúdo com base no caminho inserido no último parâmetro.

Exemplo: Para ilustrar este exemplo, começamos do schema "cus:book".

Um formulário de entrada de controle de edição de atualização semiautomático é adicionado:

<input label="File name" type="editbtn" xpath="/tmp/@name">
  <enter>
    <soapCall name="GetAndTransform" service="ncm:content">
      <param exprIn="'https://myserver.adobe.com/incoming/' + [/tmp/@name] + '.xml'" type="string"/>
      <param exprIn="'xtk:xslt|cus:book-workflow.xsl'" type="string"/>
      <param type="DOMElement" xpathOut="."/>
    </soapCall>
  </enter>
</input>

A zona de edição permite a inserção do nome do arquivo a ser recuperado. O URL é construído com base neste nome, por exemplo: https://myserver.adobe.com/incomin/data.xml

O formato dos dados a serem recuperados é o mesmo do exemplo 1 da automação do workflow. Usaremos a folha de estilos "cus:book-workflow.xsl" vista neste exemplo.

O resultado da execução do trabalho atualiza a instância do conteúdo do caminho '.'.

Nesta página