Drip Mail Not Working

Posted 07/03/22 by Dan Vis

Having trouble getting your drip email sequence to work? Here are a few things you can check.

First, go to Site > Emails and click the drip tab. There you can see any available drip files. Click one for a full list of the drip pages involved. Then, be sure to compare your scheduler with the sample found at docs.modules.mailer (in the section on drips). Make sure your syntax is right so that messages will be queued up to go out.

Then, check the individual messages. They should all be names or If the pagename is wrong, get them fixed. The numbers at the end should match the numbers in the scheduler. These numbers must be sequential, starting at 1, etc. You control the scheduling on the scheduler page, not via the pagename.

Second, go to site > mailer and check the various trouble shooting pages there. If the queue is empty after triggering some drip (like signing up for a class), your drip was never properly started. If the cron log is empty, your cron job is not firing. If the mail log gives you error messages, something is wrong with your mail configuration. If there are sent messages (ie, without errors), the messages are being sent but blocked by your email provider or sent to your spam folder.

And last, be sure to validate your individual emails. Remember most markup won't work in emails. If there's something you especially want, it may be possible to add it, but emails are tricky and not every email client has the same capabilities, so it's best to stick with simple messages. Some people don't even have the ability to read html emails at all!

Hopefully this simple checks can help you narrow down and maybe fix whatever is keeping your drips from being sent!


Posted by Dan Vis on 09/17/20
Posted by Kasey Norton on 09/16/20
Thank you!!!!!!!
Posted by Dan Vis on 09/14/20
Ok, I was able to log in to her account and find out what the problem was. Another small glitch in the class module. You are definitely helping me work out all the kinks Kasey!

It's working now. I also did some work on your form buttons, to get them better styled, but for some reason it's not taking on the button to the final exam. CSS is not my expertise, but I'll see if I can do some fine-tuning there when I have some time. But it's definitely better.
Posted by Kasey Norton on 09/13/20
Sorry, Dan ... I forgot to tag you in my previous comment :)
Posted by Kasey Norton on 09/13/20
Her name is Hannah Ware and she's signed up for the class Who is God. The email points to Day One. When she goes directly in to her Current Class, there are no links showing. So where if I look on my account at the same page, I have links under Class Content, she just has headings but they aren't linked for her so there's nothing she can click. I'm thinking this may be happening for another member who signed up for the LTPS class, as well.
Posted by Dan Vis on 09/13/20
Can you tell me which account is your daughters, and which class she is trying to access Kasey, so I can look at it?

What is the url in the email pointing to? In other words, is the link in the email bad, or is it the access that is the problem? Or to put it differently, can she go directly to the classroom and view the page?
Posted by Kasey Norton on 09/13/20
Dan The emails to my daughter are still not accessible. She gets them and when she clicks on the link it won't take her in.
Posted by Dan Vis on 09/13/20
You can read about permissions in the docs area Berith, but this was a problem with the code. When you write a custom plugin, you can override normal permissions so a function can do things (like read page information) that that user normally can't.

In this case, if I remember right, the cron job wasn't able to read the email subjects--and therefore didn't send the emails. The drip files aren't public pages, so a guest user should not have access to them, but the cron function needed to be able to override that access to send out emails.

In my experience, when you write a lot of new code like this, there tends to be a bit of finessing things at first, until you get the permissions set just right. That's because we have a very granular level of control. The upside to this, is you can keep everything as secure as possible--and only allow people to access just what they need. The downside is it can take a bit of finagling to get things just right.
Posted by Berith Bermejo on 09/12/20
It's working now, Dan. I was actually surprised that the 7th email came in. I'm not sure I completely get what you meant, but where do I change the permissions for regular members to receive drip emails?
Posted by Dan Vis on 09/10/20
Berith, I've looked at your site, and I think I've found the problem with your drip file. Everything looked fine, until I noticed you sent the message to a regular member, rather than to your superadmin account--which is what I did, and probably Kasey.

From there, it just took a minute to assess the code and see where the permissions needed to be adjusted. Could you try one more time, and see if it doesn't work now for you?

Note that the initial email goes out because you trigger the cron while logged in as an admin. And the first email is sent immediately. But the secondary emails are all triggered by cron, which is a non-logged in user.

I've got another job queued up going to my regular member test account here at BoltWire. And I've got it on an accelerated schedule (100x faster) so I should know within an hour whether or not fixed the problem.

