一、短信签名设置

  1、短信签名是什么?

  签名是在短信内容开始或者末尾跟的品牌或者应用名称,设置签名有一下几个好处:增加品牌的曝光度,增强用户的记忆让用户能更清楚的知道正在使用的应用。

  2、签名可不可以不设置?

  如果您不设置签名,您通过接口发送的短信将很可能会进入短信审核流程(注:进入该流程需要短信发送平台的客服人工审核,将会影响短信的发送和到达时间)或者可能直接被网关驳回,所以,为了您平台用户使用短信的稳定性,设置短信签名是十分必要的。

  3、短信签名怎么设置?

  一般签名设置为您的品牌名、应用名、公司名等有代表性的信息,三到八个字即可。如【信信客】、【淘宝网】。

二、短信模板设置

  1、什么是短信模板?

  短信模板是对您将要发送的短信进行相似性提取后的内容。举个例子:

  A用户在您平台注册会员,需要发送一条短信,内容如下:

  您好,您的验证码是:111111

  同时,B用户也在您的平台注册会员,发送了如下短信:

  您好,您的验证码是:222222

  我们提取相似度以后,可以制作以下短信模板:

  您好,您的验证码是:${code}

  其中,${code}这种使用大括号包围起来的形式,我们称之为变量。您可以按照所在场景定义变量。

  短信模板中的变量可以是数字,英文或汉字等

  1.实例一:需要传递变量值:${code}=“123456”

  

  2.实例二:需要传递变量值:${nanme}=“李先生”,${order}=“20160506168”,${amount}=“588”。

  

  2、为什么要设置短信模板?

  如果不设置短信模板,通过接口发送的短信将很可能会进入短信审核流程(注:进入该流程需要短信发送平台的客服人工审核,将会影响短信的发送和到达时间),或者直接被网关驳回,所以,为了您平台用户使用短信的稳定性,设置模板也是十分必要的。

三、如果不设置短信签名和模板,可以不可以发送短信?

  可以发送,但是该短信将会进入人工审核流程,可能会影响您的短信到达时间。所以,我们强烈建议您报备短信签名和模板。

四:关于开发

官方代码样例:

TaobaoClient client = new DefaultTaobaoClient(url, appkey, secret);
AlibabaAliqinFcSmsNumSendRequest req = new AlibabaAliqinFcSmsNumSendRequest();
req.setExtend( "" );
req.setSmsType( "normal" );
req.setSmsFreeSignName( "" );
req.setSmsParamString( "" );
req.setRecNum( "13000000000" );
req.setSmsTemplateCode( "" );
AlibabaAliqinFcSmsNumSendResponse rsp = client.execute(req);
System.out.println(rsp.getBody());

  项目实际代码:

//service中发送验证码的逻辑

@Override
public Map<String, String> sendSMSMsg(String phone, String msg) throws ApiException {
Map<String, String> map = new HashMap<String, String>();

//开发过程中,设置不发送短信
if (!StringUtils.equals("1", smsSettings.getOpen())) {
map.put("resultCode", "0");
map.put("smsPhone", phone + "");
map.put("smsTime", (new Date()).getTime() + "");
map.put("smsCode", "1234");
return map;
} TaobaoClient client = new DefaultTaobaoClient(smsSettings.getUrl(), smsSettings.getAppkey(),
smsSettings.getSecret());
AlibabaAliqinFcSmsNumSendRequest req = new AlibabaAliqinFcSmsNumSendRequest();
Random rnd = new Random();
int code = rnd.nextInt(8999) + 1000;(0到9999四位数验证码)
req.setSmsType(smsSettings.getType());
req.setSmsFreeSignName(smsSettings.getSignName());
req.setSmsParamString("{\"code\":\"" + code + "\",\"product\":\"" + "" + "\"}");//套用模板
req.setRecNum(phone);
req.setSmsTemplateCode(smsSettings.getTplCode());
AlibabaAliqinFcSmsNumSendResponse response = client.execute(req);
logger.info("sendMsm,body: {}", response.getBody());
if (response.getBody().contains("error_response")) {// true
map.put("resultCode", "1");
map.put("resultMsg", "短信发送次数超出限制,请稍后再试。");// 对同一个手机号可发送1条/分钟,7条/小时,50条/天
} else if (response.getResult().getSuccess()) {
map.put("resultCode", "0");
map.put("smsPhone", phone + "");
map.put("smsTime", (new Date()).getTime() + "");
map.put("smsCode", code + "");
}
return map;
}

