codecamp

百度智能小程序 推送模板消息

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_tokenstringaccess_token ,授权小程序的接口调用凭据。

请求参数:

参数名类型是否必须描述
template_idstring所需下发的模板消息的 id 。
touserstring接收者 swan_id (touser touser_openId两个参数不能都为空)
touser_openIdstring接收者 open_id (touser touser_openId两个参数不能都为空)
datajson/string{"keyword1": {"value": "2018-09-06"},"keyword2": {"value": "kfc"}}。
pagestring点击模板卡片后的跳转页面,仅限本小程序内的页面。支持带参数,(示例 index?foo=bar),该字段不填则模板无跳转。
scene_idstring场景 id ,例如表单 Id 、 orderId 或 payId 
scene_typeint场景 type ,1:表单;2:百度收银台订单;3:直连订单。
extjson/string{"xzh_id":111,"category_id":15}。

Q&A

  1. 消息发送失败可能的原因?
  • 发送消息时用到的 touser/touser_openid 必须和申请 scene_id 时的 touser/touser_openid 一一对应, 否则也会导致 scene_id 检验失败;
  • 如果通过上面的查验仍然发送消息失败,请检查 appkey 是否异常。
  1. 怎么判断当前用户是游客状态还是登录状态?
  1. 如何获取 swan_id & open_id ?
  • 获取 swan_id:详见 swan.getSwanId ;
  • 获取 open_id:详见登录文档中获取登录用户 OpenId 相关内容。

错误码

错误码说明
2002参数错误
4001template_id 不正确。
4002消息推送接口调用失败。
4003表单无效。
4004场景 id 无效。
6001无 push 权限。

返回示例

    {
        "errno":0,
        "msg":"success",
        "data":{
            "msg_key":4330862
        }
    }


百度智能小程序 删除帐号下的某个模板
百度智能小程序 消息推送介绍
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

百度智能小程序开发文档

百度智能小程序 组件

百度智能小程序 地图

百度智能小程序 画布

百度智能小程序 API

百度智能小程序 界面

百度智能小程序 关注小程序引导组件

百度智能小程序 自定义组件

百度智能小程序 媒体

百度智能小程序 设备

百度智能小程序 拨打电话

百度智能小程序 内存警报

百度智能小程序 手机联系人

百度智能小程序 用户截屏事件

百度智能小程序 第三方平台

百度智能小程序 开放接口

百度智能小程序 百度收银支付

百度智能小程序 分包预下载

百度智能小程序 数据分析

百度智能小程序 服务端

百度智能小程序 云开发

百度智能小程序 初始化

百度智能小程序 云函数

百度智能小程序 服务端初始化

百度智能小程序 服务器获取上下文

百度智能小程序 服务端云函数

百度智能小程序 开发教程

百度智能小程序 功能开发

百度智能小程序 基本原理

百度智能小程序 小程序自动化

百度智能小程序 视频教程

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }