m-shule / africastalking
AfricasTalking notifications driver for Laravel 5.3+
Installs: 1 645
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 2
Open Issues: 0
Requires
- php: >=5.6.4
- africastalking/africastalking: ^2.0|^3.0
- illuminate/notifications: ^5.3|^6.0|^7.0|^8.0
- illuminate/support: ^5.3|^6.0|^7.0|^8.0
Requires (Dev)
- mockery/mockery: ^1.0
- orchestra/testbench: ^3.4|^4.0|^5.0|^6.0
- phpunit/phpunit: ^6.0|^7.0|^8.0
This package is auto-updated.
Last update: 2025-03-15 01:47:35 UTC
README
This package makes it easy to send notifications using AfricasTalking with Laravel 5.3+.
Contents
Requirements
- Sign up for a free AfricasTalking account
- Create a new API Key under Settings in the Sandbox section
Installation
You can install the package via composer:
composer require m-shule/africastalking
for Laravel 5.4 or lower, you must add the service provider to your config:
// config/app.php 'providers' => [ ... MShule\AfricasTalking\AfricasTalkingServiceProvider::class, ],
Setting up the AfricasTalking service
Add the environment variables to your config/services.php
:
// config/services.php ... 'africastalking' => [ 'api_key' => env('AFRICASTALKING_API_KEY'), 'username' => env('AFRICASTALKING_USERNAME'), 'from' => env('AFRICASTALKING_FROM'), ], ...
Add your AfricasTalking API key, username, and from number/short code to your .env
:
// .env ... AFRICASTALKING_API_KEY= AFRICASTALKING_USERNAME= AFRICASTALKING_FROM= ...
The from variable is optional.
Usage
Now you can use the channel in your via()
method inside the notification:
<?php // app/Notifications/VpsServerOrdered.php namespace App\Notifications; use Illuminate\Notifications\Notification; use MShule\AfricasTalking\AfricasTalkingChannel; use MShule\AfricasTalking\AfricasTalkingMessage; class VpsServerOrdered extends Notification { public function via($notifiable) { return [AfricasTalkingChannel::class]; } public function toAfricasTalking($notifiable) { return (new AfricasTalkingMessage())->content("Your service was ordered!"); } }
Additionally you can set from which short code/alphanumeric your message originates from by:
return (new AfricasTalkingMessage())->content("Your service was ordered!")->from('60606');
You can also send a notification to someone who is not stored as a "user" by:
... use App\Notifications\VpsServerOrdered; use Illuminate\Notifications\Notification; ... Notification::route('africastalking', '+254712345678')->notify(new VpsServerOrdered()); ...
Changelog
Please see CHANGELOG for more information what has changed recently.
Security
If you discover any security related issues, please email hello@m-shule.com 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.