承接 vyatka-it/laravel-flash-call-auth 相关项目开发

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

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

vyatka-it/laravel-flash-call-auth

Composer 安装命令:

composer require vyatka-it/laravel-flash-call-auth

包简介

Laravel package for receiving authorization codes via flash call providers VoicePassword and SMS.RU.

README 文档

README

Пакет vyatka-it/laravel-flash-call-auth отправляет коды авторизации через flash call-провайдеров VoicePassword и SMS.RU.

Установка

composer require vyatka-it/laravel-flash-call-auth
php artisan vendor:publish --tag=flash-call-auth-config

Настройка

FLASH_CALL_AUTH_PROVIDER=sms_ru
FLASH_CALL_AUTH_API_KEY=your_api_key

SMS_RU_PARTNER_ID=

VOICEPASSWORD_AUTH_MODE=header
VOICEPASSWORD_CAPACITY=4

FLASH_CALL_AUTH_COOLDOWN_SECONDS=60

Использование

use VyatkaIt\FlashCallAuth\Facades\FlashCallAuth;

$result = FlashCallAuth::send(
    phone: '79255070602',
    ip: request()->ip(),
);

echo $result->code;
echo $result->id;

Повторную отправку можно ограничить cooldown-настройкой. По умолчанию она выключена (0 секунд). Ограничение работает через Laravel RateLimiter и использует cache store приложения.

FLASH_CALL_AUTH_COOLDOWN_SECONDS=60
FLASH_CALL_AUTH_COOLDOWN_KEY_PREFIX=flash_call_auth:cooldown

Если пользователь запросит звонок повторно раньше времени, пакет выбросит CooldownException:

use VyatkaIt\FlashCallAuth\Exceptions\CooldownException;

try {
    $result = FlashCallAuth::send('79999999999', request()->ip());
} catch (CooldownException $exception) {
    $retryAfter = $exception->retryAfter;
}

Выбор провайдера на один вызов:

$result = FlashCallAuth::send('79999999999', options: [
    'provider' => 'voicepassword',
]);

VoicePassword с кодом, сгенерированным на вашей стороне:

$result = FlashCallAuth::send('79999999999', options: [
    'provider' => 'voicepassword',
    'code' => '1234',
]);

VoicePassword с проговариванием кода:

$result = FlashCallAuth::send('79999999999', options: [
    'provider' => 'voicepassword',
    'mode' => 'voice',
    'code' => '1234',
    'repeat' => 1,
]);

VoicePassword callback URL:

$result = FlashCallAuth::send('79999999999', options: [
    'provider' => 'voicepassword',
    'callback_url' => route('flash-call.callback'),
]);

Статистика VoicePassword:

$balance = FlashCallAuth::voicePassword()->balance();
$status = FlashCallAuth::voicePassword()->status('1234');
$daily = FlashCallAuth::voicePassword()->daily('21.05.2026');

Ответ

Метод send() возвращает AuthorizationCodeResultDTO:

$result->provider; // sms_ru или voicepassword
$result->id;       // call_id/id запроса
$result->phone;    // номер абонента
$result->code;     // код авторизации, если провайдер вернул его сразу
$result->cost;     // стоимость, если провайдер вернул ее сразу
$result->raw;      // исходный JSON-ответ

Тесты

composer test

Документация провайдеров

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-05-22

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固