Skip to content

A simple Mandrill webhook base controller for catching bounced, rejected, etc mail events.

License

Notifications You must be signed in to change notification settings

minioak/laravel-mandrillhooks

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Laravel 5 / Lumen 5 Mandrill Webhook Controller

Latest Version Software License Total Downloads

A simple Mandrill webhook controller to help with email events. Useful for notifying users that you cannot reach them via email inside your application. Compatible with Laravel 5+ and Lumen 5+.

Installation

composer require eventhomes/laravel-mandrillhooks

Basic Usage

  1. In your routes.php file add the following.
post('mandrill-webhook', ['as' => 'mandrill.webhook', 'uses' => 'MandrillController@handleWebHook']);
  1. Create a controller that extends MandrillWebhookController as follows. You can then handle any Mandrillapp webhook event.
use EventHomes\Api\Webhooks\MandrillWebhookController;

class MyController extends MandrillWebhookController {

    /**
     * Handle a hard bounced email
     *
     * @param $payload
     */
    public function handleHardBounce($payload)
    {
        $email = $payload['msg']['email'];
    }

    /**
     * Handle a rejected email
     *
     * @param $payload
     */
    public function handleReject($payload)
    {
        $email = $payload['msg']['email'];
    }
}

Webhook event types:

Event type Method Description
Sent handleSend() message has been sent successfully
Bounced handleHardBounce() message has hard bounced
Opened hadleOpen() recipient opened a message; will only occur when open tracking is enabled
Marked As Spam handleSpam() recipient marked a message as spam
Rejected handleReject() message was rejected
Delayed handleDeferral() message has been sent, but the receiving server has indicated mail is being delivered too quickly and Mandrill should slow down sending temporarily
Soft-Bounced handleSoftBounce() message has soft bounced
Clicked handleClick() recipient clicked a link in a message; will only occur when click tracking is enabled
Recipient Unsubscribes handleUnsub() recipient unsubscribes
Rejection Blacklist Changes handleBlacklist() triggered when a Rejection Blacklist entry is added, changed, or removed
Rejection Whitelist Changes handleWhitelist() triggered when a Rejection Whitelist entry is added or removed

About

A simple Mandrill webhook base controller for catching bounced, rejected, etc mail events.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%