Sending Email Timing Issues - Flexy

Hey Fellas,

I’ve got a customer that wants emails sent out every hour containing file information. I have set this up and all of the files are sending, just not necessarily “on the hour.” Is there an optimal way to set up emailing so that it gets emailed closer to the time the email was triggered to send?

Thanks!

Nick

@nickTriPhase1

Just to confirm, is the goal to send at the top of the hour or exactly one hour from the time the last email was sent?

@jseanor

Well I have an ONCHANGE on the TIME, so when the hour changes from 1 to 2, send email, when the hour changes from 2 to 3, send email, etc…

@nickTriPhase1

Would an ONDATE work better for your needs here? With an ONDATE we could specifically trigger the action at the time defined without waiting for the time to change.

In your current setup, if I understand it correctly, we have the following chain that has to occur.

  1. Time tag is updated
  2. If hour is different
  3. Trigger onchange
  4. SendEmail

If we updated it to use an ONDATE however we would have:

  1. Top of hour
  2. Send email

Example:

 ONDATE "0 * * * *", "GOTO SendEmail"

 SendEmail:
     sendmail "mytoemail", "mycc", "Subject", "Body"

Essentially what that means is at the 0 minute (top of) every hour of every day send an email. This can even be customized to only do on business days etc.

@jseanor

I’ll give that a try. Do you think this would update closer to the hour than what I was doing before in the 4 step process you described above?

@nickTriPhase1

While I can’t say until I know what exactly you are sending, that would trigger exactly at the top of the hour. If you wanted to you could even say 59 and then start a timer for say 45 seconds. So:

ONDATE "59 * * * *", "GOTO StartTimer"


StartTimer:
    TSET 1, 45
    ONTIMER 1, "goto SendEmail"

SendEmail:
    TSET 1, 0
    SENDMAIL //your mail here

So what this would do is at the 59th minute of every hour start a 45 second timer. At the end of 45 seconds send the email and disable the timer! The process to send an email takes approx 7 seconds (depending on payload) so this will get you as close to the top of the hour as possible.