Please note that VisualCron support is not actively monitoring this community forum. Please use our contact page for contacting the VisualCron support directly.


thomas
2021-04-22T09:01:26Z
This is a general question about handling sending of emails in vc.

Email is notoriously unstable in general, and we sometimes have jobs that fail entirely because of some email failure (smtp server blipp, email rejected and so on). Does anybody have any good experience on solving this problem from a VC point of view? Having a simple retry rarely works I have found. I have considerered creating a message queue for handling this in RabbitMQ, but it is a lot of work. I have also considered having a separate job that handles sending emails. The other jobs can call this job async, put job in queue, and without inheriting exit code. This way the calling job will not fail, but it is only a thought experiment so far.
Sponsor
Forum information
Support
2021-04-23T12:38:58Z
Originally Posted by: thomas 

This is a general question about handling sending of emails in vc.

Email is notoriously unstable in general, and we sometimes have jobs that fail entirely because of some email failure (smtp server blipp, email rejected and so on). Does anybody have any good experience on solving this problem from a VC point of view? Having a simple retry rarely works I have found. I have considerered creating a message queue for handling this in RabbitMQ, but it is a lot of work. I have also considered having a separate job that handles sending emails. The other jobs can call this job async, put job in queue, and without inheriting exit code. This way the calling job will not fail, but it is only a thought experiment so far.



My initial thought to this was something it seems you already thought of; " I have also considered having a separate job that handles sending emails. The other jobs can call this job async, put job in queue, and without inheriting exit code. This way the calling job will not fail, but it is only a thought experiment so far.".

That is what I would attempt most likely, when it comes to solutions within visualcron to handle this.
Michael
Support
http://www.visualcron.com 

Please like  VisualCron on facebook!
thomas
2021-04-23T14:34:19Z
Thanks, I will try it out
Joey S
2021-04-27T15:36:27Z
Our mail tasks are pretty straightforward; internal exchange sending anonymously through port 25. The message just goes and the only issues we ever have would be unhandled variable translations.
AHTECH
2021-10-19T12:48:17Z
@  thomas
Did you ever setup the async solution? I'm wondering how it's working and if you can share details. We are having similar issues.
thomas
2021-10-19T14:21:35Z
No unfortunately it became to complicated. The problem is if I send an email to 20 recipients, and it fails on one of them. I have no way of knowing which of the other 19 recipients actually received the mail. If i do a retry, I may end up sending mails multiple times to the same recipients. We are looking at services like mailgun.com, but it is a bit annoying to spend money these kind of things. It would be nice with a mail task that had a retry per recipient, and no on the task as a whole. Alternatively, the task could send to all the recipients and only log the ones that failed.

Thomas
Joey S
2021-11-22T20:25:12Z
Thomas, have you ever looked into the issues on the exchange server side? I can't even make VC throw an error if I try when sending an email.

If I address a message to an account I know does not exist it simply goes to the exchange server. I know the message doesn't get past the exchange server so no message is returned but VisualCron certainly does not know that.

Can you describe your situation a little more because it seems like you are trying to find a solution in VC when maybe the solution should be somewhere else
thomas
2021-11-23T10:51:51Z
Tanks Joey, that is nice to know. I guess I have looked in the wrong pace. I will talk to our Exchange server guys, and see if there are some tweaks that can be made.
Scroll to Top