We work in research with sensitive populations at our university. When we design simple experiments, its always best to know who we'd like to select for our populations, but we are ethically limited from actually knowing who they are. This creates a bit of a problem.
The solution we must come up with requires two separate systems that cannot speak to each other directly: one for collecting detailed information about a person anonymously, and the other for contacting that individual via email and a message.
PART ONE: Collect the personal data:
We currently use LimeSurvey to collect anonymous information about populations. How old they are, what they do in their spare time, what languages they speak, that sort of thing. At the end of the survey, they are given a unique serialized number that they must write down and keep safe.
PART TWO: This is where you come in:
We need a separate system that we will use to contact individuals by email. We looked at CRM systems and email marketing systems, but nothing allowed us the flexibility or anonymity we desired.
Here are the two connected processes we require:
1. FORM: Unauthenticated user Creates a new record that consists of a user-entered: Unique, serialized number, first name, last name, and their email address. Upon submit, this information is stored in database.
2. FORM: Allow a user to type in serialized number(s) and select from a jquery/ajax dropdown to build a list of numbers. Next, a textbox containing a space to provide a message that recognizes URLs. (TinyMCE might be fine). Upon Submit, the email addresses associated with the selected numbers are emailed individually with the message. If successful, a success message is displayed, if not, an error message is displayed. The message may not contain reference to the emails that were used, just the numbers that were successfully sent the message. At the same time, a record of this transaction (TIMESTAMP, Message, and Numbers) would stored in a table in the database.
- The reply-to address from the message will be an email address we can change
Attached is a screenshot of the workflow we're looking for.