This package contains a set of two simple endpoints for doing phone number verification via SMS.
SMS is done via Onnorokom.com API and in fact this code is intended to demonstrate real world use-case for using the Onnorokom.com API. All available Onnorokom.com API's are defined at https://panel.onnorokomsms.com/Content/OnnoRokomSmsWebSeviceAndApiDocumentation.pdf.
Server is written in PHP using the Laravel framework.
Run following command:
composer require hizbul/laravel-sms-verification
Once this library is installed you need to register the service provider. Open config/app.php and find the providers key.
'providers' => [
    ...
    \Hizbul\SmsVerification\SmsVerificationProvider::class,
    ...
]
Run the command:
php artisan vendor:publish --provider="Hizbul\SmsVerification\SmsVerificationProvider" --tag=config
Add SMS Verification endpoints to your routing file:
\Hizbul\SmsVerification\SmsVerificationProvider::registerRoutes($router);
- Use the POST /sms-verificationto send the code to a mobile device
- Use the GET /sms-verification/{code}/{mobilePhoneNumber}to verify the code
For example, if an app wants to send an authorization code to a cell phone 855-123-8765
- Send a POST /sms-verificationAPI to URL https://api.example.com/sms-verification with JSON body{"phone_number" : "+88019194560**"}
- The API returns {"success":true,"description":"OK","expires_at": 1495120612}if the code is sent.expires_atis actual time of code expiration.
- The cell phone will receive a 6-digit code (for example: 123456)
- In order to verify the code, send a Get /sms-verification API to https://api.example.com/sms-verification/123456/+88019194560**
- The API returns:
- On success: {"success":true,"description":"OK","expires_at": 1495120612}
- On failure: {"success":false,"description":"Wrong code"}
 
- On success: 
If an exception was thrown during the SMS verification process, output contains field error.
- 1XX- code validation error
- 2XX- something is not configured
- 3XX- input format validation was failed
- 5XX- code generating error
- 4XX- code sending error
- 999- any other server error, not related to SMS Verification library
- The authorization code sent is only valid for 10 minutes
- The code can be verified only once. After the first success, it will be invalidated
- If you found any caching issue, then use any other cache driver than files.