A good reminder we need to check everything as a regular member to verify the permissions are all set right. I'm usually logged in as admin, so everything always works for me. But then I load up the code and it doesn't work for others. That's happened an embarrassing number of times for me. That, and forgetting to check everything on mobile!
Posted by Berith Bermejo on 09/07/20
Not yet, Kasey, but I trust that we'll figure out what's wrong in due time.

That's the same reaction I had when I first saw the graphic. I asked a friend to make a banner for the site, and she didn't even let me pay her for it! The site's coming along bit by bit by God's grace.
Posted by Kasey Norton on 09/07/20
Berith Did you get it working? I struggled with my drip sequence, too. I looked at your website and it looks really nice! I love your banner!!
Posted by Berith Bermejo on 09/07/20
Yup, Mailer is enabled in site.config Dan.

Happy for you, Kasey! :)
Posted by Dan Vis on 09/06/20
That's great Kasey. Did you get all the emails or just the first one? Berith is reporting an issue with the second email not coming 15 minutes later. If you got yours, then it must be something to do with her setup.

Berith, speaking of differences in setup, do you have mailer enabled in site.config on your site?
Posted by Kasey Norton on 09/06/20
Dan It seems to be working and I couldn't be more excited about it!
Posted by Berith Bermejo on 09/05/20
Still related to the drip. I was able to send the welcome message to my test account using the right parameters for the data. However, it did not send the 2nd email, which was supposed to be sent ~15 minutes after the welcome. When I checked the log, only the first email was there. No second email was logged. When I went to Manage the drip, it had 3 on it, which I thought was right because I saw 2 right after the drip started. I didn't change the times so will have to see whether the email for tomorrow will send.
Posted by Dan Vis on 09/04/20
And last thing to check--the code... Turns out that neither the cron script nor the mailer script were working at full capacity. Took me some time to track everything down, but I think I've got that all working properly now.

So Kasey it probably wasn't your freshping setup.

You definitely want to check everything using the debugging tools steps below, but my guess is, if you simple delete all your existing drips and start yourself on a new one it will work perfectly.

I've got myself on a highly accelerated schedule, so I should know with an hour or two whether everything is working ok, but it seems to be so far...
Posted by Dan Vis on 09/04/20
And one more thing to check (Berith)... :)

I think I mentioned this somewhere but your cron pages new to be viewable by guests, as your ping service will not be logging in! To do this set cron*: @guest in site.auth.view.

I've already done this to our core site.auth.view page, but you should check your system to make sure it includes that line.
Posted by Dan Vis on 09/04/20
Oh, here's one other thing to check--make sure you are entering their member id not their email when setting up the drip. So admin or 0023 not I've actually just updated the mailer plugin to recognize emails and look up the id if you happen to use an email--but the email does have to be owned by an account in your system. You can't use this plugin to mail to people who have not joined your site...
Posted by Dan Vis on 09/04/20
So tell me what trouble shooting steps you took Kasey? Here are the basic steps again just so you can tell me which part fails...

1) Use site > emails > test to make sure you can get regular emails

2) Use site > mailer > drips to send yourself a drip. You should enter hebrews, not code.drip.hebrews or drip.hebrews, etc.

3) Go to site > mailer > queued to verify the messages was queued up. I've fixed this page up by the way to make things easier to read...

In your case you have 4 queues already going. I'd suggest clicking the "manage" link beside each drip to view it, and then delete it--before taking step two, actually. It's easier to debug if you have a clean slate. You can instantly see if a new message has been queued up.

The fact you have queued mail that should have gone out 9/3 indicates your cron job is not firing...

4) Go to site > mailer > log to see if the first welcome email has been sent. It should be sent automatically without requiring cron.

Again, you have some log messages there, including a welcome to hebrews message. But it is from Sept 2, so that can't be it. And there should be more of these anyway, since you have 4 drips going to yourself! Also remember, there was a bug (fixed) where at least once it sent the day 1 message instead of the welcome message. That could explain the day 1 message dated Sept 4. Not sure...

5) Go to site > mailer > cron and scan the info there. It should show lot's of log entries if freshping is working. I may be mistaken, but I think these create a log entry each time the cron page is loaded. Which is like every minute or two.

In your case there are only two log entries, which were no doubts ones I created when I was testing your system. Note that big CRON MAILER button at the top. That calls the cron job directly. If you click it, the system will start sending any queued up messages. (Assuming you haven't deleted them, see 3B above). You could try clicking it once or twice to see if some backlogged email start coming through.

So to fix that, you need to verify that freshping is calling Try logging in to and make sure it is tracking your site. I'm not sure how much support they can give. But see what you can figure out. If you need me to, you can send me your login credentials and I can take a look.

6) Once we can confirm the email is working, and the drips are working, then we can double check the class enroll/cancel process is working. You enroll, then go check to see that the drip was queued up. You cancel, and then check that the drip was canceled.

