139 lines
7.5 KiB
PHP
Executable File
139 lines
7.5 KiB
PHP
Executable File
<?php
|
||
/* @var $this yii\web\View */
|
||
use yii\helpers\Url;
|
||
|
||
global $_FM;
|
||
global $_HI;
|
||
$username = Yii::$app->user->identity->username;
|
||
$cert = fmFunc_cert_exist($username);
|
||
$_FM['apiCert'] = $cert ? $cert : array();
|
||
$errorCode = 0;
|
||
|
||
if($errorCode>0){
|
||
die (json_encode(array('errorcode'=>$errorCode,'msg'=>Yii::t('errorcode',$errorCode))));
|
||
}
|
||
|
||
//错误代码集合
|
||
$errorcodes = require(Yii::getAlias('@common').'/messages/zh-CN/errorcode.php');
|
||
foreach($errorcodes as $k=>$v){
|
||
$_k = substr($k,0,6);
|
||
if($_k !=='453004'){
|
||
unset($errorcodes[$k]);
|
||
}
|
||
}
|
||
|
||
$accessKeyId = isset($_FM['apiCert']['aliDySms']['accessKeyId']) ? $_FM['apiCert']['aliDySms']['accessKeyId'] : '';
|
||
$accessKeySecret = isset($_FM['apiCert']['aliDySms']['accessKeySecret']) ? $_FM['apiCert']['aliDySms']['accessKeySecret'] : '';
|
||
$sign = isset($_FM['apiCert']['aliDySms']['code']) ? $_FM['apiCert']['aliDySms']['code'] : '';
|
||
|
||
$postUrl = Url::to(['alimsg/send','appid'=>$username]);
|
||
if(isset($_GET['post']) && $_GET['post']==1){
|
||
$postUrl = Url::to(['alimsg/send','appid'=>$username,'post'=>1]);
|
||
}
|
||
?>
|
||
|
||
<div class='container' style='margin-top:50px;'>
|
||
<p><h3 style="text-align: center;">阿里大鱼短信【转发】接口演示</h3></p>
|
||
<form class="form-horizontal" action="<?php echo $postUrl;?>" method="post">
|
||
<div class="form-group">
|
||
<label for="inputEmail3" class="col-sm-2 control-label">手机号</label>
|
||
<div class="col-sm-10">
|
||
<?php if(isset($_GET['post']) && $_GET['post']==1){?>
|
||
<input type="phone" name="phone" class="form-control" id="phone" required="required" value="" placeholder="请输入手机号"/>
|
||
<?php }else{?>
|
||
<textarea type="text" name="phone" class="form-control" id="phone" required="required" placeholder="请输入手机号,多个手机号时用英文(,)分开;"/></textarea>
|
||
<?php }?>
|
||
</div>
|
||
</div>
|
||
<div class="form-group">
|
||
<label for="accessKeyId" class="col-sm-2 control-label">accessKeyId</label>
|
||
<div class="col-sm-10">
|
||
<input type="text" name="accessKeyId" class="form-control" id="accessKeyId" required="required" value="<?php echo $accessKeyId;?>" placeholder="输入在阿里云短信获取的accessKeyId"/>
|
||
</div>
|
||
</div>
|
||
<div class="form-group">
|
||
<label for="accessKeySecret" class="col-sm-2 control-label">accessKeySecret</label>
|
||
<div class="col-sm-10">
|
||
<input type="text" name="accessKeySecret" class="form-control" id="accessKeySecret" required="required" value="<?php echo $accessKeySecret;?>" placeholder="输入在阿里云短信获取的accessKeySecret"/>
|
||
</div>
|
||
</div>
|
||
<div class="form-group">
|
||
<label for="sign" class="col-sm-2 control-label">短信签名</label>
|
||
<div class="col-sm-10">
|
||
<input type="text" name="sign" class="form-control" id="sign" required="required" value="<?php echo $sign;?>" placeholder="填写所申请的短信签名"/>
|
||
</div>
|
||
</div>
|
||
<div class="form-group">
|
||
<label for="tmpl" class="col-sm-2 control-label">短信模板</label>
|
||
<div class="col-sm-10">
|
||
<input type="text" name="tmpl" class="form-control" id="tmpl" required="required" placeholder="填写所申请的短信模板"/>
|
||
</div>
|
||
</div>
|
||
<div class="form-group">
|
||
<label for="inputEmail3" class="col-sm-2 control-label">短信内容</label>
|
||
<div class="col-sm-10">
|
||
<textarea type="text" name="content" class="form-control" id="content" required="required" placeholder="输入要发送的内容;格式:短信变量码[code],对应的替换内容;(变量及替换值之前用逗号分隔开,每行一组)"/>code1,替换值1<?php echo "\r\n";?>code2,替换值2</textarea>
|
||
<span class="help-block">阿里大鱼”登陆确认验证码“模板(SMS_116695054)的变量为'code'。这里建议您使用该模板,上述文本框中输入 <code>code,1234</code> 即可</span>
|
||
</div>
|
||
</div>
|
||
<div class="form-group">
|
||
<div class="col-sm-offset-2 col-sm-10">
|
||
<button type="submit" class="btn btn-success">发送</button>
|
||
<button type="reset" class="btn btn-danger">重新填写</button>
|
||
<a class="btn btn-default" href="<?php echo Url::to(['alimsg/index','post'=>1])?>" target="_self">以POST接口形式测试</a>
|
||
<a class="btn btn-default" href="<?php echo Url::toRoute('alimsg/index')?>" target="_self">仅本地演示</a>
|
||
</div>
|
||
</div>
|
||
</form>
|
||
<hr>
|
||
|
||
<h1 style="text-align: center;">接口使用简易说明</h1>
|
||
<span class="form-control">注:本处主要说明本API的基础规则及一些常用的接口使用方法,更多细节可参考我们的实际使用案例(我们基于<a href="http://s.we7.cc/index.php?c=home&a=author&do=index&uid=662" target="_blank">微擎</a>开发的嗨旅行应用、小程序管理模块等。)</span>
|
||
<p>
|
||
<ol>
|
||
<li>
|
||
<kbd>单发方式</kbd>:支持向一个手机号发送短信,通常用于发送验证码等情景;或向一组手机发送相同短信,通常用于发送通知等情景<br>
|
||
<code>准备数据:</code>手机号(数组形式)、短信内容(数组形式,键为短信模板中的code,键值为要code对应的替换内容)、阿里大鱼短信账号对应的accessKeyId与accessKeySecret及短信签名sign、所使用的短信模板tmpl、阿里大鱼接口的额外配置项(如果有)、接口连接TOKEN(登陆本接口系统后返回的accesstoken)<br>
|
||
<code>接口地址:</code> <?php echo Url::to(['alimsg/post'],true);?>
|
||
<pre>数据示范————
|
||
array('phone'=>array('18608981880'),
|
||
'content'=>array('code'=>'123456'),
|
||
'config'=>array(
|
||
'accessKeyId'=>'XXXXXXXXXXXXXXX',
|
||
'accessKeySecret'=>'XXXXXXXXXXX',
|
||
'sign'=>'Hiluker'
|
||
),
|
||
'option'=>array(),
|
||
'tmpl'=>'SMS_123456789',
|
||
'accesstoken'=>'XXXXXXXXXXXXXXX',
|
||
);
|
||
</pre>
|
||
<code>数据返回:</code> JSON字符串,解码后得到结果数组。根据结果数组中的errorcode来表示短信发送是否成功。转接接口有一定的延时,因此我们会做短信发送记录并根据情况进行记录。<br>
|
||
<pre>
|
||
$return['errorcode']:结果状态码,正常情况下为0
|
||
$return['msg']:返回的消息(接口报错时会使用到,消息中会将阿里大鱼接口的返回提示一并显示)
|
||
$return['data']:用户侧应获得的数据(实际上即是接口请求时POST的数据)
|
||
$return['timeused']:接口耗时
|
||
$return['total']:接口调用统计总记录数
|
||
$return['bytes']:本次返回数据的字节长度统计
|
||
$return['sms_left']:剩余可用短信条数
|
||
</pre>
|
||
<br>
|
||
</li>
|
||
|
||
<li>
|
||
<kbd>群发方式</kbd>:暂不开放<br>
|
||
</li>
|
||
|
||
<li>
|
||
<kbd>错误代码</kbd>:(客户侧可直接将接口站返回的结果打印出来查看,以下仅列出服务侧程序正确运行情况下返回的错误及提示;其他情况可直接打印结果进行查看)<br>
|
||
<textarea class="form-control"><?php foreach($errorcodes as $k=>$v){
|
||
echo '"'.$k.'" : '.$v.";\r\n";
|
||
}
|
||
?>
|
||
</textarea>
|
||
<br>
|
||
</li>
|
||
</ol>
|
||
</p>
|
||
</div>
|