sikhlana/laravel-greenweb-sms-channel

Greenweb SMS Notifications driver for Laravel.

v1.2.0 2020-12-04 13:50 UTC

This package is auto-updated.

Last update: 2024-04-04 21:01:25 UTC


README

This package makes it easy to send SMS notifications via Greenweb for Laravel 5. Greenweb only provides SMS service for Bangladeshi mobile operators.

Contents

Installation

You can install the package via composer:

composer require sikhlana/laravel-greenweb-sms-channel

First you must install the service provider (skip for Laravel >= 5.5):

// config/app.php
'providers' => [
    ...
    Sikhlana\GreenwebSmsChannel\ServiceProvider::class,
],

Setting up the Greenweb service

Add your generated Greenweb SMS API key in your .env file:

...
GREENWEB_SMS_TOKEN=

Usage

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

use Sikhlana\GreenwebSmsChannel\GreenwebChannel;
use Sikhlana\GreenwebSmsChannel\GreenwebMessage;
use Illuminate\Notifications\Notification;

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

    public function toGreenweb($notifiable)
    {
        return (new GreenwebMessage())
            ->content("Your {$notifiable->service} account was approved!");
    }
}

In order to let your Notification know which phone are you sending/calling to, the channel will look for the phone_number attribute of the Notifiable model. If you want to override this behaviour, add the routeNotificationForGreenweb method to your Notifiable model.

public function routeNotificationForGreenweb()
{
    return '01765432109';
}

Available Message methods

GreenwebMessage

  • content(string): Sets the message content.
  • line(string): Adds a line of text to the notification.

Changelog

Please see CHANGELOG for more information what has changed recently.

Security

If you discover any security related issues, please email xoxo@saifmahmud.name 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.