ecstoreb2b2c bbc更换短信对接平台阿里云云信使创蓝
ecstoreb2b2c bbc更换短信对接平台阿里云云信使创蓝
/**
* @description 短信发送
* @access public
* @param void
* @return void
*/
public function newSendTeng($contents,$config,$setSmsSign,$tmplname='',$data) {
if(!$contents)
{
$msg=app::get('system')->_('手机短信不能为空!');
throw new LogicException($msg);
return false;
}
// start-记发送短信日志到表
$smsLog = ['mobiles'=>$contents['0']['phones'], 'send_time'=>time(),'message'=>$contents['0']['content']];
app::get('system')->model('smslog')->save($smsLog);
//对接短信接口
$tplData = $this->_tmplid($tmplname,$data);
$url = 'http://dysmsapi.aliyuncs.com/?';
$parameters=array(
'AccessKeyId' => '*****',
'Action' => 'SendSms',
'Format' => 'json',
'RegionId' => 'cn-hangzhou',
'SignatureMethod' => 'HMAC-SHA1',
'SignatureNonce' => $this->create_noncestr(),
'SignatureVersion' => '1.0',
'Timestamp' => gmdate('Y-m-d H:i:s',time()),
'Version' => '2017-05-25',
'PhoneNumbers' => $contents[0]['phones'],
'SignName' => $setSmsSign,
'TemplateParam' => json_encode($tplData['data']),
'TemplateCode' => $tplData['tpl'],
);
logger::info(var_export($parameters,1).'res');
logger::info(var_export($tplData,1).'tplData');
$Signature = $this->getSign($parameters,'*******',$params);
$http = $url.'Signature='.$Signature.'&'.$params;
$res = file_get_contents($http);
logger::info(var_export($res,1).'mssage-res');
$res = json_decode($res,1);
if($res['Message']=='OK'){
// start-更新发送短信日志状态到表
$smsUpdateLog = ['sms_id'=>$smsLog['sms_id'], 'status'=>'succ'];
app::get('system')->model('smslog')->save($smsUpdateLog);
$msg = app::get('system')->_('短信发送成功!');
return true;
}
$msg = $res['Message'];
// start-更新发送短信日志状态到表
$smsUpdateLog = ['sms_id'=>$smsLog['sms_id'], 'status'=>'fail', 'msg'=>$msg];
app::get('system')->model('smslog')->save($smsUpdateLog);
$msg = '短信发送失败';
throw new LogicException($msg);
return false;
}
function _tmplid($tmpl,$data){
$arr = array(
'account-signup'=>'SMS_185561033',//手机注册短信验证
'account-lostPw'=>'SMS_185845013',//找回密码
'deposit-lostPw'=>'SMS_185845016',//支付密码找回
'account-member'=>'SMS_185575992',//身份验证
'activity-remind'=>'352799',//活动开售提醒
'account-shop'=>'SMS_185840021',//店铺安全中心认证
'delivery-ziti'=>'SMS_185840025',//自提提货验证码
'findPw-shop'=>'SMS_185840026',//店铺密码找回
);
$return = array();
if($arr[$tmpl]){
$return = array('tplid'=>$arr[$tmpl],'params'=>array_values($data));
}
$returnData['tpl'] = $arr[$tmpl];
switch($tpl){
case 'account-signup'://
$returnData['data'] = array('vcode'=>$data['vcode']);
break;
case 'account-lostPw'://
$returnData['data'] = array('vcode'=>$data['vcode']);
break;
case 'deposit-lostPw'://
$returnData['data'] = array('vcode'=>$data['vcode']);
break;
case 'account-member'://
$returnData['data'] = array('vcode'=>$data['vcode']);
break;
case 'activity-remind'://
$returnData['data'] = array('vcode'=>$data['vcode']);
break;
case 'account-shop'://
$returnData['data'] = array('vcode'=>$data['vcode']);
break;
case 'delivery-ziti'://
$returnData['data'] = array('tid'=>$data['tid'],'ziti_addr'=>$data['ziti_addr'],'vcode'=>$data['vcode']);
break;
case 'findPw-shop'://
$returnData['data'] = array('vcode'=>$data['vcode']);
break;
default:
$returnData['data'] = $data;
}
return $returnData;
return $return;
}
如有任何疑问都可以直接联系QQ:2392521892来解答。
