# VWO Engage (previously PushCrew) Push Notifications Channel for Laravel

Latest Version on Packagist Software License Build Status StyleCI Quality Score Code Coverage Total Downloads

This package makes it easy to send notifications using VWO Engage with Laravel.

# Contents

# Installation

You can install the package via composer:

composer require laravel-notification-channels/vwo-engage

# Setting up the VWO Engage service

Add your VWO Engage API Token to your config/services.php:

// config/services.php
'vwo-engage' => [
    'token' => env('VWO_ENGAGE_API_TOKEN'),
]

# Usage

Now you can use the channel in your via() method inside the notification:

use Illuminate\Notifications\Notification;
use NotificationChannels\Engage\EngageChannel;
use NotificationChannels\Engage\EngageMessage;

class AccountApproved extends Notification
{
    public function via($notifiable)
    {
        return [EngageChannel::class];
    }

    public function toEngage($notifiable)
    {
        return EngageMessage::create()
                    ->subject('Your account was approved!')
                    ->body('Click here to see details.')
                    ->icon('https://upload.wikimedia.org/wikipedia/commons/thumb/9/9a/Laravel.svg/231px-Laravel.svg.png')
                    ->url('https://vwo.com/engage');
    }
}

In order to let your Notification know which VWO Engage subscriber(s) you are targeting, add the routeNotificationForEngage method to your Notifiable model.

public function routeNotificationForEngage()
{
    return 'VWO_ENAGE_SUBSCRIBER_ID';
}

You can either return a single subscriber-id, or if you want to notify multiple subscriber IDs just return an array containing all IDs.

To determine the Subscriber ID read this FAQ.

# Available Message methods

  • subject(''): Accepts a string value for the title.
  • body(''): Accepts a string value for the notification body.
  • icon(''): Accepts an url for the icon.
  • url(''): Accepts an url for the notification click event.

For more information take a look here.

# Changelog

Please see CHANGELOG for more information what has changed recently.

# Testing

$ php vendor/bin/phpunit

# Security

If you discover any security related issues, please email bellini.davide@gmail.com instead of using the issue tracker.

# Contributing

Please see CONTRIBUTING for details.

# Credits

# License

The MIT License (MIT). Please see License File for more information.