Download the PHP package freelabois/laravel-sms-verification without Composer

On this page you can find all versions of the php package freelabois/laravel-sms-verification. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package laravel-sms-verification

laravel-sms-verification

Library for sending out and verifying SMS codes using AWS SNS

The package has a trait and a custom validation rule that you can use on any model for verifying with an SMS code.

Table of contents

Installation

Pull the lib with composer:

Add the service provider in

Add your AWS credentials to you .env file:

NOTE: Please reffer to AWS documentation for best practices regarding AWS credentails and possibly consider creating a dedicated user with limitted privileges only for sending SMS messages

You can add SMS verification to any model by adding the VerifiesSMS trait supplied in this library, and it will create:

Example

Add the trait to your User model (or any other model on which you might want to enable 2FA):

For MySQL databases you will need to add these attributes to your Model's migration:

That's it! :) Now you can send out SMS codes and verify them later.

Sending out the SMS code

Send an SMS by setting the SMS verification number attribute:

This will send an sms message to the given . If the message fails to send an Expception will pop up. If SMS sending succeeds, the , and attributes will be set on the model.

After this, you can verify the code at any time.

Verifying the SMS code

For simple verification you can use:

This will set the attribute to true. If attempt limiting is enabled, this will increment the attempts that the User had. Once this limit is exceeded a TooManySMSVerificationAttempts Exception will be thrown.

Setting SMS verification attempt limits

You can adjust the number of attempts a User can have at verifying the code by overwriting the on the model implementing the trait:

This value defaults to 5.

If you don't want to limit your users with attempts, set this variable to 0.

Adding custom Validation for verifying an SMS code

You can easily verify the code on any custom request by adding the validation:

The validator will try to validate the code using the logged in user (Auth::user()).

Adding custom Validation for verifying an SMS code using route model binding

Or you can leverage route model binding and create a validation in your custom Request model:

In this case the validator expects to find an object in the route. The object needs to implement the above mentioned Trait in order for the validation to work.

Changing the SMS message being sent

You can set the text that is sent via SMS by overriding the traits default getSMSVerificationMessage($code) function in your Model implementation:

Changing the SMS sender

You can set the sender by overriding the traits default getSMSVerificationMessage($code) function in your Model implementation:


All versions of laravel-sms-verification with dependencies

PHP Build Version
Package Version
Requires laravel/framework Version 5.*
aws/aws-sdk-php Version ^3.62
guzzlehttp/guzzle Version *
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package freelabois/laravel-sms-verification contains the following files

Loading the files please wait ....