12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- <?php
- namespace app\api\hook;
- use AlibabaCloud\Client\AlibabaCloud;
- use AlibabaCloud\Client\Exception\ClientException;
- use AlibabaCloud\Client\Exception\ServerException;
- class Sms
- {
-
-
-
-
- function smsSend($sms)
- {
- return $this->sendMsg($sms->mobile,['code'=>$sms->code],'code');
- }
- function smsCheck($sms)
- {
- if($this->sendMsg($sms['mobile'],['code'=>$sms['code']],'code')){
- $sms = \app\common\model\Sms::create(['event' => $sms['event'], 'mobile' => $sms['mobile'], 'code' => $sms['code'], 'ip' => '', 'createtime' => $sms['createtime']]);
- return true;
- }
- }
-
-
-
- private function sendMsg($mobile,$param,$template){
- $config = \config('alisms');
- if(empty($param)||!isset($config)||empty($config)){
- return false;
- }
- AlibabaCloud::accessKeyClient($config['accessKeyId'], $config['accessSecret'])
- ->regionId($config['regionId'])
- ->asGlobalClient();
- $TemplateCode = isset($config['TemplateCode'][$template])?$config['TemplateCode'][$template]:$config['TemplateCode']['code'];
- try {
- $result = AlibabaCloud::rpcRequest()
- ->product('Dysmsapi')
- ->version('2017-05-25')
- ->action('SendSms')
- ->method('POST')
- ->options([
- 'query' => [
- 'PhoneNumbers' => $mobile,
- 'SignName' => $config['SignName'],
- 'TemplateCode' => $TemplateCode,
- 'TemplateParam' => json_encode($param)
- ],
- ])
- ->request();
- if($result->Code=="OK"){
- return $result;
- }else{
- return $result;
- }
- print_r($result->toArray());
- } catch (ClientException $e) {
- return $e;
- echo $e->getErrorMessage() . PHP_EOL;
- } catch (ServerException $e) {
- return $e;
- echo $e->getErrorMessage() . PHP_EOL;
- }
- }
- }
|