Can I send email conditionally, based on a question response?

More
7 years 11 months ago #73690 by Jefficus
I want to be able to send a free ebook as a thank-you to the people filling in my survey. I considered doing this by using tokens and public registration, but there are two problems with that: 1) I need to know which of two ebooks they would like sent to them, and 2) I want lots of respondents, so I don't want them to have to register first.

So what I'd LIKE to do is skip the registration/token part and leave the survey open. Then I'd like to have a single question in the survey where they can enter their email address. When the respondent finishes the survey, if and only if they have filled in that field, I would like to generate a thank-you email with attachment, sent to that email address.

Is this possible in LimeSurvey? If not, I suppose I'll have to collect the addresses and send the emails out semi-manually.

Please Log in or Create an account to join the conversation.

LimeSurvey Partners
More
7 years 11 months ago #73734 by Steve01
Hello,

I don't think it is possible without changing/touching the source code of LimeSurvey. The first problem can be to attach a file in your email (and if I remember correctly LimeSurvey doesn't support that at the moment). The second problem is to trigger when and what email is sent. In the forum it was mentioned a few times that the ExpressionManager might get a email() function so you can send an email if the participant does something with a question/answers. But you might have to wait for the release of LimeSurvey 1.92 or even later versions.

But how about a little workaround:
- Create a question and ask if and what ebook the would like to have at the end of your survey.
- Upload both ebooks, e.g. to your own server, file hoster as survey resource in your LimeSurvey installation.
- Create two text display questions. Offer a link to the specific ebook and use conditions to show/hide the text display you want.

Mit freundlichen Grüßen/Best regards,

Stefan Gohlke
LimeSurvey Team
The following user(s) said Thank You: Jefficus

Please Log in or Create an account to join the conversation.

More
7 years 11 months ago #73742 by Mazi
vierundzwanzig is correct, you can't send email attachents using Limesurvey.

I would also recommend to upload those ebooks to your server. You can than code a script to which a user is redirected at the end of the survey. The script gets passes some IDs and then checks if the answer data set is complete and which ebook the user prefers to read. It can then send an email with a link to the according file for download.

Best regards/Beste Grüße,
Dr. Marcel Minke
Need Help? We offer professional Limesurvey support
Contact: marcel.minke(at)survey-consulting.com
Want to use your survey offline -> www.offlinesurveys.com
The following user(s) said Thank You: Jefficus

Please Log in or Create an account to join the conversation.

More
7 years 11 months ago #73785 by Jefficus
Those are both good suggestions. I'm going to do some tests to see if I can make something like that work.

Thanks.

Please Log in or Create an account to join the conversation.

More
7 years 11 months ago #73811 by Mazi
Once you have set up a working solution, please describe your aproach here for others facing the same problem.
Thanks!

Best regards/Beste Grüße,
Dr. Marcel Minke
Need Help? We offer professional Limesurvey support
Contact: marcel.minke(at)survey-consulting.com
Want to use your survey offline -> www.offlinesurveys.com

Please Log in or Create an account to join the conversation.

More
7 years 10 months ago - 7 years 10 months ago #76910 by sequoia
I have an additional inquiry concerning this topic, and I currently am up to date using 1.92+

The condition: depending on an answer, each answer would tie into delivering the detailed admin notification to a specific email.

Case scenario: You have several students taking an exam at several different schools in the district. One question asks which school they attend. By the student selecting the school they attend, the detailed notification email will be sent to that principal's email.

Would this be possible in the 1.92+ version? If so, how best to go about it

Any input would be greatly appreciated, and thanks in advance.
Last edit: 7 years 10 months ago by sequoia.

Please Log in or Create an account to join the conversation.

More
7 years 10 months ago #76913 by DenisChenu
Hello,

Personnaly, i use some ajax function to send something by email.

Look at :
api.jquery.com/jQuery.ajax/ tolauch a php script with some parameter.
php.net/manual/function.mail.php
www.php.net/manual/function.mail.php#105661
For some php script to send mail

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand , plugin development .
An error happen ? Before make a new topic : remind the Debug mode .

Please Log in or Create an account to join the conversation.

More
7 years 10 months ago #76915 by sequoia
Thanks Denis for your input.

If I find a resolution with any of those listed links I'll be sure to post on here.

Please Log in or Create an account to join the conversation.

