Laravel 8 send sms using nexmo example. In this tutorial, you will learn how to send sms notification to mobile using nexmo in laravel 8 app.
This tutorial will guide you step by step on how to send send sms to mobile with nexmo in laravel 8 app. Now, You need to follow the some step to done laravel nexmo message.
First of all, visit the following link https://dashboard.nexmo.com/sign-in and create nexmo account. Get client id and secret from nexom account.
How to Send SMS Messages in Laravel 8
- Step 1 – Download Laravel 8 Application
- Step 2 – Connecting App to Database
- Step 3 – Install SMS Package
- Step 4 – Create Route
- Step 5 – Create Controller By Artisan Command
- Step 6 – Run Development Server
Step 1 – Download Laravel 8 Application
First of all download or install laravel 8 new setup. So, open terminal and type the following command to install new laravel 8 app into your machine:
composer create-project --prefer-dist laravel/laravel blog
Step 2 – Connecting App to Database
In this step, setup database with your downloded/installed laravel 8 app. So, you need to find .env file and setup database details as following:
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=database-name DB_USERNAME=database-user-name DB_PASSWORD=database-password
And add nexmo client id and secret in .env file:
NEXMO_KEY=XXXXX NEXMO_SECRET=XXXXXXXXXXX
Step 3 – Install SMS Pakcage
In this step, open again your command prompt and execute the following command on it. To install nexmo sms package:
composer require nexmo/client
Then visit nexmo website and create nexmo account from here : https://www.nexmo.com. When you will be done account creation. This will give you the app id and secret key.
Step 4 – Create Routes
In this step, open web.php file from routes direcotry. And update the following routes into web.php file:
use App\Http\Controllers\NexmoSMSController; Route::get('send-sms', [NexmoSMSController::class, 'index']);
Step 5 – Create Controller By Artisan Command
In this step, run the following command on command prompt to create controller file:
php artisan make:controller NexmoSMSController
After that, go to app/http/controllers and open NexmoSMSController.php file. And update the following code into it:
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Exception; class NexmoSMSController extends Controller { /** * Write code on Method * * @return response() */ public function index() { try { $basic = new \Nexmo\Client\Credentials\Basic(getenv("NEXMO_KEY"), getenv("NEXMO_SECRET")); $client = new \Nexmo\Client($basic); $receiverNumber = "91846XXXXX"; $message = "This is testing from ItSolutionStuff.com"; $message = $client->message()->send([ 'to' => $receiverNumber, 'from' => 'Vonage APIs', 'text' => $message ]); dd('SMS Sent Successfully.'); } catch (Exception $e) { dd("Error: ". $e->getMessage()); } } }
Step 6 – Run Development Server
Finally, open command prompt and run the following command to start developement server:
php artisan serve
Then open your browser and hit the following url on it:
http://127.0.0.1:8000/send-sms