avlima / laravel-sms-mmcenter
MMCenter SMS notification service for Laravel
Requires
- php: >=7.1
- guzzlehttp/guzzle: ^6.3
- illuminate/http: >=5.3
- illuminate/notifications: >=5.3
- illuminate/queue: >=5.3
- illuminate/support: >=5.3
Requires (Dev)
- mockery/mockery: ^0.9.5
- phpunit/phpunit: >=6.5
This package is auto-updated.
Last update: 2024-11-21 20:33:22 UTC
README
Integrate SMS MMCenter with Laravel
MMCenter SMS notification service for Laravel.
Star ⭐ repo to show suport 😊
Installation
Install Package
Require this package with composer:
composer require avlima/laravel-sms-mmcenter
Add Service Provider & Facade
For Laravel 5.5+
Once the package is added, the service provider and facade will be autodiscovered.
For Older versions of Laravel
Add the ServiceProvider to the providers array in config/app.php
:
Avlima\SmsMMCenter\Providers\SmsMMCenterServiceProvider::class,
Add the Facade to the aliases array in config/app.php
:
'SmsMMCenter': Avlima\SmsMMCenter\Facades\SmsMMCenterFacade::class,
Publish Config
Once done, publish the config to your config folder using:
php artisan vendor:publish --provider="Avlima\SmsMMCenter\Providers\SmsMMCenterServiceProvider"
Configuration
Add the keys in .env
:
MMCENTER_USER=
MMCENTER_PASSWORD=
MMCENTER_TIMEOUT=60
MMCENTER_URL=http://www.mmcenter.com.br/mmenvio.aspx,
MMCENTER_OPERATION=ENVIO
MMCENTER_ROUTE=
Once the config file is published, open config/sms-mmcenter.php
Usage
Using SmsMMCenter facade
- Basic Usage
SmsMMCenter::sendMessage("TO","MESSAGE");
Use in Notifications
Setting up the Route for Notification
Add the method routeNotificationForSmsMMCenter()
to your Notifiable model:
public function routeNotificationForSmsMMCenter() {
return $this->phone; //Name of the field to be used as mobile
}
By default, your User model uses Notifiable.
Setting up Notification
Add
use Avlima\SmsMMCenter\Notifications\SmsMMCenterChannel;
and
use Avlima\SmsMMCenter\Notifications\SmsMMCenterMessage;
to your notification.
You can create a new notification with php artisan make:notification NOTIFICATION_NAME
In the via
function inside your notification, add return [SmsMMCenterChannel::class];
and add a new function toSmsMMCenter($notifiable)
to return the message body and parameters.
Notification example:-
namespace App\Notifications;
use Avlima\SmsMMCenter\Notifications\SmsMMCenterChannel;
use Avlima\SmsMMCenter\Notifications\SmsMMCenterMessage;
use Illuminate\Notifications\Notification;
class ExampleNotification extends Notification
{
public function via($notifiable)
{
return [SmsMMCenterChannel::class];
}
public function toSmsMMCenter($notifiable)
{
return (new SmsMMCenterMessage)
->to("44999999999")
->content("Hello");
}
}
Support
Feel free to post your issues in the issues section.
Credits
Developed by Alberto Lima
License
MIT