More
7 years 9 months ago #77167 by sequoia
I have a question concerning another option.

In layman terms it possible to enter a db query in the "Send detailed admin notification email to:" entry box to call up the email tied in with a specified response?

That or, add to the call for the notification email a db query for that answer tied in with a specific email?

Please Log in or Create an account to join the conversation.

More
7 years 9 months ago #77260 by DenisChenu
Yes,

You can use :
{INSERTANS:ssssXgggggXqqqqqaaa} ( see SGQA ) or {QUESTIONCODE}
in admin mail.

But you can't use some "condition" for sending this mail :)

Denis

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand , plugin development .
An error happen ? Before make a new topic : remind the Debug mode .

Please Log in or Create an account to join the conversation.

More
7 years 9 months ago - 7 years 9 months ago #77265 by Ben_V

By the student selecting the school they attend, the detailed notification email will be sent to that principal's email


Maybe you can do something like this:

1) Create an email account dedicated to this survey for e.g using Gmail (This email address is being protected from spambots. You need JavaScript enabled to view it.), because Gmail offers efficient features regarding filters & messages transfer. This account will collect all responses for further dispatching.

2) Set your survey to send email detailed notification (with full responses) to This email address is being protected from spambots. You need JavaScript enabled to view it..

3) In the parameters of This email address is being protected from spambots. You need JavaScript enabled to view it. account set filters for redirecting all incoming emails automatically to differents email addresses depending on keywords included in the message body(=answers):
- If "Lucky Town" in the body" transfer to 'This email address is being protected from spambots. You need JavaScript enabled to view it.
- If "Down Town" in the body" transfer to 'This email address is being protected from spambots. You need JavaScript enabled to view it.
- etc.

Ben

Benoît

EM Variables => bit.ly/1TKQyNu | EM Roadmap => bit.ly/1UTrOB4
Last Releases => 2.6x.x goo.gl/ztWfIV | 2.06/2.6.x => bit.ly/1Qv44A1
Demo Surveys => goo.gl/HuR6Xe (already included in /docs/demosurveys)
Last edit: 7 years 9 months ago by Ben_V.

Please Log in or Create an account to join the conversation.

More
2 years 4 months ago #158258 by dotxm
I created a new topic for the answer, in here.

This is the solution I found:

The need
Send a detailed message to the survey admin, if a specific question gets a specific answer

The solution
Instead of an email address, put a condition like so:
{if(QUESTIONCODE.code=="ANSWERCODE","EMAIL","")}

The text you need to change is in orange.

Example implementation (tested on 2.67.3):
{if(RequestsContact.code=="Y","someone@somewhere.com","")}

The option is under:
'Survey properties > General settings & texts > Notification & data management > Send detailed admin notification email to:'


All the best,
Dotan
The following user(s) said Thank You: cdorin, chuchocosta

Please Log in or Create an account to join the conversation.

More
5 months 3 weeks ago #187038 by chuchocosta
the solution works ok, thank you so much. I have version 3.17.4

Please Log in or Create an account to join the conversation.

More
1 month 1 week ago - 1 month 1 week ago #191915 by Kyler_Hunter
Dotxm,
I've been trying to use your code on an Array question (1-10 radio choice). However I've not been able to get it to work plus I need it to be for various answers (basically if anyone answers 8 or lower). I've tried the following:
{if(P1Q1_SQ001.code=="[A1]", "someone@somewhere.com", "")else if(P1Q1_SQ001.code=="[A2]", "someone@somewhere.com", "")}
But it doesn't send the email. Did I write this wrong somehow?
I'm on version 3.17
Last edit: 1 month 1 week ago by Kyler_Hunter.

Please Log in or Create an account to join the conversation.

More
1 month 1 week ago #191916 by tpartner
There is no "else if" in Expression Manager, it uses nested IFs like Excel - manual.limesurvey.org/Expression_Manager_-_presentation#Syntax

Also, there are no square braces required in Expression Manager.

That said, if you change the answer code to numerics 1-10, you could do something like this:

{if(intval(P1Q1_SQ001) <= 8, "someone@somewhere.com", "")}

Cheers,
Tony Partner

Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
Official LimeSurvey Partner - partnersurveys.com
The following user(s) said Thank You: Kyler_Hunter

Please Log in or Create an account to join the conversation.

Start now!

Just create your account and start using Limesurvey today.

Register now
Join our Newsletter!