I just added the cancel feature to the mailer module, so it's possible it's not working, but everything looks good.

The main thing is to clear out those existing drips, then trace it through the process to see where the issue is.

I've written this all out so you can know how to debug things in the future, but also so others can do the same. I'll continue looking into it. But at this point it looks like your cron job is not firing at all...
Posted by Kasey Norton on 09/04/20
Dan I must still not have something in there correctly. I cancelled and then signed up for a class and I've gotten nothing through email.
Posted by Dan Vis on 09/03/20
Try canceling the class and starting over Kasey. Or just use the Site > Mailer > Drip page an restart it. I think it will work better this time. And maybe send you the correct first message! :)
Posted by Kasey Norton on 09/03/20
Dan I never received a second email from my drip.hebrews. I didn't yet go in and adjust the time so they come closer together just because it's been so busy here, but it's been more than 24 hours since the last one came through without a second one transmitting. I checked spam.
Posted by Dan Vis on 09/03/20
Ok, I think I have this one fixed too Kasey. Another tricky little problem to track down, but easy to fix. Now I just hope I didn't mess things up on the FAST site! It uses a slightly different system... Can't wait to get FAST migrated over to the accelerator platform, for sure...
Posted by Kasey Norton on 09/02/20
Dan I don't love the way the formatting came across in the email as it looks a good bit different than the test emails came through looking. This is how it transmitted:

Hebrews A chapter by chapter study Hi, Kasey Your first lesson is available in The Classroom and you can find it here: Chapter One This chapter contains a message of redemption and a proclamation of hope! Too good to miss! Sincerely, Kasey

Exactly like that, all kinda crunched together. What am I doing wrong?
Posted by Kasey Norton on 09/02/20
Dan Imagine my joy when my phone suddenly dinged with a new email and I saw that it was from the class! I did only receive the one and it was for day one instead of the welcome email. Wonder why it skipped that one?
Posted by Dan Vis on 09/02/20
I've looked at your drip files Kasey and they all look good. There's an extra welcome email at the end of the ltps drip that needs to be deleted or worked into one of the other existing messages or something, as it is not a numbered page (code.drip.ltps.welcome). But that shouldn't be causing a problem.

I did some tinkering, and looks like I missed one little step in my fix yesterday. Made that change and it is working now. Basically I took these steps:

1) Went to site > email > drip and added you to the hebrews drip

2) Went to site > mailer > cron and manually triggered the cron job.

It reported message 2 had been sent when it should have been message 1. Turns out there was another slight glitch in the log reporting, which I've got fixed now...

3) Went to site > mailer > log and it verified the correct email was sent.

So we now just need to verify cron will send the rest of the messages by itself, and that the emails look well formatted. I notice you have some center tags and things. Not sure those will work but maybe!

We could still have some problems, as cron as working as a guest whereas I ran it as an admin, and permissions are different. But if you get message 2 in 15 minutes we should be good to go.

Remember if you want to speed up the messages so they only take a few hours instead of days, shorten the times in your scheduler for now. Then just remember to reset them back.

And if you didn't get the first email be sure to check your spam, etc. BoltWire is definitely reporting it was successfully sent.
Posted by Kasey Norton on 09/02/20
Dan I sent you a message about this but I'll answer here that I'm still hitting a wall. I have edited all my drip.emails and added the scheduler page for both the classes and when I went in and tried to add myself to the drip for testing purposes, I'm still getting nothing. I've double-checked with FreshPing and from everything I can tell I have added there but I'm clearly still missing something.
Posted by Dan Vis on 09/01/20
Let me know how it works for you Kasey! I'm excited to see all this come together. Once we get it working, you'll be able to put up all the classes you want! :)
Posted by Kasey Norton on 09/01/20
Dan That all made sense. I attempted to get it fixed up right. I will finish going through and editing the actual emails taking out the css tricks and italics and things like that and then I'll test it out. Thank you so much!
Posted by Dan Vis on 09/01/20
PS. You don't have to worry about setting the titles for your emails. I noticed the site.emails.drips page actually pulls the subject line from the scheduler page!
Posted by Dan Vis on 09/01/20
Ok, I see you are getting this figured out on your own here Kasey. Good work. Let me answer your comments one by one.

