Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
de:create:functions:mailsend [05.10.2018 14:34] – [Beispiel 1] adminde:create:functions:mailsend [08.11.2021 09:50] (aktuell) admin
Zeile 2: Zeile 2:
  
 ''void **mailSend**(string //E-Mail//, int //SerienmailID//, [int //Zeitpunkt//], [string //Link//], [string //C1//, string //C2//, string //C3//, string //C4//, string //C5//])'' ''void **mailSend**(string //E-Mail//, int //SerienmailID//, [int //Zeitpunkt//], [string //Link//], [string //C1//, string //C2//, string //C3//, string //C4//, string //C5//])''
 +
 +''void **mailSend**(string //E-Mail//, int //SerienmailID//, array //Einstellungen//)''
  
 Die Funktion ''mailSend()'' verschickt die Serienmail mit der Kennung //SerienmailID// sofort oder zu einem definierten Zeitpunkt an eine vorgegebene E-Mail-Adresse. Die E-Mail-Adresse muss -- anders als bei den Funktionen ''[[:de:create:functions:mailResume]]'' und ''[[:de:create:functions:mailSchedule]]'' -- nicht in der Adressliste des Befragungsprojekts bekannt sein. Die Funktion ''mailSend()'' verschickt die Serienmail mit der Kennung //SerienmailID// sofort oder zu einem definierten Zeitpunkt an eine vorgegebene E-Mail-Adresse. Die E-Mail-Adresse muss -- anders als bei den Funktionen ''[[:de:create:functions:mailResume]]'' und ''[[:de:create:functions:mailSchedule]]'' -- nicht in der Adressliste des Befragungsprojekts bekannt sein.
Zeile 10: Zeile 12:
   * //Link// (optional)\\ Der Link, der in der Serienmail für den Platzhalter ''%link%'' verwendet wird. Falls kein Link angegeben wird, wird der [[:de:survey:url]] ohne weitere Spezifikation eines Fragebogens verwendet.   * //Link// (optional)\\ Der Link, der in der Serienmail für den Platzhalter ''%link%'' verwendet wird. Falls kein Link angegeben wird, wird der [[:de:survey:url]] ohne weitere Spezifikation eines Fragebogens verwendet.
   * //C1// bis //C5// (optional)\\ Wenn Sie hier einen Text angeben (optional), können Sie diesen Text mithilfe der Platzhalter ''%custom1%'' bis ''%custom5%'' in der Serienmail verwenden. In Verbindung mit ''value()'' können Sie beispielsweise Antworten aus dem laufenden Interview in der E-Mail anzeigen.   * //C1// bis //C5// (optional)\\ Wenn Sie hier einen Text angeben (optional), können Sie diesen Text mithilfe der Platzhalter ''%custom1%'' bis ''%custom5%'' in der Serienmail verwenden. In Verbindung mit ''value()'' können Sie beispielsweise Antworten aus dem laufenden Interview in der E-Mail anzeigen.
 +  * //Einstellungen// (optional)\\ Wenn als dritter Parameter ein Array übergeben wird, so werden die weiteren Einstellungen aus diesem Array entnommen. Folgende Schlüssel sind möglich:
 +    * ''%%'sendtime'%%'' -- entspricht dem Parameter //Zeitpunkt//
 +    * ''%%'update'%%'' -- Standardmäßig wird mit jedem Aufruf von ''mailSend()'' eine E-Mail versendet. Wenn für '''update''' ein Wert festgelegt ist und es wurde in dem Befragungsprojekt mit ''mailSend()'' bereits eine E-Mail für den Versand geplant (noch nicht versandt), welche denselben Wert für '''update''' enthält, dann wird der Versandtermin und alle Daten aktualisiert anstatt eine weitere E-Mail vorzubereiten. Wenn Sie z.B. nur eine E-Mail pro Interview versenden möchten, dann verwenden Sie z.B. ''%%'update' => caseToken()%%''.
 +    * ''%%'%link%'%%'' -- entspricht dem Parameter //Link//
 +    * ''%%'%custom1%'%%'' bis '''%custom5%''' -- Inhalte für die gleichnamigen Platzhalter in der Serienmail
 +    * ''%%'attach'%%'' -- Variablenkennung (string) oder mehrere Kennungen (array) hochgeladener Dateien (Frage vom Typ "Datei hochladen"), welche an die E-Mail angehängt werden sollen. Geben Sie im Array einen Schlüssel an, um den Dateinamen für den Dateianhang festzulegen.
 +    * ''%%'unique'%%'' -- Ein beliebiger Wert, welcher den Inhalt und/oder Empänger der Nachricht bezeichnet. Standardmäßig dient die E-Mail-Adresse als Merkmal für den Versand. Wenn ein benutzerdefinierter Unique-Wert angegeben wird, kann dieselbe Serienmail mehrfach an dieser E-Mailadresse versendet werden. Voraussetzung ist, dass für jeden Versand an anderer Unique-Wert angegeben wird.
 +
  
 ===== Hinweise ===== ===== Hinweise =====
  
-  * Mit der Funktion ''mailSend()'' kann pro Interview eine bestimmte Serienmail nur einmal an eine bestimmte E-Mail-Adresse verschickt werden.+  * Mit der Funktion ''mailSend()'' kann pro Interview eine bestimmte Serienmail nur einmal an eine bestimmte E-Mail-Adresse verschickt werden. Sie können dies mittels ''%%'unique'%%'' anpassen.
   * Innerhalb eines Interviews können mittels ''mailSend()'' maximal 20 E-Mails verschickt werden.   * Innerhalb eines Interviews können mittels ''mailSend()'' maximal 20 E-Mails verschickt werden.
 +  * Die E-Mail-Adressen werden zusammen mit einem Zeitstempel in den Logfiles des Servers gespeichert. Die Aufbewahrungszeit der Logfiles ist abhängig von der Konfiguration des Servers.
  
-===== Beispiel 1 =====+===== Beispiel: Info an Projektleitung ===== 
 + 
 +Jedes mal wenn ein Interview abgeschlossen wir, soll eine E-Mail an die Projektleitung ''leitung@example.com'' verschickt werden. 
 + 
 +  * Erstellen Sie eine Serienmail unter **Einladungen verschicken** -> **Serienmails** 
 +  * Fügen Sie dafür vor der "Letzten Seite" im Fragebogen eine weitere Seite ein. Auf dieser platzieren Sie folgenden PHP-Code. 
 + 
 +<code php> 
 +mailSend('leitung@example.com', 1); 
 +</code> 
 + 
 +Die ''1'' muss natürlich gegen die Kennung/Nummer der Serienmail ersetzt werden, welche verschickt werden soll. 
 + 
 + 
 +===== Beispiel: Daten an Projektleitung ===== 
 + 
 +Ein Teilnehmer füllt einen Test aus, der Punktwert wurde in Variable ''$points'' berechnet und soll nun zusammen mit der Teilnehmern-Kennung (SERIAL) an eine Mailadresse geschickt werden, damit der Forscher automatisch über abgeschlossene Tests informiert wird. 
 + 
 +Dafür wurde unter **Einladungen verschicken** -> **Serienmails** eine Serienmail (ID 1) angelegt, die u.a. folgenden Inhalte hat: 
 + 
 +<code> 
 +Teilnehmer: %custom1% 
 +Testergebnis: %custom2% 
 +</code> 
 + 
 +Auf der letzten Seite des Fragebogens würde nun unter der Berechnung des Punktswerts (''$points'') folgender PHP-Code platziert, um das Ergebnis an ''store@example.com'' zu senden. 
 + 
 +<code php> 
 +mailSend('store@example.com', 1, 0, NULL, caseSerial(), $points); 
 +</code> 
 + 
 +===== Beispiel: E-Mail-Adresse nicht speichern =====
  
 Im Interview soll die E-Mail-Adresse eines Kollegen abgefragt, aber nicht gespeichert werden. An die E-Mail-Adresse soll eine Einladung mit Verweis auf das aktuelle Interview (Fall-Nummer CASE) verschickt werden. Im Interview soll die E-Mail-Adresse eines Kollegen abgefragt, aber nicht gespeichert werden. An die E-Mail-Adresse soll eine Einladung mit Verweis auf das aktuelle Interview (Fall-Nummer CASE) verschickt werden.
Zeile 39: Zeile 81:
   mailSend($email, 2, 0, $link);   mailSend($email, 2, 0, $link);
 } }
