Opvolgactie blok: Wachttijd

Met dit blok kun je de opvolgactie tijdelijk pauzeren, voor een vaste of variabele periode, voordat de campagne verder gaat. Binnen het blok zijn er drie opties:

  • Voer de opvolgactie uit na een vaste wachttijd: Stel een vaste periode in, zoals "10 minuten" of "2 dagen". Je kunt ook Smarty gebruiken om de wachttijd dynamisch te berekenen. De uitkomst moet een getal zijn dat past bij de gekozen eenheid. Via het selectievakje kun je overschakelen naar de Smarty-editor.

  • Voer de opvolgactie uit op een vast moment: Geef een vast of relatief tijdstip op waarop de opvolgactie wordt hervat. Ook hier kun je Smarty gebruiken, waarbij de uitkomst een datumtijd-string moet zijn. En ook hier kun je schakelen naar de Smarty-editor.

  • Voer de opvolgactie uit na een wachttijd die bepaald wordt door een JavaScript-conditie: Gebruik JavaScript om een moment te bepalen waarop de opvolgactie moet worden hervat. De uitkomst moet een getal zijn dat past bij de gekozen eenheid.

Gedrag bij overlap

Met de optie 'Gedrag bij overlap' kun je bepalen hoe opvolgacties worden afgehandeld wanneer er al een wachtende opvolgactie voor hetzelfde (sub)profiel actief is. Dit geeft je de mogelijkheid om meerdere events samen te voegen en slechts één actie uit te voeren.

Je kunt kiezen uit de volgende opties:

  • Alle events verwerken, zelfs als ze elkaar overlappen
  • Vervang het wachtende event door het nieuwe event en reset de wachttijd
  • Negeer het nieuwe event en ga verder met het wachtende event

Voorbeeld

Je hebt een opvolgactie op basis van de trigger 'Website paginaweergave', waarbij voor elke paginaweergave een subprofiel wordt aangemaakt en een e-mail wordt verzonden. In dit geval wil je echter voorkomen dat er bij elk paginabezoek direct een e-mail wordt verzonden.

Hiervoor kun je de optie 'Gedrag bij overlap' in het wachttijd-blok gebruiken en kiezen voor 'Vervang het wachtende event door het nieuwe en reset de wachttijd'. Wanneer je een wachttijd van 2 uur hebt ingesteld, wordt de e-mail pas 2 uur na de laatste paginaweergave verzonden. De wachtende opvolgacties van eerdere paginaweergaves worden geannuleerd.

Wanneer gaat de wachttijd in?

De wachttijd gaat in zodra het wachttijd-blok wordt bereikt in de opvolgactie. Als er meerdere wachttijd-blokken achter elkaar staan, worden de wachttijden opgeteld.

Tijdverschil: voorbeelden in Smarty

Aantal seconden tot morgen om 9 uur:

{assign var="tomorrow" value="tomorrow 09:00"|date_format:"%s"}
{assign var="now" value="now"|date_format:"%s"}
{$tomorrow - $now}

Aantal minuten tot het volgende kwartier:

{assign var="currentMinute" value="now"|date_format:"%M"}
{math equation="15 - (x % 15)" x=$currentMinute}

Tijdstip: voorbeelden in Smarty

Volgende verjaardag van een profiel:

{assign var="birthday" value=$profile.Geboortedatum|date_format:"%m-%d"}
{assign var="thisYear" value="now"|date_format:"%Y"}
{assign var="nextDate" value=$thisYear|cat:"-"|cat:$birthday}
{if strtotime($nextDate) < time()}
  {assign var="nextDate" value=($thisYear+1)|cat:"-"|cat:$birthday}
{/if}
{$nextDate} 09:00:00

Eén dag voor de volgende verjaardag:

{assign var="birthday" value=$profile.Geboortedatum|date_format:"%m-%d"}
{assign var="thisYear" value="now"|date_format:"%Y"}
{assign var="nextDate" value=$thisYear|cat:"-"|cat:$birthday}
{if strtotime($nextDate) < time()}
  {assign var="nextDate" value=($thisYear+1)|cat:"-"|cat:$birthday}
{/if}
{$nextDate|date_mod:"-1 day"} 09:00:00

Morgen om 9 uur:

tomorrow 09:00

Minstens vier uur wachten, maar alleen hervatten tijdens kantooruren:

{assign var="fourHoursLater" value="+4 hours"|date_format:"%Y-%m-%d %H:%M:%S"}
{assign var="hour" value=$fourHoursLater|date_format:"%H"}
{if $hour >= 9 and $hour < 17}
    {$fourHoursLater}
{elseif $hour < 9}
    {$fourHoursLater|date_format:"%Y-%m-%d"} 09:00:00
{else}
    {$fourHoursLater|date_format:"%Y-%m-%d"} +1 day 09:00:00
{/if}

Ondersteunde datumformaten

Bij gebruik van een tijdstip moet de invoer een datumtijd-string zijn die door onze parser wordt herkend. Ondersteunde voorbeelden zijn:

  • 2025-07-21 10:00:00
  • next Monday 14:00
  • tomorrow 9:00
  • +1 day
  • +4 hours
  • 2025-07-21
  • 2025-07-21 00:00