AliSMS.php 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <?php
  2. namespace App\Libs;
  3. use App\Libs\AliyunSms\ZsySms;
  4. use App\Modules\SMS\Models\SmsTemplate;
  5. /**
  6. * 短信发送类
  7. * 新模板:阿里云
  8. */
  9. class AliSMS
  10. {
  11. // 发送短信(sendSms)接口返回的结果:
  12. // stdClass Object
  13. // (
  14. // [Message] => OK
  15. // [RequestId] => CB4899F8-BC9B-4D8D-8F21-0F3D37A3B703
  16. // [BizId] => 487402333696072292^0
  17. // [Code] => OK
  18. // )
  19. // stdClass Object
  20. // (
  21. // [Message] => 模板不合法(不存在或被拉黑)
  22. // [RequestId] => BEC91851-B07B-4533-9826-7C97DFA99B31
  23. // [Code] => isv.SMS_TEMPLATE_ILLEGAL
  24. // )
  25. // 阿里的短信发送要有固定模板,所以自定义的内容不行
  26. static function send($number,$template_type,$param=array(),$sign='追书云')
  27. {
  28. $sign = env('SMS_SIGN');
  29. \Log::info('AliSMS_send:number:'.$number.' template_type:'.$template_type.' param:'.json_encode($param));
  30. // 根据类型找模板id
  31. $sms_template = SmsTemplate::get_sms_template($template_type);
  32. if(empty($sms_template)){
  33. \Log::info('AliSMS_send_invalid_template:number:'.$number.' template_type:'.$template_type.' param:'.json_encode($param));
  34. return false;
  35. }
  36. $template_id = isset($sms_template->template_id)?$sms_template->template_id:'';
  37. \Log::info('AliSMS_send:number:'.$number.' template_type:'.$template_type.' template_id:'.$template_id.' param:'.json_encode($param));
  38. $response = ZsySms::sendSms($number,$template_id,$param,$sign);
  39. \Log::info('send_response:'.json_encode($response));
  40. $status = isset($response->Code)?$response->Code:'';
  41. $status = (($status=='OK')?1:0);
  42. return $status;
  43. }
  44. }