Description
Few days ago, we at Rinvex (https://rinvex.com) released a new #opensource package for #laravel community, I'd like to share it with you here: https://github.com/laravel-notification-channels/authy/
Authy (https://www.authy.com) notification channel for Laravel (https://laravel.com), with the ability to send in-app, sms, and call verification tokens.
Authy is the best rated Two-Factor Authentication service for consumers, simplest 2fa Rest API for developers and a strong authentication platform for the enterprise.
Installation & usage is pretty simple & straightforward: https://github.com/laravel-notification-channels/authy/#usage
Check it out, and let me hear your feedback, thanks for your time 😊
Authy Notification Channel for Laravel alternatives and similar libraries
Based on the "Notifications" category.
Alternatively, view Authy Notification Channel for Laravel alternatives based on common mentions on social networks and blogs.
-
Notification Pusher
Standalone PHP library for easy devices notifications push. -
JoliNotif
:computer: Send notifications to your desktop directly from your PHP script -
Notificator
A very lightweight library to handle notifications the smart way. -
Notificato
Takes care of Apple push notifications (APNS) in your PHP projects. -
Real-Time monitoring package for Laravel
Connect your Laravel application to Inspector. -
Php-pushwoosh
A PHP Library to easily send push notifications with the Pushwoosh REST Web Services. -
Nod
Notifications in PHP (notify-send, growl, etc) like that.
Tired of breaking your main and manually rebasing outdated pull requests?
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Authy Notification Channel for Laravel or a related project?
README
Authy Notification Channel for Laravel
Authy notification channel for Laravel, with the ability to send in-app, sms, and call verification tokens.
Table Of Contents
- Usage
- Upgrade
- Changelog
- Support
- Contributing & Protocols
- Security Vulnerabilities
- About Rinvex
- Trademarks
- License
Usage
Install the package via composer:
composer require laravel-notification-channels/authy
This package requires
rinvex/laravel-authy
package, so before proceeding make sure to follow up its installation steps first.Next, to route Authy notifications to the proper entity, define a
routeNotificationForAuthy
method on your notifiable entity. This should return the Authy Id to which the notification should be sent. Example:/** * Route notifications for the authy channel. * * @return int */ public function routeNotificationForAuthy() { return $this->authy_id; }
Note: as you might thought, this requires an
authy_id
attribute in your notifiable entity, for which you may need to create an additional field in the database table.Now you can create notifications that use Authy channel as follows:
// app/Notifications/PhoneVerificationNotification.php namespace App\Notifications; use Illuminate\Notifications\Notification; use NotificationChannels\Authy\AuthyChannel; use NotificationChannels\Authy\AuthyMessage; class PhoneVerificationNotification extends Notification { /** * The notification method (sms/call). * * @var string */ public $method; /** * Determine whether to force the notification over cellphone network. * * @var bool */ public $force; /** * The notification message action. * * @var string */ public $action; /** * The notification message action message. * * @var string */ public $actionMessage; /** * Create a notification instance. * * @param string $method * @param bool $force * @param string $action * @param string $actionMessage * * @return void */ public function __construct($method = 'sms', $force = false, $action = null, $actionMessage = null) { $this->method = $method; $this->force = $force; $this->action = $action; $this->actionMessage = $actionMessage; } /** * Get the notification's channels. * * @param mixed $notifiable * * @return array|string */ public function via($notifiable) { return [AuthyChannel::class]; } /** * Build the Authy representation of the notification. * * @return \NotificationChannels\Authy\AuthyMessage */ public function toAuthy() { $message = AuthyMessage::create()->method($this->method); if ($this->force) { $message->force(); } if ($this->action) { $message->action($action); } if ($this->actionMessage) { $message->actionMessage($actionMessage); } return $message; } }
Finally you can consume the notification as follows:
$this->notify(new \App\Notifications\PhoneVerificationNotification('sms', true));
Note: don't forget to read through Authy TOTP API documentation for further information.
Done!
Upgrade
- Upgrading To
v2.x
Fromv1.x
API implementation is 100% backward compatible, but sandbox API has been dropped since it's officially deprecated. Also note that PHP7 is now required.
Changelog
Refer to the [Changelog](CHANGELOG.md) for a full history of the project.
Support
The following support channels are available at your fingertips:
Contributing & Protocols
Thank you for considering contributing to this project! The contribution guide can be found in [CONTRIBUTING.md](CONTRIBUTING.md).
Bug reports, feature requests, and pull requests are very welcome.
- [Versioning](CONTRIBUTING.md#versioning)
- [Pull Requests](CONTRIBUTING.md#pull-requests)
- [Coding Standards](CONTRIBUTING.md#coding-standards)
- [Feature Requests](CONTRIBUTING.md#feature-requests)
- [Git Flow](CONTRIBUTING.md#git-flow)
Security Vulnerabilities
If you discover a security vulnerability within this project, please send an e-mail to [[email protected]]([email protected]). All security vulnerabilities will be promptly addressed.
About Rinvex
Rinvex is a software solutions startup, specialized in integrated enterprise solutions for SMEs established in Alexandria, Egypt since June 2016. We believe that our drive The Value, The Reach, and The Impact is what differentiates us and unleash the endless possibilities of our philosophy through the power of software. We like to call it Innovation At The Speed Of Life. That’s how we do our share of advancing humanity.
Trademarks
- Authyâ„¢ is a trademark of Twilio Inc.
- Laravelâ„¢ is a trademark of TAYLOR OTWELL
License
This software is released under [The MIT License (MIT)](LICENSE).
(c) 2016-2020 Rinvex LLC, Some rights reserved.
*Note that all licence references and agreements mentioned in the Authy Notification Channel for Laravel README section above
are relevant to that project's source code only.