Changes between Version 4 and Version 5 of VolunteerRecruit


Ignore:
Timestamp:
Apr 27, 2007, 4:03:06 PM (17 years ago)
Author:
davea
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • VolunteerRecruit

    v4 v5  
    7676== Newsletters ==
    7777
    78 The script html/ops/mass_email_script.php is for sending email newsletters. The script categorize participants as follows:
    79 
    80     * ''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.
    81     * ''Lapsed'': nonzero total credit but recent average credit < 1: These people did work in the past, but none recently.
    82     * ''Current'': recent average credit >= 1. These are your active participants.
     78The script html/ops/mass_email_script.php is for sending email newsletters.
     79Run it from the command line.
     80The optional arguments are:
     81 --userid N:: send only to the user with the given ID
     82 --send:: actually send the email (this is an option to reduce the chance of accidents).
     83 --show_email:: show what would be sent rather than sending it
     84 --explain:: print a line describing each email
     85 --idfile name:: read user IDs from the given file (one per line, increasing order).
     86 --nocurrent:: don't sent emails to "current" users.
     87 --batch N:: limits size of database query.
     88
     89The script categorizes participants as follows:
     90
     91    * ''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.
     92    * ''Lapsed'': nonzero credit, but their computers have not contacted your server in > 60 days.
     93    * ''Current'': These are your active participants.
    8394
    8495To use the script, create the following files in html/ops/mass_email:
     
    92103Test Project continues to do pioneering computational research
    93104in the field of Submandibular Morphology.
    94 In recent months we have discovered over
    95 17 new varieties of Frombats.
     105In recent months we have discovered over 17 new varieties of Frombats.
    96106<p>
    97107Our records show that you created a Test Project account
    98 on <create_time/> but that your computer
    99 hasn't completed any work.
    100 Possibly you encountered problems
    101 installing or using the software.
    102 Many of these problems have now been fixed,
    103 and we encourage you to visit
    104 <a href=http://a.b.c>our web site</a>,
    105 download the latest version of the software, and try again.
     108on <create_time/> but that your computer hasn't completed any work.
     109If you had problems installing or using the software,
     110you can get help from <a href=http://boinc.berkeley.edu/help.php>online volunteers</a>.
     111Please try again!
    106112<p>
    107113<font size=-2>
     
    119125Test Project continues to do pioneering computational research
    120126in the field of Submandibular Morphology.
    121 In recent months we have discovered over
    122 17 new varieties of Frombats.
     127In recent months we have discovered over 17 new varieties of Frombats.
    123128
    124129Our records show that you created a Test Project account
    125 on <create_time/> but that your computer
    126 hasn't completed any work.
    127 Quite possibly you encountered problems
    128 installing or using the software.
    129 Many of these problems have now been fixed,
    130 and we encourage you to visit
    131 <a href=http://a.b.c>our web site</a>,
    132 download the latest version of the software, and try again.
     130on <create_time/> but that your computer hasn't completed any work.
     131If you had problems installing or using the software,
     132go here to get help from online volunteers:
     133http://boinc.berkeley.edu/help.php
     134Please try again!
    133135
    134136To not receive future emails from Test Project, visit
     
    145147=== Testing ===
    146148
    147 Test your email before sending it out to the world. As distributed, mass_email_script.php has the following variables defined near the top:
    148 {{{
    149 $testing = true;
    150 }}}
    151 Set it to false to actually send emails (rather than just print to stdout).
    152 {{{
    153 $userid = 1;
    154 }}}
    155 If this is nonzero, email will be sent to the given user ID; Otherwise it will be sent to all users.
    156 
    157 To start, set $userid to the ID of your own user record. Run the script by typing
    158 {{{
    159 php mass_email_script.php
     149It's important to send the right email to the right people,
     150and to do it only once.
     151We recommend testing as follows.
     152First send to yourself (say, user ID 5).
     153{{{
     154mass_email_script.php --userid 5 --show_email
    160155}}}
    161156It will print (to stdout) the contents of all three email types (failed, lapsed, and current). Verify that the subject, HTML and text are correct.
    162157
    163 Then set $testing = false and run the script again. You'll get three emails; check them.
    164 
    165 Then set $testing = false and $userid = 0, create an empty file called mass_email/log (see below), and run the script. You'll get voluminous output to stdout, but no emails will be sent. Control-C it quickly if you want. Make sure that each user is being sent the right type of email.
    166 
    167 When you're sure that everything is correct, set $testing = false, set mass_email/log to empty, and run the script. It will now send mass emails. Depending on the size of your user table, it may take hours or days to complete. You can control-C it and restart whenever you want; it automatically picks up where it left off (see below).
    168 Checkpoint/restart
    169 
    170 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 mass_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.
     158Then run
     159{{{
     160mass_email_script.php --userid 5 --send
     161}}}
     162You'll get three emails; check them.
     163
     164Now type
     165{{{
     166touch email_log
     167mass_email_script.php --explain | more
     168}}}
     169You'll get a list of what type of email will be sent to each user.
     170Make sure that each user is being sent the right type of email.
     171
     172When you're sure that everything is correct, type
     173{{{
     174truncate email_log
     175mass_email_script.php --send
     176}}}
     177It will now send mass emails. Depending on the size of your user table, it may take hours or days to complete. You can control-C it and restart whenever you want; it automatically picks up where it left off (see below).
     178
     179=== Checkpoint/restart ===
     180
     181mass_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.
    171182
    172183If you are starting a mass email from the beginning, empty the file mass_email/log; i.e.
    173184{{{
    174 truncate mass_email/log
     185truncate email_log
    175186}}}
    176187
    177188== Reminder emails ==
    178189
    179 The script html/ops/remind.php is for sending reminder emails. The script categorizes users as follows.
     190The script html/ops/remind.php is for sending reminder emails.
     191Run it on the command line.  Options are:
     192
     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
     199
     200The script categorizes users as follows.
    180201
    181202    * Failed: the account was created at least 14 days ago, has zero total credit, and hasn't received a reminder email in 30 days. These people typically either had a technical glitch, or their hardware and/or preferences didn't allow sending them work, or the application crashed on their host. The reminder email should direct them to a web page that helps them fix these problems.
     
    193214 lapsed_subject::       Subject line sent to lapsed users
    194215
    195 remind.php can be run as often as you like. We recommend running it every 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.
     216remind.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.
    196217
    197218The procedure for testing your reminder email is similar to that for email newsletters (see above).
     219
    198220== Friend-to-friend emails==
    199221