Package Data | |
---|---|
Maintainer Username: | matthewbdaly |
Maintainer Contact: | matthewbdaly@gmail.com (Matthew Daly) |
Package Create Date: | 2017-09-23 |
Package Last Update: | 2017-11-10 |
Language: | PHP |
License: | MIT |
Last Refreshed: | 2024-11-15 15:11:24 |
Package Statistics | |
---|---|
Total Downloads: | 29,695 |
Monthly Downloads: | 7 |
Daily Downloads: | 0 |
Total Stars: | 35 |
Total Watchers: | 3 |
Total Forks: | 11 |
Total Open Issues: | 1 |
SMS service provider for Laravel and Lumen. Uses SMS Client to enable sending SMS messages using the following drivers:
nexmo
clockwork
textlocal
twilio
aws
(requires installation of aws/aws-sdk-php
)mail
(somewhat untested and may be too generic to be much use)Also has the following drivers for testing purposes:
log
null
requestbin
This package is only intended for Laravel 5.5 and up. Install it with the following command:
$ composer require matthewbdaly/laravel-sms
Then publish the config file:
$ php artisan vendor:publish
You will need to select the service provider Matthewbdaly\LaravelSMS\LaravelSMSProvider
. Then set your driver and any settings required in the .env
file for your project:
SMS_DRIVER=nexmo
NEXMO_API_KEY=foo
NEXMO_API_SECRET=bar
CLOCKWORK_API_KEY=baz
TEXTLOCAL_API_KEY=baz
REQUESTBIN_PATH=foo
AWS_SNS_API_KEY=foo
AWS_SNS_API_SECRET=bar
AWS_SNS_API_REGION=baz
MAIL_SMS_DOMAIN=my.sms-gateway.com
TWILIO_ACCOUNT_ID=foo
TWILIO_API_TOKEN=bar
The installation process with Lumen is identical to that for Laravel, although if you wish to use the facade you will need to uncomment the appropriate section of bootstrap/app.php
as usual.
Once the package is installed and configured, you can use the facade to send SMS messages:
use SMS;
$msg = [
'to' => '+44 01234 567890',
'content' => 'Just testing',
];
SMS::send($msg);
Or fetch it from the app:
$msg = [
'to' => '+44 01234 567890',
'content' => 'Just testing',
];
$sms = app()['sms']
$sms->send($msg);
Or resolve the interface Matthewbdaly\SMS\Contracts\Client
:
$msg = [
'to' => '+44 01234 567890',
'content' => 'Just testing',
];
$sms = app()->make('Matthewbdaly\SMS\Contracts\Client');
$sms->send($msg);
Here we use the app()
helper, but you'll normally want to inject it into a constructor or method of another class.