logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Mail::SendEasy::SMTP - Handles the communication with the SMTP server without dependencies.

Author

       Graciliano M. P. <gm@virtuasites.com.br>

Description

       This module will handle the communication with the SMTP server.  It hasn't dependencies and supports
       authentication.

Methods

new($host,$port,$timeout,$user,$pass)
       Create the SMTP object and connects to the server.

   connect
       Connect to the server.

   auth_types
       The authentication types supported by the SMTP server.

   auth($user,$pass)
       Does the authentication.

   print(data)
       Send data to the socket connection.

   cmd(CMD,@MORE)
       Send a command to the server.

   response
       Returns the code response.

       If wantarray returns an ARRAY with the response lines.

   last_response
       Returns an ARRAY with the response lines.

   last_response_msg
       The last response text.

   last_response_line
       The last response line (code and text).

   closeQUIT and close the connection.

Name

       Mail::SendEasy::SMTP - Handles the communication with the SMTP server without dependencies.

Usage

         use Mail::SendEasy ;

         $smtp = Mail::SendEasy::SMTP->new( 'domain.foo' , 25 , 120 ) ;

         if ( !$smtp->auth ) { warn($smtp->last_response_line) ;}

         if ( $smtp->MAIL("FROM:<$mail{from}>") !~ /^2/ ) { warn($smtp->last_response_line) ;}

         if ( $smtp->RCPT("TO:<$to>") !~ /^2/ ) { warn($smtp->last_response_line) ;}

         if ( $smtp->RCPT("TO:<$to>") !~ /^2/ ) { warn($smtp->last_response_line) ;}

         if ( $smtp->DATA =~ /^3/ ) {
           $smtp->print("To: foo@foo") ;
           $smtp->print("Subject: test") ;
           $smtp->print("\n") ;
           $smtp->print("This is a sample MSG!") ;
           if ( $smtp->DATAEND !~ /^2/ ) { warn($smtp->last_response_line) ;}
         }

         $smtp->close ;

See Also