# cloudbase.createSendSmsTask
本接口应在服务器端调用,详细说明参见服务端 API。
本接口支持云调用。需开发者工具版本 >=
1.02.1904090(最新稳定版下载),wx-server-sdk>=0.4.0
创建发短信任务。发送的短信支持打开云开发静态网站 H5,进而在 H5 里可以打开小程序。详情可参考静态网站 H5 跳小程序
短信格式:
【小程序名称】${content},点击 云开发静态网站 URL 打开小程序名称小程序,退订回 T。
示例:【云开发】能力上新,跳转小程序https://dllzff.cn/VcdrUJK0 退订回 T。
短信由签名和正文内容组成:
短信签名是位于短信正文前【】中的署名,小程序发送短信时,签名为小程序名称。
- 正文内容是由短信模板和变量构成,{1},跳转小程序 {2} 退订回 T,模板参数中 {1},{2} 是变量:
- {1} :用户可自定义传入的内容,当前最长为 30 个字。
- {2} :用户传入的静态托管的地址,例如 /action/index.html?action=double12。
通过该 API 来实现发短信的完整过程:
- 下载 CSV 模版文件,并按格式填写手机号、短信内容、跳转的静态托管地址
- 上传填写后的 CSV 文件, 并获取
CodeUri- 调用描述扩展上传文件信息,获取上传链接
UploadUrlFileType参数填SMS
- 使用 HTTP PUT 方法请求
UploadUrl上传 CSV 文件
- 调用描述扩展上传文件信息,获取上传链接
- 调用本 API,创建发短信任务,并获取到
查询 ID - 通过
查询 ID可以查询短信任务的执行情况
调用方式:
# HTTPS 调用
# 请求地址
POST https://api.weixin.qq.com/tcb/createsendsmstask?access_token=TOKEN
# 请求参数 - Query
| 属性 | 类型 | 默认值 | 必填 | 说明 |
|---|---|---|---|---|
| access_token / cloudbase_access_token | string | 是 | 接口调用凭证 |
# 请求参数 - Body
| 属性 | 类型 | 默认值 | 必填 | 说明 |
|---|---|---|---|---|
| env | string | 是 | 环境 ID | |
| file_url | string | 是 | 短信 CSV 文件地址CodeUri | |
| template_id | string | 是 | 短信模版 ID 默认值:2053122(销类短信模版 ID) | |
| use_short_name | bool | 是 | 是否使用小程序简称 小程序名称长度超过 12 字时需使用小程序简称 |
# 返回值
# Object
返回的 JSON 数据包
| 属性 | 类型 | 说明 |
|---|---|---|
| errcode | number | 错误码 |
| errmsg | string | 错误信息 |
| query_id | string | 查询 ID |
errcode 的合法值
| 值 | 说明 | 最低版本 |
|---|---|---|
| 0 | 请求成功 | |
| -1 | 系统繁忙,此时请开发者稍候再试 | |
| -501007 | 参数有误,具体原因参考 errmsg | |
| -601027 | 无效的环境 | |
| -601028 | 该环境没有开通静态网站 | |
| -601032 | 小程序昵称不能为空 | |
| -601033 | 仅支持非个人主体小程序 |
# 请求数据示例
{
"env": "xxx",
"file_url": "xxx"
}
# 返回数据示例
{
"errcode": 0,
"query_id": "xxx"
}
# 云调用
云调用是微信云开发提供的在云函数中调用微信开放接口的能力,需要在云函数中通过
wx-server-sdk使用。
# 接口方法
openapi.cloudbase.createSendSmsTask;
需在
config.json中配置cloudbase.createSendSmsTaskAPI 的权限,详情
# 请求参数
| 属性 | 类型 | 默认值 | 必填 | 说明 |
|---|---|---|---|---|
| env | string | 是 | 环境 ID | |
| fileUrl | string | 是 | 短信 CSV 文件地址CodeUri | |
| templateId | string | 是 | 短信模版 ID 默认值:2053122(销类短信模版 ID) | |
| useShortName | bool | 是 | 是否使用小程序简称 小程序名称长度超过 12 字时需使用小程序简称 |
# 返回值
# Object
返回的 JSON 数据包
| 属性 | 类型 | 说明 |
|---|---|---|
| errCode | number | 错误码 |
| errMsg | string | 错误信息 |
| queryId | string | 查询 ID |
errCode 的合法值
| 值 | 说明 | 最低版本 |
|---|---|---|
| 0 | 成功 |
# 异常
# Object
抛出的异常
| 属性 | 类型 | 说明 |
|---|---|---|
| errCode | number | 错误码 |
| errMsg | string | 错误信息 |
errCode 的合法值
| 值 | 说明 | 最低版本 |
|---|---|---|
| -1 | 系统繁忙,此时请开发者稍候再试 | |
| -501007 | 参数有误,具体原因参考 errmsg | |
| -601027 | 无效的环境 | |
| -601028 | 该环境没有开通静态网站 | |
| -601032 | 小程序昵称不能为空 | |
| -601033 | 仅支持非个人主体小程序 |
# 请求数据示例
const cloud = require('wx-server-sdk');
cloud.init({
env: cloud.DYNAMIC_CURRENT_ENV,
});
exports.main = async (event, context) => {
try {
const result = await cloud.openapi.cloudbase.createSendSmsTask({
env: 'xxx',
fileUrl: 'xxx',
});
return result;
} catch (err) {
return err;
}
};
# 返回数据示例
{
"errCode": 0,
"queryId": "xxx",
"errMsg": "openapi.cloudbase.createSendSmsTask:ok"
}