123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207 |
- <?php
- return [
- /*
- |--------------------------------------------------------------------------
- | 内置路由
- |--------------------------------------------------------------------------
- |
- | 如果是 web 应用建议 middleware 为 ['web', ...]
- | 如果是 api 应用建议 middleware 为 ['api', ...]
- |
- */
- 'route' => [
- 'enable' => true,
- 'prefix' => 'laravel-sms',
- 'middleware' => ['web'],
- ],
- /*
- |--------------------------------------------------------------------------
- | 请求间隔
- |--------------------------------------------------------------------------
- |
- | 单位:秒
- |
- */
- 'interval' => 0,
- /*
- |--------------------------------------------------------------------------
- | 数据验证管理
- |--------------------------------------------------------------------------
- |
- | 设置从客户端传来的需要验证的数据字段(`field`)
- |
- | - isMobile 是否为手机号字段
- | - enable 是否开启验证
- | - default 默认静态验证规则
- | - staticRules 静态验证规则
- |
- */
- 'validation' => [
- 'mobile' => [
- 'isMobile' => true,
- 'enable' => true,
- 'default' => 'mobile_required',
- 'staticRules' => [
- 'mobile_required' => 'required|zh_mobile',
- 'check_mobile_unique' => 'required|zh_mobile|unique:users,mobile',
- 'check_mobile_exists' => 'required|zh_mobile|exists:users',
- ],
- ],
- ],
- /*
- |--------------------------------------------------------------------------
- | 验证码管理
- |--------------------------------------------------------------------------
- |
- | - length 验证码长度
- | - validMinutes 验证码有效时间长度,单位为分钟
- | - repeatIfValid 如果原验证码还有效,是否重复使用原验证码
- | - maxAttempts 验证码最大尝试验证次数,超过该数值验证码自动失效,0或负数则不启用
- |
- */
- 'code' => [
- 'length' => 5,
- 'validMinutes' => 5,
- 'repeatIfValid' => false,
- 'maxAttempts' => 0,
- ],
- /*
- |--------------------------------------------------------------------------
- | 验证码短信通用内容
- |--------------------------------------------------------------------------
- |
- | 如需缓存配置,则需使用 `Toplan\Sms\SmsManger::closure($closure)` 方法进行配置
- |
- */
- 'content' => function ($code, $minutes, $input) {
- return '【signature】您的验证码是' . $code . ',有效期为' . $minutes . '分钟,请尽快验证。';
- },
- /*
- |--------------------------------------------------------------------------
- | 验证码短信模版
- |--------------------------------------------------------------------------
- |
- | 每项数据的值可以为以下三种之一:
- |
- | - 字符串/数字
- | 如: 'YunTongXun' => '短信模版id'
- |
- | - 数组
- | 如: 'Alidayu' => ['短信模版id', '语音模版id'],
- |
- | - 匿名函数
- | 如: 'YunTongXun' => function ($input, $type) {
- | return $input['isRegister'] ? 'registerTempId' : 'commonId';
- | }
- |
- | 如需缓存配置,则需使用 `Toplan\Sms\SmsManger::closure($closure)` 方法对匿名函数进行配置
- |
- */
- 'templates' => [
- 'Aliyun'=>'SMS_39035044'
- ],
- /*
- |--------------------------------------------------------------------------
- | 模版数据管理
- |--------------------------------------------------------------------------
- |
- | 每项数据的值可以为以下两种之一:
- |
- | - 基本数据类型
- | 如: 'minutes' => 5
- |
- | - 匿名函数(如果该函数不返回任何值,即表示不使用该项数据)
- | 如: 'serialNumber' => function ($code, $minutes, $input, $type) {
- | return $input['serialNumber'];
- | }
- | 如: 'hello' => function ($code, $minutes, $input, $type) {
- | //不返回任何值,那么hello将会从模版数据中移除 :)
- | }
- |
- | 如需缓存配置,则需使用 `Toplan\Sms\SmsManger::closure($closure)` 方法对匿名函数进行配置
- |
- */
- 'data' => [
- 'code' => function ($code) {
- return $code;
- },
- 'minutes' => function ($code, $minutes) {
- return $minutes;
- },
- ],
- /*
- |--------------------------------------------------------------------------
- | 存储系统配置
- |--------------------------------------------------------------------------
- |
- | driver:
- | 存储方式,是一个实现了'Toplan\Sms\Storage'接口的类的类名,
- | 内置可选的值有'Toplan\Sms\SessionStorage'和'Toplan\Sms\CacheStorage',
- | 如果不填写driver,那么系统会自动根据内置路由的属性(route)中middleware的配置值选择存储器driver:
- | - 如果中间件含有'web',会选择使用'Toplan\Sms\SessionStorage'
- | - 如果中间件含有'api',会选择使用'Toplan\Sms\CacheStorage'
- |
- | prefix:
- | 存储key的prefix
- |
- | 内置driver的个性化配置:
- | - 在laravel项目的'config/session.php'文件中可以对'Toplan\Sms\SessionStorage'进行更多个性化设置
- | - 在laravel项目的'config/cache.php'文件中可以对'Toplan\Sms\CacheStorage'进行更多个性化设置
- |
- */
- 'storage' => [
- 'driver' => '',
- 'prefix' => 'laravel_sms',
- ],
- /*
- |--------------------------------------------------------------------------
- | 是否数据库记录发送日志
- |--------------------------------------------------------------------------
- |
- | 若需开启此功能,需要先生成一个内置的'laravel_sms'表
- | 运行'php artisan migrate'命令可以自动生成
- |
- */
- 'dbLogs' => false,
- /*
- |--------------------------------------------------------------------------
- | 队列任务
- |--------------------------------------------------------------------------
- |
- */
- 'queueJob' => 'Toplan\Sms\SendReminderSms',
- /*
- |--------------------------------------------------------------------------
- | 验证码模块提示信息
- |--------------------------------------------------------------------------
- |
- */
- 'notifies' => [
- // 频繁请求无效的提示
- 'request_invalid' => '请求无效,请在%s秒后重试',
- // 验证码短信发送失败的提示
- 'sms_sent_failure' => '短信验证码发送失败,请稍后重试',
- // 语音验证码发送发送成功的提示
- 'voice_sent_failure' => '语音验证码请求失败,请稍后重试',
- // 验证码短信发送成功的提示
- 'sms_sent_success' => '短信验证码发送成功,请注意查收',
- // 语音验证码发送发送成功的提示
- 'voice_sent_success' => '语音验证码发送成功,请注意接听',
- ],
- ];
|