腾讯云短信接口怎么使用
的有关信息介绍如下:大家在做网站、APP开发的时候都会使用到短信接口,下面我就为大家介绍一下短信接口的使用方法
首先,引入src下面的index.php
require __DIR__ . "/../../src/index.php";
(路径可根据自己的情况自行修改)
准备必要参数
// 短信应用SDK AppID
$appid = 1400009099; // 1400开头,测试的AppID// 短信应用SDK AppKey,测试的AppKey
$appkey = "9ff91d87c2cd7cd0ea762f141975d1df37481d48700d70ac37470aefc60f9bad";// 需要发送短信的手机号码
$phoneNumbers = ["21212313123", "12345678902", "12345678903"];
//templateId 123对应的内容是"您的验证码是: {1}"
// 短信模板ID,需要在短信应用中申请
$templateId = 123; //模板ID`123`只是一个示例,真实的模板ID需要在短信控制台中申请
$smsSign = "测试"; // 这里的签名只是示例,请使用真实的已申请的签名,签名参数使用的是`签名内容`,而不是`签名ID`
sendWithParam参数对应说明
* @param string $nationCode 国家码,如 86 为中国
* @param string $phoneNumber 不带国家码的手机号
* @param int $templId 模板 id
* @param array $params 模板参数列表,如模板 {1}...{2}...{3},那么需要带三个参数
* @param string $sign 签名,如果填空串,系统会使用默认签名
* @param string $extend 扩展码,可填空串
* @param string $ext 服务端原样返回的参数,可填空串
* @return string 应答json字符串,详细内容参见腾讯云协议文档
指定模板 ID 单发短信
use Qcloud\Sms\SmsSingleSender;
$ssender = new SmsSingleSender($appid, $appkey);
$params = ["1234"];
$result = $ssender->sendWithParam("86", $phoneNumbers, $templateId, $params, $smsSign, "", ""); // 签名参数未提供或者为空时,会使用默认签名发送短信
$rsp = json_decode($result);
echo $result;
} catch(\Exception $e) {
echo var_dump($e);
单发短信
use Qcloud\Sms\SmsSingleSender;
try {
$ssender = new SmsSingleSender($appid, $appkey);
$result = $ssender->send(0, "86", $phoneNumbers, "【测试】您的验证码是: 1234", "", "");
$rsp = json_decode($result);
echo $result;
} catch(\Exception $e) {
echo var_dump($e);
}
群发
use Qcloud\Sms\SmsMultiSender;
try {
$msender = new SmsMultiSender($appid, $appkey);
$result = $msender->send(0, "86", $phoneNumbers, "【测试】您的验证码是: 1234", "", "");
$rsp = json_decode($result);
echo $result;
} catch(\Exception $e) {
echo var_dump($e);
}
指定模板ID群发
use Qcloud\Sms\SmsMultiSender;
try {
$msender = new SmsMultiSender($appid, $appkey);
$params = ["1234"];
$result = $msender->sendWithParam("86", $phoneNumbers, $templateId, $params, $smsSign, "", ""); // 签名参数未提供或者为空时,会使用默认签名发送短信
$rsp = json_decode($result);
echo $result;
} catch(\Exception $e) {
echo var_dump($e);
}
发送语音验证码
use Qcloud\Sms\SmsVoiceVerifyCodeSender;
try {
$vvcsender = new SmsVoiceVerifyCodeSender($appid, $appkey);
$result = $vvcsender->send("86", $phoneNumbers, "5678", 2, "");
$rsp = json_decode($result);
echo $result;
} catch (\Exception $e) {
echo var_dump($e);
}
发送语音通知
use Qcloud\Sms\SmsVoicePromptSender;
try {
$vpsender = new SmsVoicePromptSender($appid, $appkey);
$result = $vpsender->send("86", $phoneNumbers, 2, "5678", "");
$rsp = json_decode($result);
echo $result;
} catch (\Exception $e) {
echo var_dump($e);
}
小编是PHPer,所以举例子用的是php。
//短信内容
$code = A("Base")->randNumber(); //验证码
//即时发送
src文件放在了项目的根目录
require "src/index.php";
use Qcloud\Sms\SmsSingleSender;
public function send_sms($phoneNumbers,$code){
$appid = '改成自己的appid';
$appkey = "改成自己的appkey";
$templId = '改成自己需要的模板id';
$params[] = $code;
try {
$ssender = new SmsSingleSender($appid, $appkey);
$result = $ssender->sendWithParam("86", $phoneNumbers, $templId,$params, "", ""); // 签名参数未提供或者为空时,会使用默认签名发送短信
$rsp = json_decode($result,true);
return $rsp;
} catch(\Exception $e) {
return var_dump($e);
}
}
最后的发送效果