wensleydale/sendpulse-laravel

A minimal service provider to set up and use the SendPulse PHP library in Laravel 5

v1.0.1 2016-01-19 22:00 UTC

This package is not auto-updated.

Last update: 2024-11-09 19:45:38 UTC


README

A service provider and facade to set up and use the SendPulse PHP library in Laravel 5.

Build Status

This package consists of a service provider, which binds an instance of an initialized SendPulse client to the IoC-container and a SendPulse facade so you may access all methods of the SendpulseApi class via the syntax:

$message = ['title' => 'My first notification', 'website_id' => 1, 'body' => 'I am the body of the push message'];

SendPulse::createPushTask($message);

You should refer to the SendPulse API and underlying SendPush PHP class for full details about all available methods.

Setup

  1. Install the 'wensleydale/sendpulse-laravel' package

    Note, this will also install the required wensleydale/sendpulse-rest-api-php package.

    $ composer require wensleydale/sendpulse-laravel:1.*
  2. Update 'config/app.php'

    # Add `SendPulseLaravelServiceProvider` to the `providers` array
    'providers' => array(
        ...
        'SendPulse\SendPulseLaravel\SendPulseLaravelServiceProvider',
    )
    
    # Add the `SendPushFacade` to the `aliases` array
    'aliases' => array(
        ...
        'SendPulse' => 'SendPulse\SendPulseLaravel\SendPulseFacade',
    )
  3. Publish the configuration file (creates sendpulse.php in config directory) and add your API keys and optional default settings.

    $ php artisan vendor:publish

Type Hinting

If you do not wish to make use of the SendPulse facade you may simply "type-hint" the SendPulse dependency in the constructor of a class that is resolved by the IoC container and an instantiated client will be ready for use.

use SendPulse\SendpulseApi;

private $client;

public function __construct(SendpulseApi $client)
{
    $this->client = $client;
}

public function getWebsites()
{
	$this->client->pushListWebsites();
}