0 votes
ago in SoSci Survey (dt.) by s278667 (115 points)
edited ago by SoSci Survey

Liebes Team,

ich habe eine mehrwellige Befragung (3 Wellen) und zum 1. MZP wird am ENDE des Fragebogens ein single Opt in (ID04) genutzt, um weitere Serienmails verschicken zu können.

// Einladungsmails
mailSchedule(value('ID04'), 1, strtotime('+ 30 days 8:00:00'), [ 'expire' => strtotime('+36 days 23:59:00')]); 
mailSchedule(value('ID04'), 2, strtotime('+ 60 days 8:00:00'), [ 'expire' => strtotime('+66 days 23:59:00')]);

// Erinnerungsmails
mailSchedule(value('ID04'), 4, strtotime('+ 33 days 8:00:00'), ['status' => 'incomplete'], [ 'expire' => strtotime('+36 days 23:59:00')]);
mailSchedule(value('ID04'), 6, strtotime('+ 36 days 8:00:00'), ['status' => 'incomplete'], [ 'expire' => strtotime('+36 days 23:59:00')]);
mailSchedule(value('ID04'), 5, strtotime('+ 63 days 8:00:00'), ['status' => 'incomplete'], [ 'expire' => strtotime('+66 days 23:59:00')]);
mailSchedule(value('ID04'), 7, strtotime('+ 66 days 8:00:00'), ['status' => 'incomplete'], [ 'expire' => strtotime('+66 days 23:59:00')]);

Allerdings tauchen in den Einladungen aktuell 55 Aussendungen bei 40 individuellen Adresseinträgen auf und ich frage mich, woran das liegen könnte.
Eine Idee war, dass ich vorher im Fragebogen ein Item abfrage, bei dem es wichtig ist, dass Personen, wenn sie einen Wert über 3 haben, nicht zu weiteren Befragungen eingeladen werden.
Dieses Item möchte ich aber vor der Abfrage der opt-in E-Mail stellen, da es zum Haupt-Fragebogen gehört.

if(value('P901_9') >= 3) {
    mailRevoke('ID04', 1);
    mailRevoke('ID04', 2);
    mailRevoke('ID04', 4);
    mailRevoke('ID04', 5);
    mailRevoke('ID04', 6);
    mailRevoke('ID04', 7);
}

Kann es sein, dass aufgrund dieses "vorgezogenen" Revokes Probleme bei dem Mailversand am Ende entstehen?

Oder haben Sie eine andere Idee, warum ich mehr Aussendungen als individuelle Adress-Einträge erhalte?
Vielen Dank!

1 Answer

+1 vote
ago by SoSci Survey (368k points)

Wenn Sie die Seite mit dem mailSchedule() mehrfach laden, z.B. weil die Seite mit F5 neu geladen wird oder weil sie wegen einer fehlenden Antwort erneut angezeigt wird, oder aufgrund eines "Zurück"-Klicks, dann werden mehrfach Aussendungen geplant. Das ist aber unproblematisch, denn es wird jeweils nur die zeitlich erste Aussendung an eine Person verschickt.

Kann es sein, dass aufgrund dieses "vorgezogenen" Revokes Probleme bei dem Mailversand am Ende entstehen?

Ein mailRevoke() kann nicht "vorgezogen" werden. Der Befehl löscht geplante Aussendungstermine. Wenn man erst mailRevoke() und dann mailSchedule() aufruft, dann wird die Mail verschickt.

Die korrekte Lösung - wenn ich Ihre Beschreibung richtig lese - wäre es, dass Sie das mailSchedule() nur für ein value('P901_09') < 3 aufrufen.

ago by s278667 (115 points)
Vielen Dank für diese schnelle und hilfreiche Antwort!

>Ein mailRevoke() kann nicht "vorgezogen" werden. Der Befehl löscht geplante Aussendungstermine. Wenn man erst mailRevoke() und dann mailSchedule() aufruft, dann wird die Mail verschickt.

Könnte ich ggf. den Code zu mailRevoke () einfach löschen, denn wenn eine Person value('P901_09') < 3 angibt, wird sie ohnehin zum Ende des Fragebogens geleitet (ohne single Opt In):

if (value('P901_09') == 3 || value('P901_09') == 4) {
  show('SU01');
 goToPage('end');}

Dankeschön!
ago by SoSci Survey (368k points)
Ja, das scheint mir die einfachste Lösung. Statt goToPage() möchten Sie sich vielleicht setStatus('screenout') ansehen.

Willkommen im Online-Support von SoSci Survey.

Hier bekommen Sie schnelle und fundierte Antworten von anderen Projektleitern und direkt von SoSci Survey.

→ Eine Frage stellen


Welcome to the SoSci Survey online support.

Simply ask a question to quickly get answers from other professionals, and directly from SoSci Survey.

→ Ask a Question

...