易启发资源网一个让你成为创客的知识源泉,一个让你梦想成真的家园。
应用腾讯云短信发送接口实现发短信的方法
  • 首页 > 技术教程 > 经验教程
  • 作者:cj13888
  • 2018年9月28日 16:12 星期五
  • 浏览:294
  • 字号:
  • 评论:1
  • 要求:

    如果需要使用短信业务,请先满足以下要求:

    1、腾讯云账号一只

    2、个人及个人以上实名认证

    3、网站域名一只(备案:个人备案上传后台备案信息截图、企业备案需要上传营业执照)

    ps:第3非必要,视签名类型而定。腾讯云默认赠送100条免费短信。

    操作流程:

    1、进入腾讯云短信添加应用


    1.png


    2、创建短信签名


    2.png


      这项需要上传一些特定的资料,视签名类型而定。坐等审核(几分钟就能出结果),审核完毕继续下一步

    3、创建正文模版


    3.png


      按照划线填写即可,当然你也可以填自己的模版

    4、等以上两项都审核完毕之后就可以进行短信发信了。

    php发信demo

    <?php /**  * 腾讯云接口指定模板单发短信demo  * @author 1316178 <blog@1316178.com>  * @var 1.0  * @time 2018年9月2日 00:03:49  */ $r = rand('100000','999999');//官方要求的随机数 $t = time();//官方要求的时间戳 $sdkAppid = '1400151023'; //填写自己的Appid即可 $strAppKey = "5f03a35d00ee52a21327ab048186a2c4"; //sdkappid 对应的 appkey,需要业务方高度保密 $strMobile = "13800138000"; //收件人手机号 $strRand = $r; //url 中的 random 字段的值 $strTime = $t; //UNIX 时间戳 $sig = hash('sha256','appkey='.$strAppKey.'&random='.$r.'&time='.$t.'&mobile='.$strMobile);//官方要求sig算法 $MsgContent = '12345';//这里应该填写短信正文模版中{1}的内容 $MsgTime = '5';//这里应该填写短信正文模版中{2}的内容 //如果还有更多参数请在$post_data['params']中添加 $MsgTpl = '19';//填写短信正文模版id $post_data = array( "ext"=>"",//用户的 session 内容,腾讯 server 回包中会原样返回,可选字段,不需要就填空 "extend"=>"", "params"=>array( $MsgContent,$MsgTime ), "sig"=>$sig, "sign"=>"", "tel"=>array( "mobile"=>$strMobile, "nationcode"=>"86"//86为国内手机号前缀 ), "time"=>$t, "tpl_id"=>$MsgTpl ); $parameters = json_encode($post_data);//官方要求数据json之后post $url = 'https://yun.tim.qq.com/v5/tlssmssvr/sendsms?sdkappid='.$sdkAppid.'&random='.$r; $response = get_curl($url,$parameters); $responseData=json_decode($response,true);//发序列化为数组 $EchoMsgResult = $responseData['result'];//错误码,0 表示成功(计费依据),非 0 表示失败 $EchoMsgErrmsg = $responseData['errmsg'];//错误消息,result 非 0 时的具体错误信息 $EchoMsgExt = $responseData['ext'];//用户的 session 内容,腾讯 server 回包中会原样返回 $EchoMsgSid = $responseData['sid'];//本次发送标识 id,标识一次短信下发记录 $EchoMsgFee = $responseData['fee'];//短信计费的条数 if($EchoMsgResult==0){ echo '发送成功'.$EchoMsgErrmsg; }else{ echo '发送失败'.$EchoMsgErrmsg; } /**  * curl函数  * @param [type]  $url     [description]  * @param integer $post    [description]  * @param integer $referer [description]  * @param integer $cookie  [description]  * @param integer $header  [description]  * @param integer $ua      [description]  * @param integer $nobaody [description]  * @return [type]           [description]  */ function get_curl($url, $post=0, $referer=0, $cookie=0, $header=0, $ua=0, $nobaody=0){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); $httpheader[] = "Accept:application/json"; $httpheader[] = "Accept-Encoding:gzip,deflate,sdch"; $httpheader[] = "Accept-Language:zh-CN,zh;q=0.8"; $httpheader[] = "Connection:close"; curl_setopt($ch, CURLOPT_HTTPHEADER, $httpheader); if ($post) { curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $post); } if ($header) { curl_setopt($ch, CURLOPT_HEADER, true); } if ($cookie) { curl_setopt($ch, CURLOPT_COOKIE, $cookie); } if($referer){ if($referer==1){ curl_setopt($ch, CURLOPT_REFERER, 'http://m.qzone.com/infocenter?g_f='); }else{ curl_setopt($ch, CURLOPT_REFERER, $referer); } } if ($ua) { curl_setopt($ch, CURLOPT_USERAGENT, $ua); } else { curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Linux; U; Android 4.0.4; es-mx; HTC_One_X Build/IMM76D) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0"); } if ($nobaody) { curl_setopt($ch, CURLOPT_NOBODY, 1); } curl_setopt($ch, CURLOPT_TIMEOUT, 3); curl_setopt($ch, CURLOPT_ENCODING, "gzip"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $ret = curl_exec($ch); curl_close($ch); return $ret; } ?>

    请求参数

    参数 必选 类型 描述
    ext string 用户的 session 内容,腾讯 server 回包中会原样返回,可选字段,不需要就填空
    extend string 短信码号扩展号,格式为纯数字串,其他格式无效。默认没有开通,开通请联系 腾讯云短信技术支持
    params array 模板参数,若模板没有参数,请提供为空数组
    sig string App 凭证,具体计算方式见下注
    sign string 短信签名,如果使用默认签名,该字段可缺省
    tel object 国际电话号码,格式依据 e.164 标准为: +[国家码][手机号] ,示例如:+8613711112222, 其中前面有一个 + 符号 ,86 为国家码,13711112222为手机号
    time number 请求发起时间,UNIX 时间戳(单位:秒),如果和系统时间相差超过 10 分钟则会返回失败
    tpl_id number 模板 ID,在控制台审核通过的模板 ID


    响应参数

    参数 必选 类型 描述
    result number 错误码,0 表示成功(计费依据),非 0 表示失败,参考 错误码
    errmsg string 错误消息,result 非 0 时的具体错误信息
    ext string 用户的 session 内容,腾讯 server 回包中会原样返回
    fee number 短信计费的条数,"fee" 字段计费说明
    sid string 本次发送标识 id,标识一次短信下发记录


    本文摘编自【杨小杰博客】

      您阅读这篇文章共花了:  
     本文无需标签!
    二维码加载中...
    本文作者:cj13888      文章标题: 应用腾讯云短信发送接口实现发短信的方法
    本文地址:http://www.1316178.com/post-4.html
    版权声明:若无注明,本文皆为“易启发资源网”原创,转载请保留文章出处。

    版权所有:《易启发资源网
    文章标题:《应用腾讯云短信发送接口实现发短信的方法
    除非注明,文章均为 《易启发资源网》 原创
    转载请注明本文短网址:http://www.1316178.com/post-4.html  [生成短网址]

    清萍の剑客2018-09-28 19:45
    这个真不错,赞一个
    返回顶部| 首页| 手气不错| 捐赠支持| 留言板| 自定义链接| 自定义链接| sitemap| 手机版本|后花园

    Copyright © 2017-2018 易启发资源网   粤ICP备18033131号-4

    2. 3.