承接 sheavescapital/laravel-notifications-twilio-verify 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

sheavescapital/laravel-notifications-twilio-verify

最新稳定版本:v3.1

Composer 安装命令:

composer require sheavescapital/laravel-notifications-twilio-verify

包简介

Twilio Verify integration with Laravel

README 文档

README

This package is a opinionated fork of codebar-ag/laravel-twilio-verify, mixed with some code from laravel-notification-channels/twilio.

???? What is Twilio Verify?

An elegant third-party integration to validate users with SMS, Voice, Email and Push. Add verification to any step of your user‘s journey with a single API.

???? Requirements

  • PHP: ^8.2
  • Laravel: ^11
  • Twilio Account

⚙️ Installation

You can install the package via composer:

composer require sheavescapital/laravel-notifications-twilio-verify

Add the following environment variables to your .env file:

TWILIO_ACCOUNT_SID=ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX TWILIO_AUTH_TOKEN=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX TWILIO_SERVICE_SID=VAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

???? Usage

namespace App\Notifications; use Illuminate\Notifications\Notification; use SheavesCapital\TwilioVerify\TwilioVerifyChannel; class SendOTP extends Notification { public function via(object $notifiable): string { return TwilioVerifyChannel::class; } }

???? Verification Code Limits

????️ DTO showcase

SheavesCapital\TwilioVerify\DTO\SendCodeAttempt { +time: Illuminate\Support\Carbon // Carbon +channel: "sms" // string +attempt_sid: "VLMn1NOnmIVWMITO4FbVGxNmEMJ72KKaB2" // string }
SheavesCapital\TwilioVerify\DTO\Lookup { +carrier: SheavesCapital\TwilioVerify\DTO\Carrier { +error_code: null // ?string +name: "Carrier Name" // string +mobile_country_code: "310" // string +mobile_network_code: "150" // string +type: "150" // string } }
SheavesCapital\TwilioVerify\DTO\Verification +sid: "VEkEJNNkLugY4hietPDbcqUUZz3G5NoTTZ" // string +service_sid: "VAssMsB84NdN0aJJceYsExX1223qAmrubx" // string +account_sid: "ACizUsoInA3dbKR5LA9tOqqA0O3NFSHSNc" // string +to: "+41795555825" // string +channel: "sms" // string +status: "pending" // string +valid: false // bool +created_at: Illuminate\Support\Carbon // Carbon +updated_at: Illuminate\Support\Carbon // Carbon +lookup: SheavesCapital\TwilioVerify\DTO\Lookup {...} // Lookup +send_code_attempts: Illuminate\Support\Collection { // Collection 0 => SheavesCapital\TwilioVerify\DTO\SendCodeAttempt { +time: Illuminate\Support\Carbon // Carbon +channel: "sms" // string +attempt_sid: "VLTvj9jhh76cI78Hc1x0c3UORWJwwqVeTN" // string } ] } +url: "https://verify.twilio.com/v2/Services/VAssMsB84NdN0aJJceYsExX1223qAmrubx/Verifications" // string }
SheavesCapital\TwilioVerify\DTO\VerificationCheck { +sid: "VEvRzh4hPUqmAjeC6li092VNT0yfd23lag" // string +service_sid: "VAxSR0Wq91djjG9PAYtrtjt11f0I4lqdwa" // string +account_sid: "ACcI5zbEYvLr0vPIUTQzWkTpP5DPqTCYDK" // string +to: "+41795555825" // string +channel: "sms" // string +status: "approved" // string +valid: true // bool +created_at: Illuminate\Support\Carbon // Carbon +updated_at: Illuminate\Support\Carbon // Carbon }

???? Configuration file

You can publish the config file with:

php artisan vendor:publish --provider="SheavesCapital\TwilioVerify\TwilioVerifyServiceProvider" --tag="laravel-notifications-twilio-verify-config"

This is the contents of the published config file:

return [ /*  |--------------------------------------------------------------------------  | Twilio Verify Configuration  |--------------------------------------------------------------------------  |  | You can find your Account SID and Auth Token in the Console Dashboard.  | Additionally you should create a new Verify service and paste it in  | here. Afterwards you are ready to communicate with Twilio Verify.  |  */ 'url' => env('TWILIO_URL', 'https://verify.twilio.com/v2/Services'), 'account_sid' => env('TWILIO_ACCOUNT_SID', 'ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'), 'auth_token' => env('TWILIO_AUTH_TOKEN', 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'), 'service_sid' => env('TWILIO_SERVICE_SID', 'VAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'), ];

✨ Events

Following events are fired:

use SheavesCapital\TwilioVerify\Events\TwilioVerifyResponseLog; // Log each response from the Twilio REST API. TwilioVerifyResponseLog::class => [ // ],

???? Testing

Copy your own phpunit.xml-file.

cp phpunit.xml.dist phpunit.xml

Modify environment variables in the phpunit.xml-file:

<env name="TWILIO_ACCOUNT_SID" value="ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"/> <env name="TWILIO_AUTH_TOKEN" value="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"/> <env name="TWILIO_SERVICE_SID" value="VAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"/>

Run the tests:

composer test

???? Credits

License

The MIT License (MIT). Please see License File for more information.

统计信息

  • 总下载量: 7.09k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 2
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-01-04

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固