fastcon云端推送业务流程

业务流程概述

1.推送流程

设备—->devhttpw—->notifyexec—->pushfront—->用户APP

2.APP交互流程(推送管理)

  1. 上报token
  2. 设置开关
  3. 用户退出账号对token设置

说明:目前没有针对用户fastcon专门的开关设置,这三个流程是通用的推送相关的流程

3.开发部署流程

  1. 后台录入推送账号(ios,安卓)
  2. 后台创建消息模板(ios,安卓等)
  3. temlateid,tagcode,pid,cpid,appid 提供给云端,云端后台创建fastcon推送模板和appid/tagcode映射关系
  4. 如果之前pid未曾配置,云端后台创建产品信息配置
  5. 上报token和设置开关的域名部署[lid]+appservice.ibroadlink.com

业务流程详述

1.推送流程

  1. 设备http上报json格式

    {
    "did":"",
    "fastcon":"0",
    "devType":"",
    "cDid":"",
    "cDevType":"",
    "configSupport":"0"//0:只支持配网,1:只支持子设备添加,2:两种方式都支持,3:白名单添加成功
    }

    更详细描述参考文档: https://doc.ibroadlink.com/firmware/fastcon_doc/fastcon_message_push/

  2. devhttpw校验后转发

  3. notifyexec内置模板和产品配置并做推送组装,详细步骤如下: 1) 查找pid相关的模板。(模板目前为配置文件,安卓ios等共用一个) 2) 事件检查(目前是a&&b&&c,目前设置的条件只有fastcon=0) 3) 从家庭中查找设备关联的账号,家庭列表 4) 遍历筛选出的模板进行推送。 A.获取产品相关的config(目前配置文件配置). B.遍历推送用户(可以配置只推送管理员),获取用户推送设置(system,token,language等) C.遍历推送方式进行推送,校验语言,组装action和content,tagcode,templateid,token推送

  4. pushfront推送数据

2.APP交互流程

接口文档地址: http://gitlab.broadlink.com.cn/dnadocs/dnasys/blob/master/olddocs/notifysysapi.rst 2.1 app token上传接口 2.2 用户退出账号接口 2.6 用户设置推送接口

3.开发部署流程

  1. 后台录入推送账号(ios,安卓)
  2. 后台创建消息模板(ios,安卓等)
  3. temlateid,tagcode,pid,cpid,appid 提供给云端,云端后台创建fastcon推送模板和appid/tagcode映射关系(在没有运营系统的情况下暂时这样处理) 推送内容暂时为一样: json content:{"friendlyName":"xxxx"} action:{"action":"ihc://device/fastconConfig?familyId=xxxx&masterDid=xxxx&clientInfo={\"did\":\"xxxx\",\"pid\":\"xxxx\",\"name\":\xxxx\",\"configType\": \"xxxx\"}\"} appid-tagcode关系保存在 ./output/appidtagcode.json中,目前重启生效。
  4. 如果之前pid未曾配置,云端后台创建产品信息配置(在没有运营系统的情况下暂时这样处理) json { "friendlyName":"智能插座", "pid":"000000000000000000000000137d0000" }
  5. 上报token和设置开关的域名部署[lid]+appservice.ibroadlink.com