-</code> 
- 
- 
-===== Beispiel 2 ===== 
- 
-Ein Teilnehmer füllt einen Test aus, der Punktwert wurde in Variable ''$points'' berechnet und soll nun zusammen mit der Teilnehmern-Kennung (SERIAL) an eine Mailadresse geschickt werden, damit der Forscher automatisch über abgeschlossene Tests informiert wird. 
- 
-Dafür wurde unter **Einladungen verschicken** -> **Serienmails** eine Serienmail (ID 1) angelegt, die u.a. folgenden Inhalte hat: 
- 
-<code> 
-Teilnehmer: %custom1% 
-Testergebnis: %custom2% 
-</code> 
- 
-Auf der letzten Seite des Fragebogen würde nun unter der Berechnung des Punktswerts (''$points'') folgender PHP-Code platziert, um das Ergebnis an ''store@example.com'' zu senden. 
- 
-<code php> 
-mailSend('store@example.com', 1, 0, NULL, caseSerial(), $points); 
 </code> </code>
de/create/functions/mailsend.1538742862.txt.gz · Zuletzt geändert: 05.10.2018 14:34 von admin
 
Falls nicht anders bezeichnet, ist der Inhalt dieses Wikis unter der folgenden Lizenz veröffentlicht: CC Attribution-Share Alike 4.0 International
Driven by DokuWiki