Posted on: July 05, 2021 08:41 PM
Posted by: Renato
Views: 815
Como enviar SMS usando Twilio no Laravel?
Neste exemplo, vou mostrar para você enviar sms usando twilio no laravel. passo a passo explica laravel - notificações de sms do twilio. Esta postagem vai lhe dar um exemplo simples de twilio de notificação de sms laravel. você aprenderá laravel enviar sms para celular com twilio.
Neste exemplo, vou dar um exemplo muito simples de envio de sms usando twilio api no aplicativo laravel. você pode usar esse código facilmente nos aplicativos laravel 6, laravel 7 e laravel 8.
vamos seguir os passos abaixo:
primeiro de tudo, precisamos obter uma nova versão do aplicativo do Laravel usando o comando abaixo, então abra seu terminal OU prompt de comando e execute o comando abaixo:
composer create-project --prefer-dist laravel/laravel blog
Primeiro você precisa criar e adicionar um número de telefone. então você pode obter facilmente o SID, o token e o número da conta.
Crie uma conta aqui: www.twilio.com .
Em seguida, adicione o número de telefone do Twilio
Em seguida, você pode obter o SID, o token e o número da conta e adicionar o arquivo .env conforme abaixo:
.env
TWILIO_ACCOUNT_SID=0000000000000000000000000000
TWILIO_AUTH_TOKEN=000000000000000xxxxxxxxxx
TWILIO_APP_SID=APXXXXXXXXXXXXXXXXXXX
TWILIO_PHONE=+5555555555
Nesta etapa, precisamos instalar o pacote twilio / sdk composer para usar twilio api. então vamos executar o comando abaixo:
composer require twilio/sdk
agora vamos criar uma rota para chamar nosso exemplo, então vamos adicionar uma nova rota ao arquivo web.php conforme abaixo:
rotas / web.php
<?php
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\TwilioSMSController;
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
Route::get('sendSMS', [TwilioSMSController::class, 'index']);
nesta etapa, criaremos TwilioSMSController e escreveremos a lógica de envio de sms, então vamos adicionar uma nova rota ao arquivo web.php conforme abaixo:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Exception;
use Twilio\Rest\Client;
use Twilio\Jwt\ClientToken;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\Facades\Config;
use App\Helpers\Sms;
class TwilioSMSController extends Controller
{
/**
* Write code on Method
*
* @return response()
*/
public function index()
{
if (Sms::send('teste de envio', '+5562984306030')){
return response()->json(['success' => 200], 200);
} else {
return response()->json(['error' => 500], 500);
}
}
}
Logo em seguida criei um Helper
App\Helpers\sms
```
<?php
namespace App\Helpers;
use Exception;
use Twilio\Rest\Client;
use Illuminate\Support\Facades\Log;
class Sms
{
public static function send($message, $phoneNumber)
{
try {
// Find your Account SID and Auth Token at twilio.com/console
// and set the environment variables. See http://twil.io/secure
$sid = config('twilio')['twilio_account'];
$token = config('twilio')['twilio_token'];
$twilio_phone = config('twilio')['twilio_phone'];
$twilio = new Client($sid, $token);
Log::info($twilio);
$sms = $twilio->messages
->create($phoneNumber, // to
[
"body" => $message,
"from" => $twilio_phone,
// "mediaUrl" => ["https://c1.staticflickr.com/3/2899/14341091933_1e92e62d12_b.jpg"] //Optional paramenter
]
);
Log::debug($sms->sid);
return true;
} catch (Exception $e) {
Log::error("Error: ". $e->getMessage());
return false;
}
}
}
Links e comandos:
https://www.twilio.com/docs/sms/tutorials/how-to-send-sms-messages-php
https://www.twilio.com/console
php artisan config:clear
php artisan cache:clear
php artisan view:clear
php artisan route:clear
php artisan optimize:clear
composer dump-autoload
Agora você pode executar e verificar. Espero que possa te ajudar ...
Donate to Site
Renato
Developer