Интеграция с электронной почтой Amazon (SES)

Я пытаюсь создать новое приложение на Laravel 4 и изо дня в день узнаю больше о Laravel.

Я использую сервер Amazon EC2 и хочу интегрировать Amazon SES в свое приложение в качестве библиотеки электронной почты по умолчанию. Я могу сделать это вручную с помощью AWS PHP SDK, однако:

Мне было интересно... Будет ли это подходящим или возможным реализовать его как метод электронной почты по умолчанию на Laravel 4, и как я могу это сделать? Должен ли я написать библиотеку, которая поддерживает все функции почтового пакета Laravel по умолчанию, или мне просто реализовать SMTP-функцию SES?

В основном я хочу отправлять все свои электронные письма через SES. Было бы неплохо узнать, есть ли другой метод, кроме SMTP. (Таким образом, имея мою собственную библиотеку электронной почты с поддержкой SES, интегрированную прямо во все основные функции Laravel, такие как напоминание пароля аутентификации, я мог бы воспользоваться функциями, характерными для Amazon SES, такими как регионы [хотя это пока только в одном регионе], очереди и т.д...) Было бы неплохо определить 'driver' => 'aws-ses' в app/config/mail.php :)

Заранее спасибо,


person Oytun    schedule 29.05.2013    source источник


Ответы (1)


По сути, вы можете расширить Illuminate\Mail\MailServiceProvider по умолчанию, включив ses, особенно в https://github.com/laravel/framework/blob/master/src/Illuminate/Mail/MailServiceProvider.php#L78

Насколько мне известно, на http://packagist.org доступен транспорт Amazon SES SwiftMailer, который вы можете использовать. Было бы хорошо, если бы вы могли поделиться пакетом со всеми остальными :)

Обновлять:

Транспорт SES теперь поддерживается по умолчанию в версии 5.0.

person crynobone    schedule 30.05.2013
comment
Большое спасибо за ваш ответ. Кажется, он направляет меня на правильный путь. Я дам вам всем знать, если мне удастся добиться стабильной реализации :) - person Oytun; 30.05.2013
comment
Вы добились каких-либо успехов в этом? - person Ben Swinburne; 01.05.2014
comment
В итоге я написал свой собственный класс Email в нашем внутреннем API, который можно переключить на использование SES и Mandrill или чего угодно с подклассами. Поэтому я полностью отказался от использования класса электронной почты Laravel. - person Oytun; 08.01.2015
comment
Транспорт SES теперь поддерживается по умолчанию в версии 5.0. - person crynobone; 26.02.2015