You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
51 lines
1.4 KiB
51 lines
1.4 KiB
2 months ago
|
<?php
|
||
|
namespace app\admin\job;
|
||
|
|
||
|
class SendSmsFromBackend
|
||
|
{
|
||
|
|
||
|
/**
|
||
|
* @desc 获取配置文件中的短信秘钥对
|
||
|
* @return array
|
||
|
*/
|
||
|
public function getConfig()
|
||
|
{
|
||
|
// 配置文件获取
|
||
|
$configStr = env('SMS.CONFIG');
|
||
|
$arr = explode(',', $configStr);
|
||
|
$config = [];
|
||
|
foreach ($arr as $value){
|
||
|
$conArr = explode('@', $value);
|
||
|
$config[] = [
|
||
|
'access_key' => $conArr[0],
|
||
|
'secret' => $conArr[1]
|
||
|
];
|
||
|
}
|
||
|
return $config;
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @desc 发送短信验证码
|
||
|
* @param Job $job
|
||
|
* @param $data
|
||
|
* @return void
|
||
|
* @throws \Psr\SimpleCache\InvalidArgumentException
|
||
|
*/
|
||
|
public function fire(Job $job, $data)
|
||
|
{
|
||
|
trace($job->getJobId().'---管理端发送短信任务开始--------'.json_encode($data), 'info');
|
||
|
$to = $data['mobile'];
|
||
|
$message = $data['message'];
|
||
|
$from = 'Bourse';
|
||
|
$accessKey = env('SMS.ACCESS_KEY_ID');
|
||
|
$secret = env('SMS.ACCESS_KEY_SECRET');
|
||
|
if (empty($accessKey) || empty($secret)) {
|
||
|
trace('------- 短信账号配置错误 -------', 'error');
|
||
|
return;
|
||
|
}
|
||
|
(new \app\utility\SendSms())->sendMessageToGlobe($to, $message, $from, $accessKey, $secret);
|
||
|
// 删除任务
|
||
|
$job->delete();
|
||
|
}
|
||
|
|
||
|
}
|