Changes between Version 6 and Version 7 of VolunteerRecruit


Ignore:
Timestamp:
Apr 30, 2007, 9:05:41 PM (17 years ago)
Author:
Nicolas
Comment:

Changed some formatting, fixed a few typos. And edited the sample HTML (like it or not).

Legend:

Unmodified
Added
Removed
Modified
  • VolunteerRecruit

    v6 v7  
    3636    * ''Friend-to-friend''. These are sent by participants to their friends and family, to tell them about your project and urge them to join. The sender can add an optional message.
    3737
    38 Effective use of all types of email is critical to maintaining and growing your participant base. In the absence of any email, participation typically decreases by a few percent every month. BOINC supplies the framework, but you must write the actual emails, or modify BOINC's samples as needed for your project. .
     38Effective use of all types of email is critical to maintaining and growing your participant base. In the absence of any email, participation typically decreases by a few percent every month. BOINC supplies the framework, but you must write the actual emails, or modify BOINC's samples as needed for your project.
    3939
    4040The newsletter and reminder scripts provide the following features:
     
    4242    * They let you send different emails to different 'classes' of participants. For example, you can send a different newsletter to participants who haven't computed for your project in a while.
    4343    * They let you personalize emails, e.g. by inserting the participant's name or their total credit.
    44     * They provide a mechanism for inserting a secure 'opt-out' link. Note: You should ALWAYS include an 'opt-out' link at the bottom of emails (both HTML and text). In may be illegal for you to do a mass email without one. Make sure you test this link.
    45 
    46 The scripts requires that you use [http://phpmailer.sourceforge.net/ PHPMailer], a PHP function for sending mail that's more full-featured than the one built into PHP. Download it, put it in html/inc, and set the USE_PHPMAILER, PHPMAILER_HOST, and PHPMAILER_MAILER variables in [WebConfig your project.inc file].
     44    * They provide a mechanism for inserting a secure 'opt-out' link. Note: You should ALWAYS include an 'opt-out' link at the bottom of emails (both HTML and text). It may be illegal for you to do a mass email without one. Make sure you test this link.
     45
     46The scripts requires that you use [http://phpmailer.sourceforge.net/ PHPMailer], a PHP function for sending mail that is more full-featured than the one built into PHP. Download it, put it in `html/inc`, and set the `USE_PHPMAILER`, `PHPMAILER_HOST`, and `PHPMAILER_MAILER` variables in [WebConfig your project.inc file].
    4747
    4848All of the tools let you send multipart HTML/text messages. We recommend that you use this feature - and HTML message can include your logo and/or institutional insignia, can include hyperlinks, and can look more attractive.
     
    5050The general procedure for using each scripts is:
    5151
    52     * Create a directory (mass_email, reminder_email, or ffmail) in your html/ops/ directory. In that directory, create separate files for the text body template, HTML body template, and subject line to be sent to each class of participants. NOTE: the HTML files are optional; if you leave them out, text-only emails will be sent.
     52    * Create a directory (mass_email, reminder_email, or ffmail) in your `html/ops/` directory. In that directory, create separate files for the text body template, HTML body template, and subject line to be sent to each class of participants. NOTE: the HTML files are optional; if you leave them out, text-only emails will be sent.
    5353    * Run the script in testing mode (see below) to ensure that the emails are as you intend.
    54     * Once testing is complete, run the script in production mode. Typically, the newsletter script is run from the command line. The reminder script is typically run as a [ProjectTasks periodic task], every 24 hours or so. 
     54    * Once testing is complete, run the script in production mode. Typically, the newsletter script is run from the command line. The reminder script is typically run as a [ProjectTasks periodic task], every 24 hours or so.
    5555
    5656The newsletter and reminder scripts use the recent-average credit (expavg_credit) field in the user table. To make sure this value is accurate, run [ProjectTasks update_stats] manually if you're not running it as a periodic task.
     
    6060The newsletter and reminder scripts replace the following macros in your email bodies (both HTML and text):
    6161
    62  <name/>::      User name
    63  <create_time/>::       When account was created (D M Y)
    64  <total_credit/>::      User's total credit
    65  <opt_out_url/>::       URL for opting out (this URL includes a salted version of the participant's account key, and so is different for every participant).
    66  <lapsed_interval/>::   The number of days since user's client contacted server (defined only for lapsed users, see below).
    67  <user_id/>::   The user ID (use this to form URLs)
     62 `<name/>`::            User name
     63 `<create_time/>`::     When account was created (D M Y)
     64 `<total_credit/>`::    User's total credit
     65 `<opt_out_url/>`::     URL for opting out (this URL includes a salted version of the participant's account key, and so is different for every participant).
     66 `<lapsed_interval/>`:: The number of days since user's client contacted server (defined only for lapsed users, see below).
     67 `<user_id/>`::         The user ID (use this to form URLs)
    6868
    6969=== Avoiding spam filtering ===
     
    7272
    7373    * Your HTML and text versions have the same text.
    74     * Your HTML version either contains no images, or has at least 400 words. 
     74    * Your HTML version either contains no images, or has at least 400 words.
    7575
    7676== Newsletters ==
    7777
    78 The script html/ops/mass_email_script.php is for sending email newsletters.
     78The script [source:trunk/boinc/html/ops/mass_email_script.php html/ops/mass_email_script.php] is for sending email newsletters.
    7979Run it from the command line.
    8080The optional arguments are:
     
    9191    * ''Failed'': zero total credit. These people failed to download and install the client software, or failed to get it working (e.g. because of proxy problems) or uninstalled it before finishing any work.  Email to them should include a link to the BOINC help page (http://boinc.berkeley.edu/help.php) or other help resources.
    9292    * ''Lapsed'': nonzero credit, but their computers have not contacted your server in > 60 days.
    93     * ''Current'': These are your active participants. 
     93    * ''Current'': These are your active participants.
    9494
    9595To use the script, create the following files in html/ops/mass_email:
    9696
    97  failed_html::  HTML message sent to failed users. Example:
     97 `failed_html`:: HTML message sent to failed users. Example:
    9898{{{
    9999<html>
    100 <body bgcolor=ffffcc>
     100<body bgcolor="ffffcc">
    101101Dear <name/>:
    102102<p>
     
    104104in the field of Submandibular Morphology.
    105105In recent months we have discovered over 17 new varieties of Frombats.
     106</p>
    106107<p>
    107108Our records show that you created a Test Project account
    108109on <create_time/> but that your computer hasn't completed any work.
    109110If you had problems installing or using the software,
    110 you can get help from <a href=http://boinc.berkeley.edu/help.php>online volunteers</a>.
     111you can get help from <a href="http://boinc.berkeley.edu/help.php">online volunteers</a>.
    111112Please try again!
     113</p>
    112114<p>
    113 <font size=-2>
     115<small>
    114116To not receive future emails from Test Project,
    115 <a href=<opt_out_url/>>click here</a>.
    116 </font>
    117 </td></tr></table>
     117<a href="<opt_out_url/>">click here</a>.
     118</small>
     119</p>
    118120</body>
    119121</html>
    120122}}}
    121  failed_text::  Text message sent to failed users. Example:
     123 `failed_text`:: Text message sent to failed users. Example:
    122124{{{
    123125Dear <name/>:
     
    137139<opt_out_url/>
    138140}}}
    139  email_failed_subject::         Subject line sent to failed users. Example: 'Test Project News'.
    140  lapsed_html::  HTML message sent to lapsed users
    141  lapsed_text::  Text message sent to lapsed users
    142  lapsed_subject::       Subject line sent to lapsed users
    143  current_html::         HTML message sent to current users
    144  current_text::         Text message sent to current users
    145  current_subject::      Subject line sent to current users
     141 `email_failed_subject`::       Subject line sent to failed users. Example: 'Test Project News'.
     142 `lapsed_html`::        HTML message sent to lapsed users
     143 `lapsed_text`::        Text message sent to lapsed users
     144 `lapsed_subject`::     Subject line sent to lapsed users
     145 `current_html`::       HTML message sent to current users
     146 `current_text`::       Text message sent to current users
     147 `current_subject`::    Subject line sent to current users
    146148
    147149=== Testing ===
     
    179181=== Checkpoint/restart ===
    180182
    181 mass_email_script.php manages checkpoint/restart when dealing with large numbers of participants. Mails are sent in order of increasing user ID. The file email_log has a list of IDs that have been processed. On startup, the script reads this file, finds the last entry, and starts from there.
     183`mass_email_script.php` manages checkpoint/restart when dealing with large numbers of participants. Mails are sent in order of increasing user ID. The file `email_log` has a list of IDs that have been processed. On startup, the script reads this file, finds the last entry, and starts from there.
    182184
    183185If you are starting a mass email from the beginning, empty the file mass_email/log; i.e.
     
    188190== Reminder emails ==
    189191
    190 The script html/ops/remind.php is for sending reminder emails.
     192The script `html/ops/remind.php` is for sending reminder emails.
    191193Run it on the command line.  Options are:
    192194
    193  --lapsed:: send emails to lapsed users
    194  --failed:: send emails to failed users
    195  --userid N:: send both lapsed and failed emails to the user with the given ID
    196  --send:: actually send the email (this is an option to reduce the chance of accidents).
    197  --show_email:: show what would be sent rather than sending it
    198  --explain:: print a line describing each email
     195 `--lapsed`:: send emails to lapsed users
     196 `--failed`:: send emails to failed users
     197 `--userid N`:: send both lapsed and failed emails to the user with the given ID
     198 `--send`:: actually send the email (this is an option to reduce the chance of accidents).
     199 `--show_email`:: show what would be sent rather than sending it
     200 `--explain`:: print a line describing each email
    199201
    200202The script categorizes users as follows.
     
    205207The numbers 14, 30, and 60 are all parameters in the script; edit it to change them.
    206208
    207 To use the script, create the following files in html/ops/reminder_email/:
    208 
    209  failed_html::  HTML message sent to failed users
    210  failed_text::  Text message sent to failed users
    211  failed_subject::       Subject line sent to failed users
    212  lapsed_html::  HTML message sent to lapsed users
    213  lapsed_text::  Text message sent to lapsed users
    214  lapsed_subject::       Subject line sent to lapsed users
    215 
    216 remind.php can be run as often as you like. We recommend running it every 24 hours, specifying it as a task in config.xml. When it sends email to a user, it stores the time in their database record, and won't send them another email for at least 30 days. For this reason, it has no checkpoint/restart mechanism.
     209To use the script, create the following files in `html/ops/reminder_email/`:
     210
     211 `failed_html`::        HTML message sent to failed users
     212 `failed_text`::        Text message sent to failed users
     213 `failed_subject`::     Subject line sent to failed users
     214 `lapsed_html`::        HTML message sent to lapsed users
     215 `lapsed_text`::        Text message sent to lapsed users
     216 `lapsed_subject`::     Subject line sent to lapsed users
     217
     218`remind.php` can be run as often as you like. We recommend running it every 24 hours, specifying it as a task in [ProjectTasks config.xml]. When it sends email to a user, it stores the time in their database record, and won't send them another email for at least 30 days. For this reason, it has no checkpoint/restart mechanism.
    217219
    218220The procedure for testing your reminder email is similar to that for email newsletters (see above).
     
    220222== Friend-to-friend emails ==
    221223
    222 The web page ffemail_form.php lets users send emails to their friends. To use this feature, you must create the following files in html/ops/ffmail/:
    223 
    224  subject::      The subject line used for friend-to-friend emails
    225  html::         HTML template for friend-to-friend emails
    226  text::         Text template for friend-to-friend emails
     224The web page `ffemail_form.php` lets users send emails to their friends. To use this feature, you must create the following files in `html/ops/ffmail/`:
     225
     226 `subject`::    The subject line used for friend-to-friend emails
     227 `html`::       HTML template for friend-to-friend emails
     228 `text`::       Text template for friend-to-friend emails
    227229
    228230Samples are supplied for each of these. The following macros are substituted in the message bodies:
    229231
    230  <fromname/>::  The name of the sender
    231  <toname/>::    The name of the recipient
    232  <comment/>::   The comment supplied by the sender
     232 `<fromname/>`:: The name of the sender
     233 `<toname/>`::  The name of the recipient
     234 `<comment/>`:: The comment supplied by the sender