How to embed a dynamic link in the email notification via mail script

nameisnani
Mega Sage

Hi Team ,

 

Need help with the mail script to redirect the user to the survey link . 

 

https://<instance-name>.service-now.com/esc?id=take_survey&type_id=d241f419471b21100a2e3e58c26d4338

 

The link should be dynamic .

 

(function runMailScript( /* GlideRecord */ current, /* TemplatePrinter */ template,
    /* Optional EmailOutbound */
    email, /* Optional GlideRecord */ email_action,
    /* Optional GlideRecord */
    event) {


    gs.log("current " + current.number, 'sys');

    var surv = new GlideRecord('asmt_assessment_instance');
    surv.addNotNullQuery('trigger_id');
    surv.addQuery('trigger_id', current.sys_id);
    surv.query();
    surv.next();
    gs.log("Incident from survey " + surv.number, 'sys');

    var params = current.number + "," + surv.number;
    var subject = "survey:" + surv.number + " " + " " + "incident:" + current.number + " ";
    //var mail = gs.getProperty("instance_name") + "@service-now.com";
    //var mail = "testgpt0070@gmail.com";
    email.setSubject(subject);
    template.print('<br/>In order to improve the quality of our service, we invite you to evaluate the overall processing of your file by clicking on one of the following emoticons:<br/><br/>');

    template.print('<img src="verymad.png" width="51" height="52"/></a>');

    template.print('<img src="mad.png" width="50" height="53"/></a>');

    template.print('<img src="neutral.png" width="49" height="53"/></a>');

    template.print('<img src="happy.png" width="50" height="53"/></a>');

    template.print('<img src="veryhappy.png" width="50" height="53"/></a>')

 

 

Thanks in Advance 

 

@Chuck Tomasi 

1 ACCEPTED SOLUTION

My Bad,

Please try below.

The URL generated was not correct.

(function runMailScript( /* GlideRecord */ current, /* TemplatePrinter */ template,
    /* Optional EmailOutbound */
    email, /* Optional GlideRecord */ email_action,
    /* Optional GlideRecord */
    event) {


    gs.log("current " + current.number, 'sys');

    var surv = new GlideRecord('asmt_assessment_instance');
    surv.addNotNullQuery('trigger_id');
    surv.addQuery('trigger_id', current.sys_id);
    surv.query();
    surv.next();
    gs.log("Incident from survey " + surv.number, 'sys');

    var params = current.number + "," + surv.number;
    var subject = "survey:" + surv.number + " " + " " + "incident:" + current.number + " ";
    //var mail = gs.getProperty("instance_name") + "@service-now.com";
    //var mail = "testgpt0070@gmail.com";
    email.setSubject(subject);
    template.print('<br/>In order to improve the quality of our service, we invite you to evaluate the overall processing of your file by clicking on one of the following emoticons:<br/><br/>');

    template.print('<a href="' + gs.getProperty('glide.servlet.uri') + '/esc?id=take_survey&type_id=' + surv.sys_id + '"><img src="verymad.png" width="51" height="52"/></a>');

    template.print('<a href="' + gs.getProperty('glide.servlet.uri') + '/esc?id=take_survey&type_id=' + surv.sys_id + '"><img src="mad.png" width="50" height="53"/></a>');

    template.print('<a href="' + gs.getProperty('glide.servlet.uri') + '/esc?id=take_survey&type_id=' + surv.sys_id + '"><img src="neutral.png" width="49" height="53"/></a>');

    template.print('<a href="' + gs.getProperty('glide.servlet.uri') + '/esc?id=take_survey&type_id=' + surv.sys_id + '"><img src="happy.png" width="50" height="53"/></a>');

    template.print('<a href="' + gs.getProperty('glide.servlet.uri') + '/esc?id=take_survey&type_id=' + surv.sys_id + '"><img src="veryhappy.png" width="50" height="53"/></a>')
Please appreciate the efforts of community contributors by marking appropriate response as correct answer and helpful, this may help other community users to follow correct solution in future.
Thanks
Anil Lande

View solution in original post

15 REPLIES 15

Done Thank you so much for your quick response