Skip to content

A simple bundle for integrating the Sendgrid PHP library into the Symfony2 framework.

License

Notifications You must be signed in to change notification settings

tystr/TystrSendgridBundle

Repository files navigation

TystrSendgridBundle

Build Status Test Coverage

A simple bundle for integrating the sendgrid php library into the Symfony2 framework.

Installation

Composer

Require the package with the following command:

$ composer.phar require tystr/sendgrid-bundle

Configuration

Enable the bundle by adding it to the list of registered bundles in the app/AppKernel.php file of your project:

new Tystr\Bundle\SendgridBundle\TystrSendgridBundle(),

Add the following to your configuration file:

tystr_sendgrid:
    username: YOUR_SENDGRID_USERNAME
    password: YOUR_SENDGRID_PASSWORD

Usage

Retrieve the service like so:

$sendgrid = $this->get('tystr_sendgrid.sendgrid');

See the Sendgrid Documentation for more information.

WebHooks

The bundle supports sendgrid webhooks.

Add the bundles routing to your application

# in app/config/routing.yml

sendgrid_hooks:
    resource: "@TystrSendgridBundle/Resources/config/routing.xml"

Listen to any of the hook events

    <service id="acme_sendgrid_listener" class="Acme\Bundle\SendgridListener">
        <tag name="kernel.event_listener" event="sendgrid.bounce" method="onEmailBounce" />
    </service>
namespace Acme\Bundle;

use Tystr\Bundle\SendgridBundle\Event\WebHookEvent;

class SendgridListener
{
    public function onEmailBounce(WebHookEvent $event)
    {
        $this->logger->info('Address bounced: ' . $event-getEmail()->getOrElse('unknownEmail'));
    }
}

Register the webhook

In the sendgrid interface, register the URL http://yourApp.com/__tystr/sendgrid as the webhook.

About

A simple bundle for integrating the Sendgrid PHP library into the Symfony2 framework.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages