Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
en:create:functions:mailsend [19.04.2015 11:12] – [Example] alexander.ritteren:create:functions:mailsend [05.09.2020 13:26] – [Example2] sophia.schauer
Line 2: Line 2:
  
 ''void **mailSend**(string //email//, int //mailingID//, [int //time//], [string //link//], [string //C1//, string //C2//, string //C3//, string //C4//, string //C5//])'' ''void **mailSend**(string //email//, int //mailingID//, [int //time//], [string //link//], [string //C1//, string //C2//, string //C3//, string //C4//, string //C5//])''
 +
 +''void **mailSend**(string //email//, int //serialmailID//, array //settings//)''
  
 The ''mailSend()'' function sends the mailing with the //mailingID// ID to a specified email address straightaway or at a defined point in time. The email address does not have to -- in contrast to the ''[[:en:create:functions:mailResume]]'' and ''[[:en:create:functions:mailSchedule]]'' functions -- be known in the project's address list beforehand. The ''mailSend()'' function sends the mailing with the //mailingID// ID to a specified email address straightaway or at a defined point in time. The email address does not have to -- in contrast to the ''[[:en:create:functions:mailResume]]'' and ''[[:en:create:functions:mailSchedule]]'' functions -- be known in the project's address list beforehand.
Line 11: Line 13:
   * //link// (optional)\\ URL used for the ''%link%'' placeholder in the mailing. If no URL is specified,  the [[:en:survey:url]] is used without further specification of a questionnaire.   * //link// (optional)\\ URL used for the ''%link%'' placeholder in the mailing. If no URL is specified,  the [[:en:survey:url]] is used without further specification of a questionnaire.
   * //C1// to //C5// (optional)\\ If you have specified text here (optional), you can use this text in the mailing with the help of placeholders ''%custom1%'' to ''%custom5%''. When used with ''value()'', you can, for example, display responses from the ongoing interview in the email.   * //C1// to //C5// (optional)\\ If you have specified text here (optional), you can use this text in the mailing with the help of placeholders ''%custom1%'' to ''%custom5%''. When used with ''value()'', you can, for example, display responses from the ongoing interview in the email.
 +  * //settings// (optional)\\ If an array is passed as third parameter, the further settings are taken from this array. The following keys are possible:
 +    * '''sendtime''' -- corresponds to the parameter //time//
 +    * '''update''' -- SBy default an email is sent with every call of ''mailSend()''. If there is a value for '''update''' and an e-mail has already been scheduled for sending (not yet sent) in the survey project with ''mailSend()'', which contains the same value for '''update''', then the sending date and all data will be updated instead of preparing another e-mail. For example, if you only want to send one e-mail per interview, then use e.g. ''%%'update' => caseToken()%%''.
 +    * '''%link%''' -- corrsponds to the parameter //Link//
 +    * '''%custom1%''' to '''%custom5%''' -- Content for the placeholders of the same name in the serial mail
 +    * '''attach''' -- variable ID (string) or several identifiers (array) of uploaded files (question of type "upload file"), which should be attached to the e-mail. Specify a key in the array to specify the file name for the attachment.
      
  
Line 18: Line 26:
   * A maximum of 20 emails can be sent during an interview using ''mailSend()''.   * A maximum of 20 emails can be sent during an interview using ''mailSend()''.
      
-===== Example =====+===== Example =====
  
 A colleague's email address should be requested in the interview, but not saved. An invitation should be sent to this email address with a reference to the current interview (case number CASE). A colleague's email address should be requested in the interview, but not saved. An invitation should be sent to this email address with a reference to the current interview (case number CASE).
 +
 +**Note:** This use case is usually easier to implement with a question of type [[:en:create:questions:email]] and without any PHP code. Here only an alternative solution using ''mailSend()'' is shown.
  
  
Line 42: Line 52:
   mailSend($email, 2, 0, $link);   mailSend($email, 2, 0, $link);
 } }
 +</code>
 +
 +===== Example 2 =====
 +
 +A respondent fills out a test, the point value was calculated in variable ''$points'' and is to be sent now together with the participant identification (SERIAL) to a Mailadresse, so that the researcher is informed automatically about terminated tests.
 +
 +For this purpose a serial mail (ID 1) was created under **Send invitations** -> **Serial mails**, which has among others the following contents.
 +
 +<code>
 +respondents: %custom1%
 +Test result: %custom2%
 +</code>
 +
 +On the last page of the questionnaire the following PHP code would now be placed under the calculation of the points value (''$points'') to send the result to ''store@example.com''.
 +
 +<code php>
 +mailSend('store@example.com', 1, 0, ZERO, caseSerial(), $points);
 </code> </code>
en/create/functions/mailsend.txt · Last modified: 07.09.2022 21:00 by admin
 
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
Driven by DokuWiki