Skip to content

Бібліотека для Laravel яка реалізує відправку смс повідомлень різними клієнтами по одному API

Notifications You must be signed in to change notification settings

RomanStruk/SmsNotify

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SmsNotify

Release

Бібліотека для Laravel який реалізує відправку смс повідомлень різними клієнтами по одному API Підтримуються сторонні сервіси такі як :

  • Viber UA
  • MTS Communicator BY
  • TurboSMS UA

Встановлення

Рекомендований спосіб встановлення SmsNotify через Composer.

composer require romanstruk/smsnotify

Сумістність

На даний момент перевірено тільки на Laravel 8.x

Налаштування

php artisan vendor:publish RomanStruk\SmsNotify\SmsNotifyServiceProvider

Після цього оновіть config/smsnotify.php вашими налаштуваннями.

Використання

Щоб використовувати бібліотеку SmsNotify, ви можете використовувати фасад або отримати екземпляр із сервіс контейнера:

SmsNotifyFacade::to(new PhoneNumber('0666000000', 'UA'))
                ->send(new SmsMessage('Some sms text'));

або

$smsNotify = app(SmsNotifyInterface::class);
$smsNotify->to(new PhoneNumber('0666000000', 'UA'))
          ->send(new SmsMessage('Some sms text'));

Якщо сервіс відправки смс потрібно змінювати динамічно під час виконання то можна використати Closure для методу clientMap(Closure $func) результатом має бути один із ключів за яким прікріплений клієнт в файлі конфігурації

SmsNotifyFacade::clientMap(function (){
                    return 'ua';
                })
                ->to(new PhoneNumber('0666000000', 'UA'))
                ->send(new SmsMessage('Some text'));

Файл config/smsnotify.php

...
'map' => [
    'ua' => 'log',
    'by' => 'mts-communicator'
]
...

About

Бібліотека для Laravel яка реалізує відправку смс повідомлень різними клієнтами по одному API

Topics

Resources

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages