courtesy of Jithender Nayini
example table contained in inbound email:
inbound action code:
// Note: current.opened_by is already set to the first UserID that matches the From: email address
current.caller_id = gs.getUserID();
current.comments = "received from: " + email.origemail + "\n\n" + email.body_text;
current.short_description = email.subject;
//current.category = "request";
current.incident_state = IncidentState.NEW;
current.notify = 2;
current.contact_type = "email";
var htmlcode=email.body_html;
htmlcode = htmlcode.replace(/<style([\s\S]*?)<\/style>/gi, '');
htmlcode = htmlcode.replace(/<script([\s\S]*?)<\/script>/gi, '');
htmlcode = htmlcode.replace(/<\/div>/ig, '\n');
htmlcode = htmlcode.replace(/<\/li>/ig, '\n');
htmlcode = htmlcode.replace(/<li>/ig, ' * ');
htmlcode = htmlcode.replace(/<\/ul>/ig, '\n');
htmlcode = htmlcode.replace(/<\/p>/ig, '\n');
htmlcode = htmlcode.replace(/<br\s*[\/]?>/gi, "\n");
htmlcode = htmlcode.replace(/<[^>]+>/ig, '');
htmlcode=htmlcode.replace(' ','');
htmlcode=htmlcode.replace(/\r?\n|\r/g,'');
gs.log("final email String "+htmlcode);
var indesREG = new SNC.Regex('/Category.*Short_Description/si'); // this line will get the value of string between Category: and Short Description
gs.log('indesREG'+indesREG);
var finalvalue = indesREG.match(htmlcode).toString();
var regex = /(?:Category)(.*)(?:Short_Description)/g;
finalvalue = regex.exec(finalvalue);
gs.log('JN FinalValue '+finalvalue[1]);
current.category = finalvalue[1];
gs.log('finalvalue'+finalvalue);
if (email.body.assign != undefined)
current.assigned_to = email.body.assign;
if (email.importance != undefined) {
if (email.importance.toLowerCase() == "high") {
current.impact = 1;
current.urgency = 1;
}
}
if (current.canCreate())
current.insert();
Comments
Post a Comment