阿里大鱼的短息一条4分5,比起市场上7分5的短信,便宜多了,而且大平台,相信之后选择用它的人也会越来越多。

--------以上为2016-04-16写这篇博客时的题记,今天是2017-07-18,时间过去了一年多,“阿里大鱼”也改成了“阿里大于”,而且由独立平台,集成到了阿里云旗下的控制中心,所以之前写的方法有些不太适用了,今天就重新整理一下,API开发不深入的讲,我只写最基础的集成,帮助各位看官快速的把阿里大于集成到你的网站,实现短信发送。

 (如果使用的是老账号,管理方式继续在阿里大于后台的,请移步到最下面,看老方法,依然有效。)

1、登录阿里云平台(www.aliyun.com),在“产品与服务”中找到“短信服务”,进入并开通,如图

2、开通后,新手一般送的有10元的短信券,供测试使用,有四个菜单,如下图

3、首先,我们先配置下要发送的短信的签名、短信的内容格式、以及申请下AK(这里我们先做下这些准备工作,一共三步,然后再集成代码,当然你也可以先跳到下面去看集成代码,回头再来准备这三个东东)

 

我们要发送的短信,举个栗子:【宕样】尊敬的买家,您在宕样平台购买的神器已经上路了,请您保持电话畅通,如有问题,请联系我们,电话:13822223333

 

a、签名,本例子的签名就是【宕样】

点击上图左侧的“短信签名”,然后添加签名,添加的时候不用加中括号

 

b、短信内容格式,本例子内容就是“尊敬的买家,您在宕样平台购买的神器已经上路了,请您保持电话畅通,如有问题,请联系我们,电话:13822223333”

点击上图左侧的“短信模板”,编辑如下:尊敬的买家,您在${webname}购买的${goodsname}已经上路了,请您保持电话畅通,如有问题,请联系我们,电话:${ourmobile}

(可以看见有几个自定义的地方,没错,这就是自定义的,在集成代码的时候我们会进行替换它)

 

c、AccessKeyId 与 AccessKeySecret是在哪里?

可以通过阿里云控制台的秘钥管理界面进行创建、管理所有的访问秘钥对。右上角选中您的昵称——accesskeys创建即可

4、以上三个东西准备好了,我们下面来集成代码

在上图的最下面可以看到“接口调用”,随便点击一个,然后进入到帮助页面,找到“SDK及DEMO下载”,我用的是PHP

 

文件清单:

  1. api_demo(短信服务API接口调用DEMO工程)
  2. api_sdk(短信服务API接口依赖的SDK)
  3. msg_demo(短信回执消息的DEMO)
  4. msg_sdk(短信回执消息的SDK)

知道了这四个包都是干嘛的,我们本次的目的只是发送短信,所以,只取api_demoapi_sdk

5、将上说的这俩包,进行一下整合注意,我们只要aliyun-php-sdk-core这一个包,而且名字不能改,然后把smsDemo.php,以及Request整个目录,拿到aliyun-php-sdk-core这个包的根目录里

如下图大概说明:

最终目录结构如图:

把这个文件夹(aliyun-php-sdk-core)放到网站的任意位置,方便你的引用即可

6、改配置

需要配置的文件只有一个,那就是smsDemo.php,这里我对原函数sendSms()稍微做了下更改,使可以接受参数,针对上面的例子来说,此时函数是这样的:

function sendSms($mobile, $webname,$goodsname,$ourmobile){

//$mobile:接收短信的手机号

...

}

函数里面需要配置的如图所示:

注意:上面的函数,最后一步是打印,可以注释掉,还有smsDemo.php最下面有个测试的函数调用,记得干掉:

7、引用

在需要用到发送短信的页面引用,比如我的文件包放在根目录下的data文件夹下,则引用为:

require_once(dirname(__FILE__).'/data/aliyun-php-sdk-core/smsDemo.php');

调用时,只需要:

sendSms($mobile, $webname,$goodsname,$ourmobile);//这些参数这里可是要先赋值的

 

注意事项:

1、因为SDK使用了空间命名,所以PHP版本需要大于等于5.3,否则不支持就会报错

2、暂未想到

 

 

 

------------------------------------------------------时间分割线,下面是之前的参考方法,适用于账号的管理平台是阿里大于的后台--------------------------------------------------------------------

下面记述一下集成方法,有需要的可以看看。

1、申请大鱼,用淘宝账号登陆,最好是认证过的淘宝号,网址http://www.alidayu.com/

2、在大鱼管理中心的右上角头像旁边点击进入“开发者控制台”

3、创建应用(阿里有更详细的说明:https://doc.alidayu.com/doc2/detail.htm?spm=0.0.0.0.4Ozcne&treeId=135&articleId=104431&docType=1)

4、应用开发:https://doc.alidayu.com/doc2/detail.htm?spm=a3142.7629140.4.6.eIl0a8&treeId=135&articleId=104433&docType=1

(以上步骤阿里大鱼帮助文档说明更详细)

5、整合(这是重点),我用的PHP

------------------------------------------------------

1、将下载的包解压后,重新命名,随意命名,放到网站的目录里,目录自己看着放,不用挑出来什么什么文件,整体就行,懒得搞,比如我的文件夹名称为alidayu

2、某文件里写调用方法:

function sendSMS ($mobile, $content)
{
	include "alidayu/TopSdk.php";
    date_default_timezone_set('Asia/Shanghai');
	
	$c = new TopClient;
	$c->appkey = "填写具体值";
	$c->secretKey = "填写具体值,在控制台查看";
	$req = new AlibabaAliqinFcSmsNumSendRequest;
	$req->setSmsType("normal");
	$req->setSmsFreeSignName("注册验证");
	$req->setSmsParam("{\"code\":\"".$content."\",\"product\":\"网站名字\"}");
	$req->setRecNum($mobile);
	$req->setSmsTemplateCode("SMS_7785825");
	$resp = $c->execute($req);

	//var_dump($resp); 
	if($resp->result->success)
	{
		return true;
	}
	else
	{
		return false;
	}
}

说明:

$content是要发送的验证码

网站名字根据需要来

这里只是一个发送注册验证码的案例,其中的参数是对应注册的,其他的请参考API文档

下载的文件没有需要配置的,只需要调用入口文件就行,注意文件的位子

 

3、返回是true则发送成功,否则则失败。

 

posted on 2016-04-16 22:05  宕样  阅读(21265)  评论(10编辑  收藏  举报