This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | Next revisionBoth sides next revision | ||
en:survey:opt-in-live [24.05.2021 10:36] – sophia.schauer | en:survey:opt-in-live [24.05.2021 14:49] – sophia.schauer | ||
---|---|---|---|
Line 64: | Line 64: | ||
- | ===== Schritt | + | ===== Step 3: Automate Mail Delivery |
- | Prinzipiell könnten Sie mit der bisherigen Lösung schon arbeiten. Die E-Mail-Adressen werden | + | In principle, you could already work with the previous solution. The email addresses are stored |
- | Oftmals soll der Versand der Einladung aber automatisiert erfolgen. Entweder zu einem vorab definierten Zeitpunkt oder eine bestimmte Zeitspanne nach dem Aufrunf von A2. Dafür wird im Fragebogen | + | Often, however, the sending of the invitation should be automated. Either at a predefined time or a certain period of time after the call of A2. Therefore |
- | Fügen Sie auf der ersten Seite des Fragebogens | + | On the first page of the A2 questionnaire, |
<code php> | <code php> | ||
Line 76: | Line 76: | ||
</ | </ | ||
- | Der Befehl | + | The comand |
- | - Der erste spezifiziert den Adresseintrag, | + | - The first one specifies the address entry to which the invitation mail should be sent. After our participant has reached the questionnaire A2 through the (individual) confirmation link, SoSci Survey |
- | - Der zweite Parameter gibt an, welche Serienmail verschickt werden soll. Im Beispiel oben ist das die Serienmail mit der Nummer | + | - The second parameter indicates which serial mail should be sent. In the example above, this is the serial mail with the number |
- | - Der dritte Parameter gibt den Zeitpunkt an, wann die Serienmail verschickt werden soll. Dies kann entweder eine Zeitspanne | + | - The third parameter specifies the time when the serial mail should be sent. This can be either a time span in seconds or a Unix timestamp. In the example above the timestamp is 7 days (7 times 24 hours á 3600 seconds). Alternatively, |
- | **Tipp:** Tragen Sie zum Testen für den dritten Parameter einen kleinen Wert ein, z.B. 300 Sekunden | + | **Tip:** For testing, enter a small value for the third parameter, e.g. 300 seconds |
- | **Tipp:** Nutzen Sie zum Testen Wegwerf-Mailadressen | + | **Tip:** Use disposable email addresses for testing |
- | Man kann die Registrierung mit einer E-Mail-Adresse beliebig oft testen, sofern man die Adresse anschließend wieder aus der Adressliste löscht | + | You can test the registration with an e-mail address as often as you like, as long as you delete the address from the address list afterwards |
- | **Tipp:** Starten Sie den ersten Fragebogen unter **Fragebogen zusammenstellen** im Debug-Modus | + | **Tip:** Start the first questionnaire under **Create Questionnaire** in debug mode ({{: |
- | Wenn Sie nun den ersten Fragebogen aufrufen, dort eine E-Mail-Adresse eintragen und den Link in der Bestätigungsmail anklicken, dann können Sie unter **Einladungen verschicken** -> **Adressliste** den neuen Adresseintrag sehen. Und unter **Serienmail** sehen Sie auch, dass der Versand der Serienmail | + | If you now call up the first questionnaire, enter an e-mail address there and click on the link in the confirmation e-mail, then you can see the new address entry under **Send invitations** -> **Address list**. And under **Serial Mail** you can also see that the sending of the serial mail to an address is prepared. |
- | ==== Mehrere Serienmails | + | ==== Multiple Serial Mails ==== |
- | Wenn Sie mehrere Einladungen zu unterschiedlichen Zeitpunkten versenden möchten, dann wiederholen Sie den '' | + | If you want to send multiple invitations at different times, then simply repeat the '' |
<code php> | <code php> | ||
- | // Einladungsmails | + | // Invitation mails |
mailSchedule(false, | mailSchedule(false, | ||
mailSchedule(false, | mailSchedule(false, | ||
mailSchedule(false, | mailSchedule(false, | ||
- | // Erinnerungen | + | // Reminder |
mailSchedule(false, | mailSchedule(false, | ||
mailSchedule(false, | mailSchedule(false, | ||
Line 108: | Line 108: | ||
</ | </ | ||
- | Eine Erinnerungsmails erstellen Sie genauso wie eine Serienmail. Anschließend wählen Sie im Karteireiter | + | You create a reminder email in the same way as you create a serial email. Then, in the //Reminder/Follow-up mail// tab, under //Reminder/Follow-up mail for//, please select the serial mail to which you would like to remind the participant. |
- | ===== Hinweise für Teilnehmer | + | ===== Note for Respondants |
- | Im Fragebogen | + | In questionnaire |
- | * Je nachdem, welchen Provider oder Mailserver der Teilnehmer verwendet, kann sich die Zustellung der Bestätigungsmail verzögern | + | * Depending on which provider or mail server the subscriber is using, the delivery of the confirmation mail may be delayed |
- | * Manchmal verfangen sich Bestätigungsmails im Spam-Filter. | + | * Sometimes confirmation emails get caught in the spam filter. |
- | * Zur Fortsetzung der Befragung ist es notwendig, in der Bestätigungsmail auf den Bestätigungslink zu klicken. Falls man den Link nicht direkt anklicken kann (sehr selten), muss man ihn evtl. in die Adresszeile des Internet-Browsers kopieren. | + | * To continue the survey, it is necessary to click on the confirmation link in the confirmation email. If you are not able to click on the link directly |
- | ===== Manueller Versand der Einladungen | + | ===== Manual Sending of the Invitations |
- | Als Alternative zur automatisierten Vorbereitung des Versands von Serienmail Nr. 2 können Sie diese Serienmail auch manuell versenden | + | As an alternative to the automated preparation of sending serial mail No. 2, you can also send this serial mail manually |
- | Dieses Vorgehen ist sinnvoll, wenn alle Teilnehmer den Fragebogen ungefähr zur selben Zeit ausfüllen sollen. Zwar erstreckt sich der Erhebungszeitraum weiterhin über mehrere Tage, weil nicht jeder sofort auf die E-Mail reagiert | + | This procedure is useful if all participants are to complete the questionnaire at approximately the same time. Although the survey period still extends over several days, because not everyone responds to the e-mail immediately |
- | * Es werden eine Weile Adressen gesammelt | + | * Addresses are collected for a while -- and when there are enough addresses |
- | * Sollte die Rekrutierung danach noch forgesetzt werden, kann die Serienmail nach Bedarf erneut verschickt werden. Teilnehmer, welche die Serienmail schon erhalten haben, erhalten sie __nicht__ erneut. Sofern weitere Befragungswellen erfolgen sollen, können weitere Serienmails verschickt werden. | + | * If the recruitment continues after that, the serial mail can be sent again as needed. Participants who have already received the serial mail will __not__ receive it again. If further survey waves are to be carried out, additional serial e-mails can be sent. |
- | ===== Datensatz | + | ===== Dataset===== |
- | Im Datensatz haben Sie am Ende pro Teilnehmer drei Datenzeilen | + | In the dataset, you end up with three rows of data per participant |
- | - Antworten auf " | + | - Responses to " |
- | - Antworten auf " | + | - Responses to " |
- | - Antworten auf " | + | - Responses to " |
- | Wenn alle Antworten später | + | If all answers are later to be merged into one data row in the statistical software |
- | ===== Daten in einer Datenzeile | + | ===== Data in a Data Row ===== |
- | Statt unterschiedliche Fragebögen für " | + | Instead of using different questionnaires for " |
- | Das folgende Beispiel demonstriert die Verwendung von '' | + | The following example demonstrates the use of '' |
- | ==== Funktionen | + | ==== Fuctions |
- | * Teilnehmer erhalten automatisch nach einer bestimmter Zeit die Einladung zum nächsten Messzeitpunkt | + | * Participants automatically receive an invitation to the next measurement point (next questionnaire part) after a certain time and should not have access to the questions of the next questionnaire part before this time has expired. |
- | * Teilnehmer erhalten automatische Erinnerungsmails, | + | * Participants receive automatic reminder emails if they do not respond to the first invitation to the next measurement point within a certain time. |
- | ==== Vorbereitungen | + | ==== Preparations |
- | Alle Fragebogen-Teile werden | + | All questionnaire parts are arranged one after the other in one questionnaire. "Serial mail" |
- | Falls die E-Mail-Adressen der Teilnehmer __nicht__ vorab bekannt sind, wird ein zweiter Fragebogen mit einer Frage [[:de: | + | If the email addresses of the participants are __not__ known in advance, a second questionnaire with a question |
- | Legen Sie eine Serienmail | + | Create a serial mail (in the example |
- | Legen Sie zwei weitere Serienmails | + | Create two more serial mails (in the example |
- | Legen Sie drei weitere Serienmails | + | Create three more serial mails (in the example |
- | ==== PHP-Code für Zeitpunkt | + | ==== PHP Code for Time 1 ==== |
- | Die Werte (Zahlen) im PHP-Code sind entsprechend der jeweiligen Studie anzupassen, insbesondere Zeitabstände und die Serienmail-IDs. | + | The values |
- | Zwischen dem ersten und zweiten Fragebogen-Teil wird beim Fragebogen zusammenstellen eine zusätzlich Seite eingefügt | + | Between the first and the second part of the questionnaire an additional page is inserted |
- | * Sie versendet mittels | + | * It sends the invitation to the next questionnaire part by means of '' |
- | * Wenn der Teilnehmer die Seite erstmals aufruft | + | * When the participant first accesses the page (at the end of the first part of the questionnaire), it shows a farewell. |
- | * Wenn der Teilnehmer die Seite erneut aufruft | + | * When the participant accesses the page again (after receiving the invitation to the second questionnaire part) it directly redirects to the next page. |
- | **Wichtig:** Der Teilnehmer muss sich tatsächlich bis zu der Seite auf welcher der PHP-Code eingefügt wurde durchklicken. Ansonsten wird keine Einladungsmail verschickt. Ist die letzte Seite des ersten Fragebogens bereits eine Verabschiedung, kann auch diese Seite als Unterbrecherseite dienen. In diesem Fall benötigen Sie keine weitere Seite zwischen den beiden Fragebogen-Teilen. Beachten Sie dann aber bitte, dass die Verabschiedung __nicht__ | + | **Importanta:** The participant must actually click through to the page on which the PHP code was inserted. Otherwise, no invitation email will be sent. If the last page of the first questionnaire is already a farewell, this page can also serve as a breaker page. In this case, you do not need another page between the two questionnaire parts. But then please note that the goodbye is __not__ |
- | Beim **Fragebogen zusammenstellen** wird auf der Unterbrecherseite folgender | + | When **Compose Questionnaire**, the following |
<code php> | <code php> | ||
- | // Die Zeit des ersten Aufrufs der Unterbrecherseite wird in Variable | + | // The time of the first call of the breaker page is stored |
- | // isset() | + | // isset() |
if (!isset($timepart1)) { | if (!isset($timepart1)) { | ||
- | // Zeit speichern | + | // sve time |
$timepart1 = time(); | $timepart1 = time(); | ||
registerVariable($timepart1); | registerVariable($timepart1); | ||
- | // Einladung mit der Serienmail | + | // Send invitation with serial mail ID 1 at the second measurement point after 7 days |
- | // Der Zeitabstand wird jeweils | + | // The time interval is given in seconds: 7 x 24 x 3600 seconds |
mailResume(false, | mailResume(false, | ||
- | // Erste Erinnerungsmail mit Serienmail | + | // Send first reminder mail with serial mail ID 2 after 9 days |
- | // (d.h. zwei Tage nach der ersten Einladung zum zweiten Messzeitpunkt) | + | // (i.e. two days after the first invitation to the second measurement point). |
mailResume(false, | mailResume(false, | ||
- | // Zweite Erinnerungsmail mit Serienmail | + | // Send second reminder mail with serial mail ID 3 after 11 days |
- | // (d.h. vier Tage nach der ersten Einladung) | + | // (i.e. four days after the first invitation) |
mailResume(false, | mailResume(false, | ||
} | } | ||
- | // Prüfen, wie viel Zeit seit dem ersten Aufruf der Seite vergangen ist | + | // Check how much time has passed since the page was first accessed |
if ((time() - $timepart1) < 7 * 24 * 3600) { | if ((time() - $timepart1) < 7 * 24 * 3600) { | ||
- | // Unterbrecherseite anzeigen falls es weniger als 7 Tage sind, | + | // Show breaker page if it is less than 7 days, |
- | // damit Teilnehmer nicht schon früher die Fragen des zweiten Messzeitpunkts sehen können. | + | // so that participants cannot see the questions of the second measurement time point earlier. |
- | option(' | + | option(' |
- | option(' | + | option(' |
- | text(' | + | text(' |
} else { | } else { | ||
- | // Ist der Teilnehmer nach 7 Tagen zurückgekehrt und somit die aktuelle Zeit minus die neue Zeit-Variable | + | // If the participant has returned after 7 days and thus the current time minus the new time variable |
- | // größer als 7 Tage ist, dann wird die Befragung auf der nächsten Seite fortgesetzt | + | // is greater than 7 days, then the survey continues on the next page |
goToPage(' | goToPage(' | ||
} | } | ||
Line 217: | Line 217: | ||
- | ==== PHP-Code für Zeitpunkt | + | ==== PHP Code for Time 2 ==== |
- | Zwischen dem zweiten und dritten Fragebogen-Teil wird erneut eine Unterbrecherseite platziert oder alternativ auf der letzten Seite des zweiten Fragebogen-Teils. Der PHP-Code entspricht weitgehend dem obigen Code. Allerdings sorgt mailRevoke() | + | Between the second and third questionnaire part a breaker page is placed again or alternatively on the last page of the second questionnaire part. The PHP code is largely the same as the code above. However, |
<code php> | <code php> | ||
- | // Neue Zeit-Variable für die zweiten Zeitpunkt | + | // New time variable for the second time point |
if (!isset($timepart2)) { | if (!isset($timepart2)) { | ||
$timepart2 = time(); | $timepart2 = time(); | ||
registerVariable($timepart2); | registerVariable($timepart2); | ||
- | // Erinnerungsmails löschen, falls diese noch ausstehen | + | // Delete reminders if they are still pending |
mailRevoke(false, | mailRevoke(false, | ||
mailRevoke(false, | mailRevoke(false, | ||
- | // Einladung zum dritten Messzeitpunkt mit der Serienmail | + | // Send invitation to third measurement point with serial mail ID 4 after 7 days |
mailResume(false, | mailResume(false, | ||
- | // Erste Erinnerungsmail nach 9 Tagen | + | // First reminder after 9 days |
mailResume(false, | mailResume(false, | ||
- | // Zweite Erinnerungsmail nach 11 Tagen | + | // Second reminder after 11 days |
mailResume(false, | mailResume(false, | ||
} | } | ||
- | // Unterbrechung für 7 Tage | + | // Interruption for 7 days |
if ((time() - $timepart2) < 7 * 24 * 3600) { | if ((time() - $timepart2) < 7 * 24 * 3600) { | ||
option(' | option(' | ||
Line 250: | Line 250: | ||
- | ==== PHP-Code für Zeitpunkt | + | ==== PHP Code for Time 3 ==== |
- | Auf der vorletzten Seite des Fragebogens müssen noch die eventuell ausstehenden Erinnerungsmails gelöscht werden. | + | On the third to last page of the questionnaire, |
<code php> | <code php> | ||
Line 260: | Line 260: | ||
- | ==== Hinweise | + | ==== Notes ==== |
- | **Wichtig:** Platzieren Sie auf den Unterbrecherseiten keine Fragen | + | **Important:** Do not place any questions on the breaker pages -- the PHP code above only provides for text (thank you, goodbye, and hint for the next measurement point). |
- | **Hinweis:** Die Einladung zum dritten Fragebogen-Teil erfolgt relativ zu dem Zeitpunkt, wenn der Teilnehmer der Einladung zu Teil 2 gefolgt ist. Wenn er also Teil 2 erst 10 Tage nach Teil 1 ausfüllt, dann wird die Einladung zu Teil 3 erst 17 Tage nach dem Ausfüllen von Teil 1 verschickt. Alternativ könnte man alle (!) Einladungen und Erinnerungen gleich am Ende von Teil 1 einplanen. Der Filter am Ende von Teil 2 müsste sich dann auf '' | + | **Note:** The invitation to the third questionnaire part takes place relatively at the time when the participant has accepted the invitation to part 2. So if he completes Part 2 only 10 days after Part 1, then the invitation to Part 3 will not be sent until 17 days after Part 1 is completed. Alternatively, |
- | **Hinweis:** In der Adressliste ist der Teilnahmestatus für die Fortsetzungs- und Erinnerungs-Serienmails __nicht__ ersichtlich | + | **Note:** In the address list, the participation status for the continuation and reminder serial mails __not__ is visible |
- | **Tipp:** Man kann dieselben Erinnerungsmails mehrfach verwenden | + | **Tip:** You can use the same reminders multiple times (with a general reminder text). In the above example, you could send serial mail ID 2 for all reminders |