Project

General

Profile

Feature #16554

Updated by Ward Vandewege almost 4 years ago

Add a feature for opt-in survey reminders. 

 Part 1: 

 * Ongoing survey reminders:   
 Participants opt-in to regular email (research specified options: at least, every day, every 2 days, every 7 days) while a survey is designated as “ongoing”. 

 => Participant interface: link to manage frequency of reminder e-mails from the google_survey 'view' page. 
 => Researcher interface: allow them to specify possible reminder frequencies (default to 1/2/7/14/30 days?). Maybe allow them to put custom text in the reminder e-mails. 

 New table: google_survey_reminders (user_id, google_survey_id, frequency) 
 New fields on google_surveys table (reminder_email_subject, reminder_email_text, allowed_reminder_frequency_days) 


 Part 2: 

 In the reminder e-mail: 

 * Option to select: "no symptoms" link with a single click; one use link. 

 * for each link store generation date and when clicked date. Links can only be clicked once. 

 => Participant interface: allow them to download the "bypass csv" (but call it whatever is in the title_for_bypass_field). The CSV will have these fields: timestamp link generated, timestamp link clicked, huid. 

 => Researcher interface: template the links used in the reminder e-mails so that they can write all the text. Create a default template text instead of an empty body. Call the template strings %%BYPASS_URL%% and %%SURVEY_URL%%. 

 New fields on google_surveys table google_surveys_table (bypass_field_title, required when reminder_email_frequency is not empty) 

 New table: google_survey_bypasses google_survey_bypass (user_id, google_survey_id, token, used token_lifetime => duration, timestamp_clicked => default null). The created_at field will have the meaning of token_generation_timestamp). Each new reminder e-mail being sent will generate a new record in this table. The CSV output will only include records with used != null, and for user_id's that are not marked as 'test' users.

Back