发布短信消息示例代码中的参数解释
下面以java代码为例,解释下各个参数该怎么填
1. topic填什么
CloudTopic topic = client.getTopicRef(“$YourTopic”);
$YourTopic 填免费topic即可(如果要用收费topic请参考相关sdk示例文档),如截图,sms.topic-cn-hangzhou即为杭州域的免费topic
2.endpoint填什么
CloudAccount account = new CloudAccount(“$YourAccessId”, “$YourAccessKey”, “$YourMNSEndpoint”);
$YourMNSEndpoint 填您第一步中使用的topic对应域的endpoint,如截图,有三个地址
您运行程序的机器是公网机器请用 公网Endpoint
您运行程序的机器是阿里云经典网络ECS请用 私网Endpoint
您运行程序的机器是阿里云专有网络ECS器请用 VPCEndpointendpoint的获取页面:短信概览页,选择您的所在地区,下图红框位置
3.MessageBody填什么
现版本sdk中,MessageBody可以随便填,其实不生效,但是必须填,不填会出错,下一版本sdk我们会把这参数去掉。
sms-message替换为任意字符串都不会出错。
msg.setMessageBody(“sms-message”);
4.短信签名填什么
batchSmsAttributes.setFreeSignName(“$YourSignName”);
$YourSignName 填您审核通过的短信签名的名称,如截图,这个审核通过的签名叫做”测试”
代码里面就写成这样
batchSmsAttributes.setFreeSignName(“测试”);
5.发送短信使用的模板填什么
batchSmsAttributes.setTemplateCode(“$YourSMSTemplateCode”);
$YourSMSTemplateCode 填通过审核的模板CODE,以 SMS_ 开头的字符串
6.模版参数填什么
BatchSmsAttributes.SmsReceiverParams smsReceiverParams = new BatchSmsAttributes.SmsReceiverParams();
smsReceiverParams.setParam(“$YourSMSTemplateParamKey1”, “$value1”);
比方截图这个模版,有个参数叫做${name},代码就要写成
smsReceiverParams.setParam(“name”, “您想填的名字”);
注:模版里面是全常量没有设置参数的,不用setParam
以上参数都填对,发送成功,手机还收不到消息的,再开工单与我们联系。
注
1. 代码请用UTF8 格式,以避免中文字符出现问题。
2. 每天发送短信条数是有限制的。参考流控文档。
3. 如果您提交接口请求后,未能收到短信,您可以通过事件通知来查看结果,包括请求接口错误和发送状态返回结果。
事件通知
接口报错信息
运营商返回报错信息
4.如还无法解决您的问题,您可以提交工单,并将messageid提供给我们。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。