Invio di un’e-mail di compleanno

Introduzione

Questo caso d’uso illustra come pianificare l’invio periodico di un’e-mail a un elenco di destinatari il giorno del loro compleanno.

Per impostare questo caso di utilizzo, abbiamo creato il seguente flusso di lavoro di targeting:

Questo flusso di lavoro (esecuzione giornaliera) seleziona tutti i destinatari la cui data di nascita è la data corrente.

Questo caso di utilizzo si trova anche sotto forma di video. Per ulteriori informazioni, consultare il video Creazione di un flusso di lavoro.

A questo scopo, create una campagna e fate clic sulla scheda Targeting and workflows. Per ulteriori informazioni, consultare la sezione Creazione della destinazione principale in un flusso di lavoro.

Effettuate quindi le seguenti operazioni:

Pianificazione dell'invio

  1. Innanzitutto, aggiungete un Scheduler per attivare l'invio giornaliero. Nell'esempio seguente, la consegna viene creata ogni giorno alle 6 del mattino.

Identificazione dei destinatari il cui compleanno è

Dopo aver configurato l'attività Scheduler in modo che il flusso di lavoro inizi ogni giorno, identificate tutti i destinatari la cui data di nascita è uguale alla data corrente.

A questo scopo, eseguire i seguenti passaggi:

  1. Trascina un'attività Query nel flusso di lavoro e fai doppio clic su di essa.

  2. Fare clic sul collegamento Modifica query e selezionare Filtering conditions.

  3. Fare clic sulla prima cella della colonna Expression e fare clic su Edit expression per aprire l'editor di espressioni.

  4. Fare clic su Advanced selection per selezionare la modalità di filtro.

  5. Selezionare Edit the formula using an expression e fare clic su Next per visualizzare l'editor di espressioni.

  6. Nell'elenco delle funzioni, fare doppio clic su Day, accessibile tramite il nodo Date. Questa funzione restituisce il numero che rappresenta il giorno corrispondente alla data passata come parametro.

  7. Nell'elenco dei campi disponibili, fare doppio clic su Birth date. Nella sezione superiore dell'editor viene visualizzata la seguente formula:

    Day(@birthDate)
    

    Fare clic su Finish per confermare.

  8. Nell'editor di query, nella prima cella della colonna Operator, selezionare equal to.

  9. Quindi, fare clic sulla prima cella della seconda colonna (Value), quindi fare clic su Edit expression per aprire l'editor di espressioni.

  10. Nell'elenco delle funzioni, fare doppio clic su Day, accessibile tramite il nodo Date.

  11. Fare doppio clic sulla funzione GetDate per recuperare la data corrente.

    Nella sezione superiore dell'editor viene visualizzata la seguente formula:

    Day(GetDate())
    

    Fare clic su Finish per confermare.

  12. Ripetete questa procedura per recuperare il mese di nascita corrispondente al mese corrente. A questo scopo, fare clic sul pulsante Add e ripetere i passaggi da 3 a 10, sostituendo Day con Month.

    La query completa è la seguente:

Collegate il risultato dell'attività Query a un'attività Email delivery per inviare un'e-mail all'elenco di tutti i destinatari alla data del loro compleanno.

Inclusi i destinatari nati il 29 febbraio (facoltativo)

Se si desidera includere tutti i destinatari nati il 29 febbraio, questo caso d'uso illustra come pianificare l'invio periodico di un'e-mail a un elenco di destinatari per il loro compleanno, che si tratti o meno di un anno bisestile.

Le fasi di implementazione principali per questo caso di utilizzo sono:

  • Selezione dei destinatari
  • Selezione se si tratta o meno di un anno bisestile
  • Selezione dei destinatari nati il 29 febbraio

Per impostare questo caso di utilizzo, abbiamo creato il seguente flusso di lavoro di targeting:

Se l'anno corrente non è un anno bisestile e il flusso di lavoro viene eseguito il 1° marzo, è necessario selezionare tutti i destinatari che hanno avuto il loro compleanno ieri (29 febbraio) e aggiungerli all'elenco dei destinatari. In ogni altro caso non è richiesta alcuna azione aggiuntiva.

Passaggio 1: Selezione dei destinatari

Dopo aver configurato l'attività Scheduler in modo che il flusso di lavoro inizi ogni giorno, identificate tutti i destinatari il cui anniversario è il giorno corrente.

NOTA

Se l'anno corrente è un anno bisestile, tutti i beneficiari nati il 29 febbraio vengono automaticamente inclusi.

La selezione dei destinatari il cui compleanno corrisponde alla data corrente viene presentata nella sezione Identificazione dei destinatari il cui compleanno è.

Passaggio 2: Selezionare se si tratta di un anno bisestile

L'attività Test consente di verificare se si tratta di un anno bisestile e se la data corrente è il 1 marzo.

Se il test viene verificato (l'anno non è un anno bisestile - non c'è il 29 febbraio - e la data corrente è effettivamente il 1 marzo), la transizione True è abilitata e i destinatari nati il 29 febbraio saranno aggiunti alla consegna del 1 marzo. In caso contrario, la transizione False è abilitata e solo i destinatari nati alla data corrente riceveranno la consegna.

Copiate e incollate il codice seguente nella sezione Initialization script della scheda 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;
}

Aggiungere la seguente condizione nella sezione Conditional forks:

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

Passaggio 3: Selezionare i destinatari nati il 29 febbraio

Create un'attività Fork e collegate una delle transizioni in uscita a un'attività Query.

In questa query, selezionare tutti i destinatari la cui data di nascita è il 29 febbraio.

Combinate i risultati con un'attività Union.

Collegate i risultati dei due rami di attività Test a un'attività Email delivery per inviare un'e-mail all'elenco di tutti i destinatari al loro compleanno, anche a quelli nati il 29 febbraio durante un anno non bisestile.

Creazione di una consegna ricorrente

Aggiungete un'attività consegna periodica in base al modello di e-mail di compleanno che desiderate inviare.

ATTENZIONE

Affinché i flussi di lavoro possano essere eseguiti, è necessario avviare i flussi di lavoro tecnici relativi al pacchetto Campaign. Per ulteriori informazioni, consultare la sezione Elenco dei flussi di lavoro tecnici.

Se per la campagna sono abilitati i passaggi di approvazione, le consegne verranno inviate solo dopo che tali passaggi saranno stati confermati. Per ulteriori informazioni, consultare la sezione Scelta dei processi da approvare.

In questa pagina

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free