Laravel Notification Channels - Netgsm SMS Gateway Package
This package makes it easy to send notifications using Netgsm with Laravel 5.5+, 6.x and 7.x
Contents
Installation
This package can be installed via composer:
composer require laravel-notification-channels/netgsm
Setting up the NetGSM service
-
Create an account and get the API key here
-
Add credentials to
.env
file:NETGSM_USERCODE="NETGSM_PHONE" NETGSM_PASSWORD="PASSWORD" NETGSM_HEADER="SENDER_ID" NETGSM_LANGUAGE="LANGUAGE (tr,en)"
Usage
You can use this channel by adding NetgsmChannel::class
to the array in the via()
method of your notification class. You need to add the toNetgsm()
method which should return a NetgsmMessage()
object.
<?php
namespace App\Notifications;
use Illuminate\Notifications\Notification;
use NotificationChannels\Netgsm\NetgsmChannel;
use NotificationChannels\Netgsm\NetgsmMessage;
class InvoicePaid extends Notification
{
public function via($notifiable)
{
return [NetgsmChannel::class];
}
public function toNetgsm() {
return (NetgsmMessage::create('Hallo!'))
->from('Max');
}
}
You will have to set a routeNotificationForNetgsm()
method in your notifiable model. For example:
class User extends Authenticatable
{
use Notifiable;
....
/**
* Specifies the user's Phone Number
*
* @return string
*/
public function routeNotificationForNetgsm()
{
return $this->phone_number;
}
}
Available Message methods
getPayloadValue($key)
: Returns payload value for a given key.content(string $message)
: Sets SMS message text.to(string $number)
: Set recipients number.from(string $from)
: Set senders name.getMessage()
: Get Message body from NetgsmMessage Object.
Changelog
Please see CHANGELOG for more information what has changed recently.
Testing
$ composer test
Security
If you discover any security related issues, please email [email protected] 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.