Automatic message sending

This code allows the automatic sending of a plaintext email message:

// Set the data of the message
let compFields = Components.classes["@mozilla.org/messengercompose/composefields;1"].createInstance(Components.interfaces.nsIMsgCompFields);
compFields.from = "from@example.com";
compFields.to = "to@example.com";
compFields.subject = "test";
compFields.body = "message body\r\n";
let msgComposeParams = Components.classes["@mozilla.org/messengercompose/composeparams;1"].createInstance(Components.interfaces.nsIMsgComposeParams);
msgComposeParams.composeFields = compFields;
let gMsgCompose = Components.classes["@mozilla.org/messengercompose/compose;1"].createInstance(Components.interfaces.nsIMsgCompose);
let msgSend = Components.classes["@mozilla.org/messengercompose/send;1"].createInstance(Components.interfaces.nsIMsgSend);
Components.utils.import("resource:///modules/mailServices.js");
let am = MailServices.accounts;
gMsgCompose.initialize(msgComposeParams);
gMsgCompose.SendMsg(msgSend.nsMsgDeliverNow,
                    am.defaultAccount.defaultIdentity, // identity
                    am.defaultAccount, // account
                    null, // message window
                    null); // nsIMsgProgress

Document Tags and Contributors

 Last updated by: Aryx,