Notification for article expiry using schedule job

SM123
Tera Expert

Hello,

The requirement is to send a notification to ownership group members (if present) , else to knowledge managers. First reminder will be sent 30 days before expiry, second reminder will be sent 15 days before, 3rd email at 7 days, and last email at 1 day. i have written a schedule job but it is not running as expected. Kindly help me through it.

Schedule job :

// Define the days before expiry for which you want to trigger the event
var daysBeforeExpiry = [30, 15, 7, 1];

var gr = new GlideRecord('kb_knowledge');
gr.addEncodedQuery('workflow_stateINpublished^kb_knowledge_base.active=true');
gr.query();

while (gr.next()) {
    var validTo = new GlideDateTime(gr.getValue('valid_to'));
    var today = new GlideDateTime();
    var diffDays = gs.dateDiff(today, validTo, true) / (1000 * 60 * 60 * 24); // Calculate the difference in days

    if (daysBeforeExpiry.indexOf(diffDays) !== -1) {
        // Trigger an event for each specific interval before expiry
        gs.eventQueue('testing_expiry', gr, gr.author.email, gr.kb_knowledge_base.manager.email);
    }
}

Thank you!

Your response will be appreciated.

0 REPLIES 0