++ed by:
DRTECH

1 PAUSE user(s)
1 non-PAUSE user(s).

Juan José San Martín

NAME

Email::Send::SMTP::Gmail - Sends emails with attachments supporting Auth over TLS or SSL (for example: Google's SMTP).

SYNOPSIS

   use strict;
   use warnings;

   use Email::Send::SMTP::Gmail;

   my $mail=Email::Send::SMTP::Gmail->new( -smtp=>'smtp.gmail.com',
                                           -login=>'whateveraddress@gmail.com',
                                           -pass=>'whatever_pass');

   $mail->send(-to=>'target@xxx.com', -subject=>'Hello!', -body=>'Just testing it',
               -attachments=>'full_path_to_file');

   $mail->bye;

DESCRIPTION

Simple module to send emails through Google's SMTP with or without attachments. Also supports regular Servers (with plain or none auth). Works with regular Gmail accounts as with Google Apps (your own domains). It supports basic functions such as CC, BCC, ReplyTo.

new(-login=>'', -pass=>'' [,-smtp=>'',layer=>'',-port=>'',-debug=>''])

It creates the object and opens a session with the SMTP.

smtp: defines SMTP server. Default value: smtp.gmail.com
layer: defines the secure layer to use. It could be 'tls', 'ssl' or 'none'. Default value: tls
port: defines the port to use. Default values are 25 for tls and 465 for ssl
auth: defines the authentication method: ANONYMOUS, CRAM-MD5, DIGEST-MD5, EXTERNAL, GSSAPI, LOGIN (default) and PLAIN. It's currently based on SASL::Perl module
debug: see the log information

Also supports SSL parameters as:

ssl_verify_mode: SSL_VERIFY_NONE | SSL_VERIFY_PEER
ssl_verify_path: SSL_ca_path if SSL_VERIFY_PEER
ssl_verify_file: SSL_ca_file if SSL_VERIFY_PEER
send(-from=>'', -to=>'', [-subject=>'', -cc=>'', -bcc=>'', -replyto=>'', -charset=>'', -body=>'', -attachments=>'', -verbose=>'1'])

It composes and sends the email in one shot

to, cc, bcc: comma separated email addresses
contenttype: Content-Type for the body message. Examples are: text/plain (default), text/html, etc.
attachments: comma separated files with full path
attachmentslist: hashref $list, in format $list->[x]->{name} of files with full path. Example: $list->[0]->{file}='/full_path/file.pdf'
bye

Closes the SMTP session

Examples

Examples

    Send email composed in HTML using Gmail

          use strict;
          use warnings;
          use Email::Send::SMTP::Gmail;
          my $mail=Email::Send::SMTP::Gmail->new( -smtp=>'smtp.gmail.com',
                                                  -login=>'whateveraddress@gmail.com',
                                                  -pass=>'whatever_pass');
    
          $mail->send(-to=>'target@xxx.com', -subject=>'Hello!',
                      -body=>'Just testing it<br>Bye!',-contenttype=>'text/html');
          $mail->bye;

    Send email using a SMTP server without secure layer and authentication

          use strict;
          use warnings;
          use Email::Send::SMTP::Gmail;
          my $mail=Email::Send::SMTP::Gmail->new( -smtp=>'my.smtp.server',-layer=>'none', -auth=>'none');
    
          $mail->send(-from=>'sender@yyy.com', -to=>'target@xxx.com', -subject=>'Hello!',
                      -body=>'Quick email');
          $mail->bye;

    Send email with attachments in comma separated format

          use strict;
          use warnings;
          use Email::Send::SMTP::Gmail;
          my $mail=Email::Send::SMTP::Gmail->new( -smtp=>'smtp.gmail.com',
                                                  -login=>'whateveraddress@gmail.com',
                                                  -pass=>'whatever_pass');
    
          $mail->send(-to=>'target@xxx.com', -subject=>'Hello!',
                      -body=>'Just testing it<br>Bye!',-contenttype=>'text/html',
                      -attachments=>'/full_path/file1.pdf,/full_path/file2.pdf');
          $mail->bye;

    Send email with attachments using hashref

          use strict;
          use warnings;
          use Email::Send::SMTP::Gmail;
          my $mail=Email::Send::SMTP::Gmail->new( -smtp=>'smtp.gmail.com',
                                                  -login=>'whateveraddress@gmail.com',
                                                  -pass=>'whatever_pass');
    
          my $att;
          $att->[0]->{file}='/full_path/file.pdf';
          $att->[1]->{file}='/full_path/file1.pdf';
    
          $mail->send(-to=>'target@xxx.com', -subject=>'Hello!',
                      -body=>'Just testing it<br>Bye!',-contenttype=>'text/html',
                      -attachmentlist=>$att);
          $mail->bye;

BUGS

Please report any bugs or feature requests to bug-email-send-smtp-gmail at rt.cpan.org or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Email-Send-SMTP-Gmail. You will automatically be notified of the progress on your bug as we make the changes.

SUPPORT

You can find documentation for this module with the perldoc command.

    perldoc Email::Send::SMTP::Gmail

You can also look for information at:

AUTHORS

Martin Vukovic, <mvukovic at microbotica.es>

Juan Jose 'Peco' San Martin, <peco at cpan.org>

Flaviano Tresoldi, <info@swwork.it>

COPYRIGHT

Copyright 2013 Microbotica

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.




Hosting generously
sponsored by Bytemark