The CreatorCon Call for Content is officially open! Get started here.

petercawdron
Kilo Guru

When creating new records from an inbound email action, it can be handy to attach the original email to the record.

//This script will take contents from an inbound email and create an attachment on the created record from the inbound email action.   
var emailAsAttachment = new global.emailAsAttachmentUtil();
emailAsAttachment.create(email, current);

This Script Includes will add the inbound email as an attachment on the new

var emailAsAttachmentUtil = Class.create();
emailAsAttachmentUtil.prototype = {
	initialize: function() {
		this.newLineChar = "\n";   
		this.contentType = "text/html";
	},

	create: function(emailRec, currentRec){

		var emailDetails = "To: "+emailRec.to+ "\n";
		if(!gs.nil(emailRec.cc)){emailData.push("Cc: " + emailRec.cc);}
		emailDetails+= "Subject: " + emailRec.subject + "\n";
		emailDetails+= "From:"+ emailRec.origemail + "\n";
		emailDetails+= "X-Unsent: 1" + "\n";
		emailDetails+= "Content-Type: text/html" + "\n\n";
		emailDetails+= emailRec.body_html;
		
		var sysAttachment = new GlideSysAttachment();
		sysAttachment.write(currentRec, emailRec.subject+'.eml', "text/html", emailDetails);
	},

	type: 'emailAsAttachmentUtil'
};
Version history
Last update:
‎06-25-2019 04:06 PM
Updated by: