diff --git a/Server-Side Components/Scheduled Jobs/Unblock bounced email address/readme.md b/Server-Side Components/Scheduled Jobs/Unblock bounced email address/readme.md new file mode 100644 index 0000000000..60605826ac --- /dev/null +++ b/Server-Side Components/Scheduled Jobs/Unblock bounced email address/readme.md @@ -0,0 +1,8 @@ +This Scheduled Script Execution in ServiceNow is designed to automatically reset the bounced_email_count for active users who have exceeded a threshold. +It helps maintain email hygiene and ensures that users with high bounce rates are flagged and reset for further investigation or remediation. + + +Purpose +To identify active users with a bounced_email_count greater than 8 and reset their state and count to allow for reprocessing or follow-up. + +https://support.servicenow.com/kb?id=kb_article_view&sysparm_article=KB1646657 diff --git a/Server-Side Components/Scheduled Jobs/Unblock bounced email address/script.js b/Server-Side Components/Scheduled Jobs/Unblock bounced email address/script.js new file mode 100644 index 0000000000..0ae7d69a90 --- /dev/null +++ b/Server-Side Components/Scheduled Jobs/Unblock bounced email address/script.js @@ -0,0 +1,21 @@ + + var blockedGR = new GlideRecord('sys_blocked_email_address'); + blockedGR.addQuery('fail_count', '>', 8); + blockedGR.query(); + + while (blockedGR.next()) { + var userGR = new GlideRecord('sys_user'); + userGR.addQuery('email', blockedGR.email_address); + userGR.addQuery('active', true); + userGR.query(); + + if (userGR.next()) { + // Update user record + userGR.state = 'new'; + userGR.update(); + + // Reset fail_count on blocked email record + blockedGR.fail_count = 0; + blockedGR.update(); + } + }