Click here to Skip to main content
Licence CPOL
First Posted 25 Jul 2008
Views 28,841
Downloads 182
Bookmarked 7 times

Automate Client Lotus Mail using JavaScript

By | 27 Jan 2009 | Article
Send mail through Lotus Notes using JavaScript
LotusMail

Introduction

In the name of God, I am starting this white paper. Some of the programmers have written articles for automating Lotus Notes (send email through Lotus Notes) in Windows application. But when we want to send email through Lotus Notes on the client side, we have the choice of Java scripting.

This JavaScript directly automates the client side Lotus client. The basic idea is to get the client side Lotus database and inject your mail into the mail database. I will not write more here. But the script will do.

Implementation

Here I have listed out the script for sending email through Lotus Notes. First we have to create ActivexObject for Lotus.NotesSession, then we have to use the methods of that object to send mail. We can have several methods in activeX object to automate Lotus Notes. We have to create a mail document object to create the mail subject and content.

JavaScript Code

function SendScriptMail(mToMail,mSub,mMsg) 
{ 
    var Maildb; 
    var UserName; 
    var MailDbName; 
    var MailDoc; 
    var AttachME; 
    var Session; 
    var EmbedObj; 
    var server; 
    try 
    { 
        // Create the Activex object for NotesSession 
        Session = new ActiveXObject('Notes.NotesSession'); 
        if(Session !=null) 
        { 
            // Get the user name to retrieve database 
            UserName = Session.UserName; 
            // Retrieve database from username 
            MailDbName = UserName.substring(0,1) + UerName.substring(
                UserName.indexOf( " " ,1) + 1 ,UserName.length) + ".nsf" 
            // Get database 
            Maildb = Session.GetDatabase("", MailDbName); 
            // open the database 
            if(Maildb.IsOpen != true) 
            { 
                Maildb.OPENMAIL(); 
            } 
            // Create the mail document 
            MailDoc = Maildb.CREATEDOCUMENT(); 
            // From email id (Username) 
            MailDoc.Form = 'Memo'; 
            // To email id 
            MailDoc.sendto = mToMail; 
            // Subject of the mail 
            MailDoc.Subject = mSub; 
            // Content of the mail 
            MailDoc.Body = mMsg 
                // if you want to save message on send, give true here 
                MailDoc.SAVEMESSAGEONSEND = false; 
            // send the mail (check ensure the internet connection) 
            MailDoc.Send(true); 
            // save the mail in draft (no need of internet connection) 
            MailDoc.Save(false, true); 
            // destroy the objects 
            Maildb = null; 
            MailDoc = null; 
            AttachME = null; 
            EmbedObj = null; 
            Session.Close(); 
            Session = null; 
            alert('Mail sent successfully'); 
        } 
        else 
        { 
            alert('Mail not sent'); 
        } 
    } 
    catch(err) 
    { 
        if(err == '[object Error]') 
        { 
            alert('Error while sending mail,
		Please check Lotus Notes installed in your system'); 
        } 
        else 
        { 
            alert('Error while sending mail'); 
        } 
    } 
}

Limitation of Usage

Important Note: For security reasons, Internet Explorer does not allow scripts to create ActivexObject on the client side. So the script will not work. To avoid this, we have to change the internet security settings, go to “Internet Options” from tools menu, then go to “Security” tab, select “local intranet” or “internet”, click “Custom Level” button, then the security settings dialog will open, select “Initialize and script ActiveX controls not marked as safe for scripting”, select “enable” or “Prompt” option. Changing this, you have to lose your security on the internet. So better change the same settings in “Trusted Sites” and add your page into “Trusted Sites”.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

About the Author

Mohamed Ishak

Software Developer (Senior)
Delonti IT Services
India India

Member

basically I am a windows application developer and working in microsoft technologies.I have more than 5 year of experience in windows application development.Now i have moved to web development world.I have much more intrest in embedded software development.
 
Currently i am working for Delonti IT Services as a senior software engneer.

Sign Up to vote   Poor Excellent
Add a reason or comment to your vote: x
Votes of 3 or less require a comment

Comments and Discussions

 
You must Sign In to use this message board. (secure sign-in)
 
Search this forum  
 FAQ
    Noise  Layout  Per page   
  Refresh
GeneralHTML body content and one Bug in code PinmemberTomastest20:40 6 Jul '10  
GeneralRe: HTML body content and one Bug in code PinmemberMohamed Ishak1:15 14 Sep '10  
GeneralMaildoc.Form problem PinmemberGablaHabla0:34 19 Mar '10  
GeneralRe: Maildoc.Form problem PinmemberMohamed Ishak18:57 30 Mar '10  
GeneralGetting Error PinmemberTharikaishu16:02 8 Dec '09  
GeneralRe: Getting Error [modified] PinmemberMohamed Ishak2:55 5 Jan '10  
GeneralSend to multiple recepients Pinmemberdivya.katti23:05 30 Sep '09  
GeneralRe: Send to multiple recepients PinmemberMohamed Ishak3:17 5 Jan '10  
GeneralIn the name of God PinPopularmvpChristian Graus11:34 18 Sep '09  
QuestionLotus notes? PinassociateJim Crafton10:25 18 Sep '09  
GeneralMy vote of 1 PinmemberCPAV7:40 27 Jan '09  
Generaltried the code but it is giving error PinmemberMember 24890841:38 30 Dec '08  
GeneralRe: tried the code but it is giving error PinmemberMohamed Ishak22:32 26 Jan '09  
GeneralRe: tried the code but it is giving error PinmemberMohamed Ishak2:56 27 Jan '09  
GeneralRe: PinmemberMohamed Ishak1:31 31 Jan '09  
GeneralRe: tried the code but it is giving error Pinmemberdramesh12323:13 3 Mar '09  
GeneralRe: tried the code but it is giving error PinmemberMohamed Ishak1:06 31 Jan '09  
GeneralAttachments and multiple recipients PinmemberFpoma17:59 13 Dec '08  
GeneralRe: Attachments and multiple recipients PinmemberMohamed Ishak1:02 31 Jan '09  
GeneralFormatting Pinmemberleckey4:12 25 Jul '08  
GeneralRe: Formatting PinmemberMohamed Ishak17:55 27 Jul '08  

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Permalink | Advertise | Privacy | Mobile
Web02 | 2.5.120517.1 | Last Updated 27 Jan 2009
Article Copyright 2008 by Mohamed Ishak
Everything else Copyright © CodeProject, 1999-2012
Terms of Use
Layout: fixed | fluid