The schedule is the main page for the drip: (ie: code.drip.hebrews). I see you've got that part figured out. But remember you can always go to SITE > EMAILS > DRIPS and it will give you a direct link to the scheduler page for any drip. Once there just click edit.

Changing the title doesn't change the page name. So for example if my page is I can change the title to "Some Page". The first is the actual name of the page file. The latter is a title data field. Now if you don't set the title as a data value, BoltWire will use the last part of the page name for the title (and capitalize it). So will have a title of "Page" if you don't reset it. Page names and titles are two separate things.

Your schedule is look great but you'll notice you don't have any times for emails eight through 14. And you do have to be careful with spaces. Some of those later emails have multiple spaces, and email 10 lacks a space between the | symbol and the "Day 9" part. That will definitely throw things off.

Here's how the math works. The first numer on each line is the number of the email you are sending out. So for #1, drip will load code.drip.hebrews.1 and send it with the subject line: "Welcome to the study of the book of Hebrews".

The number after the colon tells what portion of a day you wait to send the next email. So email 1 goes out after waiting 0 days (ie, immediately). Email 2 goes out .01 days later (which is about 15 minutes). Email three goes out .99 days later, (24 hours minus 15 minutes!). Email 4, which is day 3, goes out 1 day later (24 hours, easy!). Email 5 goes out .6 days later (24 hours * .6 = 14 hrs and 24 minutes). This is just an example of how you could throw in an extra email half way through day 4--maybe to check up on them and see how they are doing. This should not b the day 4 reading, but rather a message like "How is it going so far?". Email 6 goes out at the regular time and should send the day 4 email. (IE .6 + .4 = 1 day). Make sense?

If you only want to send the daily messages, change everything from email 5 on down to 1. You'll get what you want. I tried to show how you could do something fancy and that confused you. My bad on the docs. Should have started with something easier and then built on it. Will change that...

Make sense?

Now just be careful about getting all the numbers and spaces right. Computers tend to be very detail oriented.

Pro tip 1: Not to confuse you more--but if you don't want to wait 13 days to get all your emails, try temporarily changing the times down a tenth or so. Change .01 to .001 and 1 to .1, etc. That way the emails will come to you 10x faster (ie, one every 2.4 hours, instead of one every 24 hours. Just don't forget to change the times back after you've got all your emails tested and working how you want.

Pro tip 2: To just check the drip out without worrying about the class enrollment process go to Site > Mailer > Drip and start yourself on your drip. That's just to isolate one thing at a time and make sure it is working. Enter hebrews for your drip, your id (admin), switch to active mode, and submit. You should get your first email within about 2 minutes.

PPS. I did test and find a small bug in the mailer script. Fortunately it was an easy fix. And I just uploaded all the changes so you should be good to go on that end.
Posted by Kasey Norton on 09/01/20
Dan Okay, one last question (before I ask more questions). I figured out that I somehow had day 6 of the Hebrews emails in on the page where the scheduler is supposed to be. So I added this in there:

1: 0 | Welcome to the study of the book of Hebrews
2: .01 | Day 1. Chapter One
3: .99 | Day 2. Chapter Two
4: 1 | Day 3. Chapter Three
5: .6 | Day 4. Chapter Four
6: .4 | Day 5. Chapter Five
7: .2 | Day 6. Chapter Six
8: | Day 7. Chapter Seven
9:     | Day 8. Chapter Eight
10:   |Day 9. Chapter Nine
11:   | Day 10. Chapter Ten
12:   | Day 11. Chapter Eleven
13:   | Day 12. Chapter Twelve
14:   | Day 13. Chapter Thirteen

Is that getting closer? The only problem is I have no idea how you're doing that math. 😂 My mind is NOT naturally mathematical. I like the model you have where the welcome email goes out immediately followed by the first class email 15 minutes later and then each subsequent email 24 hours apart.
Posted by Kasey Norton on 09/01/20
Dan "I'd also recommend giving each individual drip message a title (click the drip page, and use the title action). It will just display better in the site admin list."

If I change the title won't that change the number at the end which has to match the drip sequence? As in, if I go into code.drip.hebrews.1 and I click into title, it tells me to enter a new title for the page and 1 is automatically populated in the box. But if I change that wont it throw things off?
Posted by Kasey Norton on 09/01/20
I feel silly asking this question after you've gone into such detail already TWICE, but I can find the scheduler but I can't seem to be able to edit it. If I click into code.drip.hebrews it takes me to the actual email to be sent and I don't see how I can edit the time sequence there.

Join Us

To read more posts, or to leave a comment, join our FREE community...