阿里大于发送短信(java)的更多相关文章

  1. NetCore 阿里大于发送短信

    使用阿里大于API发送短信,但阿里没有提供NetCore 的API,自己看了下源码重写了发短信这个部分 public class MessageSender { private readonly st ...

  2. PHP阿里大于发短信教程

    PHP阿里大于发短信教程 1 先去控制台 https://www.alidayu.com/center/user/account?spm=a3142.7791109.1999204004.5.ZtBQ ...

  3. thinkphp 5.0整合阿里大于验证码短信发送接口,含完整模型验证实例DEMO

    为大家分享一个阿里大于短信发送接口: 首先创建一个发送模型(Send.php): <?php namespace app\index\model; use think\Validate; cla ...

  4. 通过sails和阿里大于实现短信验证

    通过sails与阿里大于来实现注册短信验证码的发送,逻辑图如下 1.用户在客户端发送手机号给服务器,服务器接收到手机号,生成对应时间戳,随机四位数验证码 2.服务器将电话号码和验证码告诉阿里大于服务器 ...

  5. 发送短信——java

    闲来无事研究一下调用第三方接口发送短信的技术 这一次我们使用阿里的短信服务 一.进行平台相关服务的注册和设置 下面请参照阿里的短信服务文档进行设置,只要按照文档步骤来差不多30分钟就能搞定服务注册: ...

  6. Python2-Django配置阿里大于的短信验证码接口

    1.短信发送开发指南地址:https://help.aliyun.com/document_detail/55491.html?spm=a2c4g.11186623.6.568.l5zTwH 2.SD ...

  7. 使用短信猫发送短信java代码

    短信猫简单配置:https://www.cnblogs.com/Big-Boss/p/9699880.html 发送短信: package utils; import org.smslib.AGate ...

  8. golang sms阿里云发送短信(公司实际项目)

    话不多说,直接上代码!!! 要先下载两个包 (可以go get -u +你想要的包) github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests githu ...

  9. Delphi - Delphi7 调用阿里大于实现短信消息验证

    阿里大于是阿里通信旗下产品,融合了三大运营商的通信能力,提供包括短信.语音.流量直充.私密专线.店铺手机号等个性化服务.每条四分五,价钱还算公道,经老农测试,响应速度非常快,基本上是秒到.官方文档提供 ...

随机推荐

  1. Linux架构分布式集群之基础篇

    部署linux环境,安装jdk 1.安装rar命令行 wget http://www.rarlab.com/rar/rarlinux-x64-4.2.0.tar.gz由于在此目录下解压rar后linu ...

  2. 【Fiddler学习】Fiddler抓包HTTPS请求和手机抓包

    一.安装Fiddler 百度搜索:Fiddler抓包工具,然后安装即可. 然后打开Fiddler工具,打开浏览器随意输入任何网址,就可以在Fiddler看到抓包信息. 但是:默认情况下,Fiddler ...

  3. 20165205 2017-2018-2 《Java程序设计》实验三 敏捷开发与XP实践

    20165205 2017-2018-2 <Java程序设计>实验三 敏捷开发与XP实践 实验内容 检查点1: 安装alibaba 插件,解决代码中的规范问题 首先把搭档加入到自己的项目中 ...

  4. 制作本地yum源

    镜像源是centos当中下载相关软件的地址,我们可以通过制作我们自己的镜像源指定我们去哪里下载impala的rpm包,这里我们使用httpd这个软件来作为服务端,启动httpd的服务来作为我们镜像源的 ...

  5. CentOS7最小化安装-Linux-1

    CentOS 7的安装其实很简单,主要是网络配置. 选英文.设置时区等 最小化安装 先启动一个网络 Begin 吧 在安装的时候设置好root密码.很简单 别去点安装tools. 等待安装完成后,点击 ...

  6. Exchange Tech Issues 参考网站

    Exchange Tech Issues: https://www.experts-exchange.com/ DAG部署: http://blog.51cto.com/4096415/958671

  7. PL/SQL将sql脚本数据导入Oracle

    PL/SQL将sql脚本数据导入数据库: 1.首先,使用plsql登录到需要导入数据的数据库.在[tools]--[Import tables] 2.选择第二个[SQL Inserts],在下面,点击 ...

  8. 10.Ubuntu操作系统及python2.7、3.5 exe

    Ubuntu操作系统 链接:https://pan.baidu.com/s/1cu_eYN1GnW5EwVYrXMJbEg 密码:advq python-3.5.3_32位 链接:https://pa ...

  9. node-disconf-client基本配置

    node-disconf-client 需要cppm install node-disconf-client var  disconf  = require (' node-disconf-clien ...

  10. AIR程序调用本地默认应用程序打开本地文件

    当我用下面语句的时候,可以成功打开桌面文件夹下面的文件: var file:File = File.desktopDirectory.resolvePath("test.jpg") ...