The Zurich release has arrived! Interested in new features and functionalities? Click here for more

How do you resend old emails?

Alfredo6
Tera Expert

We have several requested approvals that were not answered for several weeks. When trying to resend the email, for the approvers to approve via email, I've noticed that the originating event is empty. I believe this is because the events are being automatically deleted after some time.

However, I guess it is because of this, that after using the UI Action "resend" the email record is updated to type=send-ready and mailbox=outbox. And the notification is not processed, hence it is not being resent.

Is it possible to resend an old notification that originally was triggered by an event that no longer exist?

 

1 ACCEPTED SOLUTION

aansell
Mega Expert

Hi Alfred,

Here's the solution. I got there with a bit of help from support and the comments in this thread from Brad Tilton / DaSmith9 (thanks to them both) https://community.servicenow.com/community?id=community_question&sys_id=79725f61db101fc01dcaf3231f96...

Anyway here's my take on it.

The explanation is as follows in the email records the event is missing so despite using the resend button / or changing the type to send-ready and make the mailbox the outbox. It will not send! Why....because this a notification, that is triggered based on the event, Approval.Inserted. so you have to explicitly add this event to the queue for it trigger the same email again. This means you cannot just resend from the email you have to write your own methods to re-trigger the email that you want by triggering the event. 

To quote DaSmith9 from the other thread "To re-trigger the event you need to create a scheduled job. A scheduled script job that queries against the sysapproval_approvers table for your desired conditions (aging, task type, etc) and re-fires or fires a new event referencing the approval record. The new event then triggers the approval notification, just like it did when it was originally sent."

I took the wise advise and created my own job as follows. See screenshot below.

find_real_file.png

Hope that helps,

Cheers,

Arthur

 

View solution in original post

9 REPLIES 9

aansell
Mega Expert

Hi Alfredo,

Thanks for coming back to me on this. I have raised it with SN Support and yes I will update you if I get a solution.

Best regards,

Arthur

aansell
Mega Expert

Hi Alfred,

Here's the solution. I got there with a bit of help from support and the comments in this thread from Brad Tilton / DaSmith9 (thanks to them both) https://community.servicenow.com/community?id=community_question&sys_id=79725f61db101fc01dcaf3231f96...

Anyway here's my take on it.

The explanation is as follows in the email records the event is missing so despite using the resend button / or changing the type to send-ready and make the mailbox the outbox. It will not send! Why....because this a notification, that is triggered based on the event, Approval.Inserted. so you have to explicitly add this event to the queue for it trigger the same email again. This means you cannot just resend from the email you have to write your own methods to re-trigger the email that you want by triggering the event. 

To quote DaSmith9 from the other thread "To re-trigger the event you need to create a scheduled job. A scheduled script job that queries against the sysapproval_approvers table for your desired conditions (aging, task type, etc) and re-fires or fires a new event referencing the approval record. The new event then triggers the approval notification, just like it did when it was originally sent."

I took the wise advise and created my own job as follows. See screenshot below.

find_real_file.png

Hope that helps,

Cheers,

Arthur

 

Hello Arthur,

Thanks for the reply! That does work.

Cheers,

Alfredo

i'm trying this solution today but not getting it to work.  Does this solution still work today?

Hello Les1, 

It works for notifications triggered via events. You just have to execute the event again, easiest way is through a script with the method gs.eventQueue('event name',recordGR, parm1, parm2). For approvals just execute the approval.inserted (or your event for the approval email you want to send).