1、APP控制指令支持

1.1 APP指令支持

APP开始指令:下发cloudRecipeStatus=1 (食谱开始)、食谱步骤指令集合(自定义);

APP暂停指令:下发workSwitch=2;

APP继续指令:下发workSwitch=3;

APP停止指令:下发workSwitch=0;

食谱制作完成:下发cloudRecipeStatus=0(食谱结束);


1.2 设备上报能力支持

(1)属性上报

步骤执行剩余时间上报:lefttime(剩余时间);

单品属性(自定义);

(2)步骤执行完成上报

步骤执行完成后上报:cloudRecipeStepDoneEvent ;

设备状态上报:workstatus=3 (待机状态)

(3)断电重上电上报;

重新上电上报:workstatus=0;(停止状态)

(4)设备端暂停上报:

设备端暂停上报:workstatus=2;  (暂停状态)


1.3 端上互斥逻辑支持

(1)云食谱运行阶段端上操作上报

设备端操作事件:deviceSideOperationEvent;

(2)是否操作互斥由端上决定,根据云端下发的云食谱开始判断是否正在食谱进行中;

如果支持设备端上操作,则执行完成步骤后,上报步骤执行完成:cloudRecipeStepDoneEvent事件;

如果不支持设备端上操作,则上报workstatus=0(停止状态);


1.4 异常情况

(1)指令丢失情况——该情况由音响端和设备端协议保证;

如果是食谱结束指令未收到;端上可根据上报下一步事件时间开始,在一定时间内未收到云端指令(如5分钟),判断云食谱已结束;互斥逻辑可解除;

(2)设备异常不上报情况;

云端食谱20分钟未收到上报信息自动停止食谱,且不会下发任何指令;

(3)设备断电情况;

断电20分钟内容未重新上电,云端食谱自动停止;设备重新上电上报workstatus=0;(停止状态)结束食谱;


1.5自定义食谱步骤demo

step1.set workswitch = 1

step2.set workswitch = 2

step3.set workswitch = 0


2、串口部分通信协议

2.1 调用行业设备控制接口后

FF 00 00 08 D1 A8 01 10 A8 06 01 00 41       下发云食谱状态=开始

FF 00 00 07 D1 A8 01 11 35 01 01 C9           下发worswitch = 1


2.2 设备上报云食谱完成事件后

FF 00 00 07 D4 A8 01 02 09 F0 2D AC         上报云食谱完成事件

FF 00 00 04 D5 A8 01 02 84                         收到上报成功后收到相同tid回复

FF 00 00 07 D1 A8 01 19 35 01 02 D2             下发   workswitch =2


2.3 自定义食谱步骤最后一步完成后上报食谱完成事件

FF 00 00 07 D4 A8 01 02 09 F0 2D AC           上报云食谱完成事件

FF 00 00 04 D5 A8 01 02 84                          收到上报成功后收到相同tid回复

FF 00 00 08 D1 A8 01 16 A8 06 00 00 46         下发 云食谱状态 = 结束


2.4 设备端需要上报当前状态&剩余时间

FF 00 00 0D D4 A8 01 01 01 F0 07 2F 01 A0 00 00 00 53           工作状态&剩余时间感应中&160S


2.5 设备端一帧上报多属性

工作状态&剩余时间&准备时间&杯体状态&开盖提醒

FF 00 00 17 D4 A8 01 01 01 F0 07 2F 01 A0 00 00 00 84 05 64 00 12 04 02 B1 06 01 1A


2.6 云端下发自定义食谱多步骤

启动开关&云食谱状态&运行时间&杯体状态

FF 00 00 14 D1 A8 01 06 35 01 01 A8 06 01 00 2D 01 B8 0B 00 00 12 04 03 84


3、数据示例

3.1 下发云食谱状态

0xFF

0x00

0x00

0x07

0xd1

0xa8

0x01

0x10

0xA8

0x06

0x01

0x00

0x41

mesh透传指令

数据长度

opcode:d101a8

tid

0x06A8:云食谱状态


开始

求和校验


3.2 下发自定义步骤内容(启动开关:开)

0xFF

0x00

0x00

0x07

0xd1

0xa8

0x01

0x11

0x35

0x01

0x01

0xC9

mesh透传指令

数据长度

opcode:d101a8

tid

0x0135:启动开关

求和校验


3.3 设备主动上报食谱完成事件

0xFF

0x00

0x00

0x07

0xd4

0xa8

0x01

0x02

0x09

0xF0

0x2D

0xAC

mesh透传指令

数据长度

opcode:d401a8

tid

F009:事件触发

云食谱完成

求和校验


3.4 设备主动上报必上报属性(状态&剩余时间)

0xFF

0x00

0x00

0x07

0xd4

0xa8

0x01

0x02

0x01

0xF0

0x01

0x2F

0x01

0xA0

0x00

0x00

0x00

0x4D

mesh透传指令

数据长度

opcode:d401a8

tid

F001:工作状态

开始/继续

0x012F:剩余时间

A0:160S

求和校验


3.5 上报操作名

0xD4

0xA8

0x01

0x01

0x09

0xF0

0x2F

0xEB

0x06

0x12

Opcode

TID

Attr Type

Attr Value

opreationName

Type

operationname Value

0xD401A8

01

事件 (0xF009)

设备端操作事件(0x2F)

操作名属性

(0x06EB)

operationname

(自定义)


有关操作名属性数值对应的名称,需要厂商针对自己产品的功能定义一份表格来说明含义


3.6 针对同时下发多云食谱步骤设备回复ACK

0xFF

0x00

0x00

0x14

0xd3

0xa8

0x01

0x06

0x35

0x01

0x01

0xA8

0x06

0x01

0x00

0x2D

0x01

0xB8

0x0B

0x00

0x00

0x12

0x04

0x03

0x87

mesh透传指令

数据长度

opcode:d301a8

tid

0x0135:启动开关


开始

云食谱状态:0x06A8

0x0001:开始

0x012D:剩余时间

剩余时间时长

0x0412:杯体状态

0x03:标准

求和校验


注意事项:如果用户账号下有多台音箱情况下,需要厂商设备端根据tid做去重防止重复回复的情况