由于某公司AC目前无法采用API的方式对接,于是通过服务器中转的办法进行短信认证 一.准备PHP服务器1台,内网有PHP环境能连接外网即可二.申请腾讯短信服务SDK 获取 开发准备 1. 申请 SDK AppID 以及 App Key:在开始本教程之前,您需要先获取 SDK AppID 和 App Key,如您尚未申请,请到 短信控制台 中添加应用。应用添加成功后您将获得 SDK AppID 以及 App Key。 注意: SDK AppID 是以 14xxxxx 开头。 2. 申请签名:下发短信必须携带签名,您可以在短信 控制台 中申请短信签名,详细申请操作参考 创建签名。 3. 申请模板:下发短信内容必须经过审核,您可以在短信 控制台 中申请短信模板,详细申请操作参考 创建正文模板。 手动配置: 手动下载或clone最新版本qcloudsms_php代码 把qcloudsms_php放入项目目录 require qcloudsms_php src目录下面的index.php,即可使用,如把qcloudsms放在当前目录下,只需要: require__DIR__."/qcloudsms_php/src/index.php"; 4.PHP服务器新建一个php文件,写入以下代码:<?php require __DIR__ . "/qcloudsms_php/src/index.php"; $appid = XXXXX; \\你的某公司短信APPID $appkey = "xxxxx";\\你的某公司短信APPkey $phoneNumbers = [$_GET["phone"]];\\某公司短信认证号码 $SmsContent = $_GET["content"];\\短信内容 $templateId = xxx; \\模板ID $smsSign = "xxxx"; \\模板签名 $SmsKey = Substr($SmsContent,14,6);\\取得验证码 $Url=substr($SmsContent,53,strlen($SmsContent)-59);\\取url链接码
use Qcloud\Sms\SmsSingleSender;
try { $ssender = new SmsSingleSender($appid, $appkey); $params = [$SmsKey,$Url]; $result = $ssender->sendWithParam("86", $phoneNumbers[0], $templateId, $params, $smsSign, "", ""); // 签名参数未提供或者为空时,会使用默认签名发送短信 $rsp = json_decode($result); echo $result; } catch(\Exception $e) { echo var_dump($e); }echo var_dump($e);
$myfile = fopen("log.log", "a+") or die("Unable to open file!"); fwrite($myfile,date("Y-m-d H:i:s") . "\r\n"); fwrite($myfile, $SmsContent ."\r\n" . $SmsKey . "\r\n" . $Url . "\r\n"); fwrite($myfile,$result . "\r\n" . var_dump($e) . "\r\n"); fclose($myfile); ?>
添加认证服务器 网关类型:HTTP协议 国家码:86 URL地址:http://192.168.1.1/sms.php \\此处为你的服务器文件路径 页面编码:GBK SOAP版本:SOAP1.1 请求类型:GET 配置短信模板 配置 phone=$$MOBILE_NUM$$&content=$$SMS_CONTENT$$ 以上是大概思路,通过一个php文件提交并作为中转发送请求到腾讯服务器 ac发送信息给php,php调用腾讯API |