APR Email Stability

Any idea if this is possible via code / BPM engine?

Not sure that there is. A large variety of things could be at play here though depending on how you send mail. Do you use a sending service like SendGrid, do you hit an on prem server and route mail directly, do you use mail connector with O365, do you email through O365 directly, do you have an on prem relay, do you email through a preprocessor that could add headers for you. There are a ton of ways to send and manage email, and realistically if your server doesn’t throw an exception trying to send an email, then your server logging on the email side should have all the answers you need at which point you could use something like zabbix to alert from logging when something goes wrong, but again depending on how you have your sending setup. 30 ways to skin this cat, and even if you could add return path that only handles a portion of the total chain.

1 Like

I’d guess that “email receipts” were designed into mail systems, for this very thing. But once spammers and hackers started abusing them, they became obsolete…

“This is why we can’t have nice things”

Also, we use an external spam filter company. I’m not sure what it does when it receives suspicious mail, and holds off on forwarding it to our mail servers. If I never never approve or reject it, does the sender think it went through?

We are using Office365 with Exchange on line if it helps identify the solution.

So true. :weary:

Anyway, I’m assuming if they don’t approve spam filtration, that is beyond my control. I can look at our email server log in O365 and see the date / time it was delivered if it comes to that

Are you using a local relay and using a mail connector with your O365 (if not I highly recommend it). If you are you can monitor the relay’s SMTP logs directly.

Ref to my compadre in arms Multilple E-mails without anonymous authentication - #20 by EarlGrei

1 Like

Unfortunately, we are not. We had one in place but took it out to eliminate additional servers :frowning:

Just run it on your APM server. You must have a windows server that runs additional services outside Epicor. Again it’s only one piece of the puzzle anyways but would allow you to monitor and alert on the SMTP log from something like zabbix

1 Like

Thanks for the information! I will look into the post you referenced. I think this will help identify issues with O365 :smiley:

To be fair I don’t think in the last 4 years of having O365 we have once had an issue with O365 and sending unless something global was occuring. So if it’s pretty regular that things are not making it through your email the relay may help with that. You can adjust flow rate and things that I believe can make O365 behave better as a whole when doing a mass send and will perform retries where Epicor and APM will not. @EarlGrei can confirm or deny that but I believe those are the sorts of benefits we utilize.

1 Like

For the sake of argument, one could potentially look at the resulting SysTask record which typically includes the number of emails sent. It’s cumbersome and not a great approach, but might be useful in a pinch.

I already am breaking the invoice group down into one invoice per SysTask so that might prove useful. What field indicates the number of emails sent? Do you happen to know what causes the value to increase?

I am not sure, I never really paid much attention but I did note in the description it said something like "email: 4 " or similar

1 Like

It’s the Activity Field.

2 Likes

If an APR breaking was to generate 10 emails, would just one SysTask be created with that Activity indicating “Email:10;” ?

Yes sir-re-re

So I set up a local SMTP service, and then ran a couple of tests.

624632 - If I pause the service, I receive an error and it shows a value of 1 in Activity. I was expecting the message would queue up. But I can work with this since it threw the error right away.

624633 - If I email the report by pressing the email button, I receive nothing in the ActivityMsg field even though it did send an email. Not a big deal since print routing engine is different

624634 - If I email the report using routing rule, the email delivery is shown in the ActivityMsg field. I think I can work with this.

One issue we have is that if too many are being processed, we can get errors in APM back from O365. I’m thinking maybe the SMTP relay server can be used to prevent this. Do you know if the local server can be used to queue up messages to slow them down on the way to O365?

I am going to defer to @EarlGrei he handled that part of it, but I know that the relay helped with the flood messaging in some way or another. Our exact config I’m not sure but it might be included in that experts corner post.

1 Like

But the InitiatorSource field can be used to determine if this was initialed by the email button vs a break route.

The following highlighted ones are from the Email button.

image

1 Like

Yes that makes sense, thanks