Skip to content

freespee/Swiftmailer-Transport--AWS-SES

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

What is it?

It's a simple transport for use with Swiftmailer to send mail over AWS SES.

As of December 2011, Amazon provides an SMTP interface to SES, so you may prefer to use Swiftmailer's built in SMTP transport.

Where do I put it?

The best way to use it is through composer.

$ composer require jmhobbs/swiftmailer-transport-aws-ses

Which will bring in Swiftmailer if you don't already have it installed.

Otherwise Swift can autoload it if you put the files in this directory:

[swift library root]/classes/Swift/AWSTransport.php

How do I use it?

Like any other Swiftmailer transport:

//Create the Transport
$transport = Swift_AWSTransport::newInstance( 'AWS_ACCESS_KEY', 'AWS_SECRET_KEY' );

//Create the Mailer using your created Transport
$mailer = Swift_Mailer::newInstance($transport);

$mailer->send($message);

Swiftmailer <= 5.x

The current branch has been update to be compatible with Swiftmailer 6. If you need the old branch, it is availble under the 0.9.x tags, or the swiftmailer-5.x branch.

Symfony1.X configuration

```yaml
# app/frontend/config/factories.yml

all:
  mailer:
    class: sfMailer
    param:
      transport:
        class:          Swift_AWSTransport
        accessKeyId:    your-access-key
        secretKey:      Y0uR-$3cr3t5-k3y
        debug:          false
        endpoint:       'https://email.us-east-1.amazonaws.com/' # make sure to use trailing slash !
```

How do I get the message ID on send?

You need to register the Swift_Events_ResponseReceivedListener plugin with a callback. See example/responseListener.php for details.

$transport->registerPlugin(
	new Swift_Events_ResponseReceivedListener( function ( $message, $body ) {
		echo sprintf( "Message-ID %s.\n", $body->SendRawEmailResult->MessageId );
	})
);

Swiftmailer Version

Please note that some users have had issues with older versions of Swiftmailer.

Versions 4.1.3 and up should work fine.

Credits

  • @jmhobbs - Original development
  • @bertrandom - Bug fix
  • @themouette - Plugins & Symfony compatible
  • @jonatrey & @faz - Debugging and Testing issue #13
  • @casconed - Made debug function more robust, issue #21
  • @martijngastkemper - Added responseReceived event to get message id from AWS
  • @weierophinney - Swiftmailer 6 support

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 8

Languages