Enviar email de aniversário sending-a-birthday-email

Introdução introduction

Este caso de uso apresenta como planejar o envio de um e-mail recorrente para uma lista de destinatários no dia de seus aniversários.

Para configurar esse caso de uso, criamos o seguinte workflow para construção do target:

Esse workflow (execução diária) seleciona todos os destinatários que fazem aniversário na data atual.

Esse caso de uso também pode ser encontrado no formato de vídeo. Para obter mais informações, consulte o vídeo Criação de um workflow.

Para fazer isso, crie uma campanha e clique na guia Targeting and workflows. Para obter mais informações, consulte a seção Building the main target in a workflow.

Siga estas etapas:

Agendamento do envio configuring-the-scheduler

  1. Primeiro, adicione um Scheduler para acionar a entrega todo dia. No exemplo abaixo, a entrega é criada todos os dias às 6 da manhã.

Identificação de destinatários que fazem aniversário identifying-recipients-whose-birthday-it-is

Após configurar a atividade Scheduler para que o workflow inicie todos os dias, identifique todos os destinatários cuja data de nascimento for igual à data atual.

Para fazer isso, siga as etapas abaixo:

  1. Arraste e solte uma atividade Query no workflow e clique duas vezes nela.

  2. Clique no link Editar query e selecione Filtering conditions.

  3. Clique na primeira célula da coluna Expression e clique em Edit expression para abrir o editor de expressão.

  4. Clique em Advanced selection para selecionar o modo do filtro.

  5. Selecione Edit the formula using an expression e clique em Next para exibir o editor de expressão.

  6. Na lista de funções, clique duas vezes em Day, que é acessível no nó Date. Essa função retorna o número que representa o dia correspondente à data passada como parâmetro.

  7. Na lista de campos disponíveis, clique duas vezes em Birth date. A seção superior do editor exibe a seguinte fórmula:

    code language-none
    Day(@birthDate)
    

    Clique em Finish para confirmar.

  8. No editor de consultas, na primeira célula da coluna Operator, selecione equal to.

  9. Em seguida, clique na primeira célula da segunda coluna (Value) e clique em Edit expression para abrir o editor de expressão.

  10. Na lista de funções, clique duas vezes em Day, que é acessível no nó Date.

  11. Clique duas vezes na função GetDate para recuperar a data atual.

    A seção superior do editor exibe a seguinte fórmula:

    code language-none
    Day(GetDate())
    

    Clique em Finish para confirmar.

  12. Repita este procedimento para recuperar o mês de nascimento correspondendo ao mês atual. Para fazer isso, clique no botão Add e repita as etapas de 3 a 10, substituindo Day por Month.

    A query completa é a seguinte:

Vincule o resultado da atividade Query a uma atividade Email delivery para enviar um email para a lista de todos os destinatários aniversariantes.

Incluindo destinatários nascidos em 29 de fevereiro (opcional) including-recipients-born-on-february-29th--optional-

Se desejar incluir todos os destinatários que nasceram em 29 de fevereiro, este caso de uso apresentará como planejar o envio de um e-mail recorrente para uma lista de destinatários em seus aniversários, seja um ano bissexto ou não.

As principais etapas de implementação para este caso de uso são:

  • Seleção de destinatários
  • Seleção se é um ano bissexto ou não
  • Seleção de todos os destinatários nascidos em 29 de fevereiro

Para configurar esse caso de uso, criamos o seguinte workflow para construção do target:

Se o ano atual não for um ano bissexto e o workflow for executado em 1º de março, precisamos selecionar todos os destinatários que teriam seu aniversário no dia anterior (29 de fevereiro) e adicioná-los à lista de destinatários. Em qualquer outro caso, nenhuma ação adicional é necessária.

Etapa 1: Seleção dos destinatários step-1--selecting-the-recipients

Após configurar a atividade Scheduler para que o workflow inicie todos os dias, identifique todos os destinatários cujos aniversários são no dia atual.

NOTE
Se o ano atual for um ano bissexto, todos os destinatários nascidos no 29 de fevereiro serão incluídos automaticamente.

Selecionar destinatários cujo aniversário corresponde à data atual é apresentado na seção Identifying recipients whose birthday it is.

Etapa 2: Selecionar se é um ano bissexto ou não step-2--select-whether-or-not-it-is-a-leap-year

A atividade Test permite verificar se é um ano bissexto e se a data atual é 1º de março.

Se o teste for verificado (o ano não é um ano bissexto, não há 29 de fevereiro e a data atual é de fato 1º de março), a transição True é habilitada e os destinatários nascidos em 29 de fevereiro serão adicionados à entrega de 1º de março. Caso contrário, a transição False será ativada e somente os destinatários nascidos na data atual receberão a entrega.

Copie e cole o código abaixo na seção Initialization script da guia Advanced.

function isLeapYear(iYear)
{
    if(iYear/4 == Math.floor(iYear/4))
    {
        if(iYear/100 != Math.floor(iYear/100))
        {
            // Divisible by 4 only -> Leap Year
            return 1;
        }
        else
        {
            if(iYear/400 == Math.floor(iYear/400))
            {
                // Divisible by 4, 100 and 400 -> Leap year
                return 1;
            }
        }
    }
    // all others: no leap year
    return 0;
}

// Return today's date and time
var currentTime = new Date()
// returns the month (from 0 to 11)
var month = currentTime.getMonth() + 1
// returns the day of the month (from 1 to 31)
var day = currentTime.getDate()
// returns the year (four digits)
var year = currentTime.getFullYear()

// is current year a leap year?
vars.currentIsALeapYear = isLeapYear(year);

// is current date the first of march?
if(month == 3 && day == 1) {
  // today is 1st of march
vars.firstOfMarch = 1;
}

Adicione a seguinte condição na seção Conditional forks:

vars.currentIsALeapYear == 0 && vars.firstOfMarch == 1

Etapa 3: Selecionar todos os destinatários nascidos em 29 de fevereiro step-3--select-any-recipients-born-on-february-29th

Crie uma atividade Fork e vincule uma das transições de saída a uma atividade Query.

Nesta query, selecione todos os destinatários cujas datas de nascimento são 29 de fevereiro.

Combine os resultados com uma atividade Union.

Vincule os resultados das duas ramificações de atividade Test a uma atividade Email delivery para enviar um email para a lista de todos os seus destinatários aniversariantes, até mesmo àqueles que nasceram em 29 de fevereiro durante um ano não bissexto.

Criação de uma entrega recorrente creating-a-recurring-delivery-in-a-targeting-workflow

Adicione uma atividade de Entrega recorrente com base no modelo de email de aniversário que você deseja enviar.

CAUTION
Para que os fluxos de trabalho sejam executados, os fluxos de trabalho técnicos relacionados ao pacote do Campaign devem ser iniciados. Para obter mais informações, consulte a seção Lista de fluxos de trabalho técnicos.
Se as etapas de aprovação estiverem habilitadas para a campanha, as remessas serão enviadas apenas quando essas etapas tiverem sido confirmadas. Para obter mais informações, consulte a seção Choosing the processes to be approved .

recommendation-more-help
601d79c3-e613-4db3-889a-ae959cd9e3e1