百度智能小程序 推送模板消息
2020-09-05 14:47 更新
sendTemplateMessage
解释:推送模板消息
接口调用请求说明:请提前在开发者平台创建消息模板。用application/x-www-form-urlencoded方式提交数据。
POST https://openapi.baidu.com/rest/2.0/smartapp/template/send?access_token=ACCESS_TOKEN
名词解释:
- swan_id:百度生成的与设备相关的唯一标识,APP 卸载重安装不会变,详见 swanid 机制说明。
- open_id:百度用户登录唯一标识,详见开放接口-登录。
- formId:页面内 form 组件的report-submit属性为 true 时返回 formid ,详见 form 表单。
公共请求参数:
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
access_token | string | 是 | access_token ,授权小程序的接口调用凭据。 |
请求参数:
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
template_id | string | 是 | 所需下发的模板消息的 id 。 |
touser | string | 否 | 接收者 swan_id (touser touser_openId两个参数不能都为空) |
touser_openId | string | 否 | 接收者 open_id (touser touser_openId两个参数不能都为空) |
data | json/string | 是 | {"keyword1": {"value": "2018-09-06"},"keyword2": {"value": "kfc"}}。 |
page | string | 否 | 点击模板卡片后的跳转页面,仅限本小程序内的页面。支持带参数,(示例 index?foo=bar),该字段不填则模板无跳转。 |
scene_id | string | 是 | 场景 id ,例如表单 Id 、 orderId 或 payId 。 |
scene_type | int | 是 | 场景 type ,1:表单;2:百度收银台订单;3:直连订单。 |
ext | json/string | 否 | {"xzh_id":111,"category_id":15}。 |
Q&A
- 消息发送失败可能的原因?
- 发送消息时用到的 touser/touser_openid 必须和申请 scene_id 时的 touser/touser_openid 一一对应, 否则也会导致 scene_id 检验失败;
- 如果通过上面的查验仍然发送消息失败,请检查 appkey 是否异常。
- 怎么判断当前用户是游客状态还是登录状态?
- 通过 swan.isLoginSync API 可以判断当前用户是否为登录状态。
- 如何获取 swan_id & open_id ?
- 获取 swan_id:详见 swan.getSwanId ;
- 获取 open_id:详见登录文档中获取登录用户 OpenId 相关内容。
错误码
错误码 | 说明 |
---|---|
2002 | 参数错误 |
4001 | template_id 不正确。 |
4002 | 消息推送接口调用失败。 |
4003 | 表单无效。 |
4004 | 场景 id 无效。 |
6001 | 无 push 权限。 |
返回示例
{
"errno":0,
"msg":"success",
"data":{
"msg_key":4330862
}
}
以上内容是否对您有帮助:
更多建议: