本示例介绍了:如何发布短信消息。
1. 准备
- 下载最新版php sdk
- 配置AccessKeyID、AccessKeySecret和Endpoint;AccessKeyId、AccessKeySecret访问阿里云API的密钥对;
- 如果使用主账号访问,登陆阿里云 AccessKey 管理页面创建、查看;
- 如果使用子账号访问,请登录阿里云访问控制控制台查看;
Endpoint
- 访问MNS的接入地址,登陆MNS控制台 单击右上角 [backcolor=transparent]获取Endpoint 查看;
- 不同地域的接入地址不同;
2. 创建主题和订阅
发布短信有两种模式的主题可使用(
二者选其一即可):
2.1 短信专用主题(推荐,简单)
进入
控制台短信概览页,获取主题名称(专用主题和订阅会自动进行创建):
注:图中 sms.topic-cn-hangzhou 即杭州区域的短信专用主题,不同区域对应的主题名不一样(使用时需要注意
主题名与选择的Endpoint的一致性)。
2.2 普通主题及订阅(若使用短信专用主题则跳过)
使用普通的主题的话,需要分别创建主题和对应的订阅。
(1)创建主题
注:目前仅华东1、华东2、华北1、华北2、华南1支持短信推送,创建主题必须选择这些区域。
进入
控制台主题标签页,
(2)创建短信推送订阅
3. 发布短信消息
示例需要传入的参数包括:
- $YourAccessId,阿里云AccessId,可在“步骤一”获取(登陆阿里云 AccessKey 管理页面创建、查看)
- $YourAccessKey,阿里云AccessKey,可在“步骤一”获取(登陆阿里云 AccessKey 管理页面创建、查看)
- $YourMNSEndpoint,访问MNS服务的接入地址,可在“步骤一”获取(登陆MNS控制台,单击右上角“获取Endpoint”查看,选择公网地址)
- $YourTopic,发送短信使用的主题,可在“步骤二”获取,建议使用短信专用主题(进入控制台短信概览页,获取主题名称)
- $YourSignName,发送短信使用的签名,可在here获取
- $YourSMSTemplateCode,发送短信使用的模板Code,可在here获取
- $YourSMSTemplateParamKey1,所指定短信模板中定义的参数名(“{}”中的内容),没有可不指定;可在here查看模板中的变量,注:key 和 value 都必须是字符串形式
- $YourReceiverPhoneNumber1,接收短信的手机号码
示例代码如下:
4. 查看短信推送状态
查看短信推送状态的结果消息请参考:
here
5. 如没有接收到短信怎么办
1)代码请用UTF8 格式,以避免中文字符出现问题。
2)每天发送短信条数是有限制的。参考流控文档。
3)如果您提交接口请求后,未能收到短信,您可以通过事件通知来查看结果,包括请求接口错误和发送状态返回结果。
事件通知
接口报错信息
运营商返回报错信息
4)如还无法解决您的问题,您可以提交工单,并将messageid提供给我们。