当前位置:首页 > EDP协议 - 图文
长0xFFFF。
字符串详细格式如下: 7 6 字节\\bit Byte 1 Byte 2 0-mulit bytes 5 4 3 长度高位字节 长度低位字节 2 1 0 0或多个字节的内容,最长0xFFFF字节 4.4 消息体
根据消息类型,消息体可选,详见后面命令类型说明。
5 消息类型
5.1 连接请求
连接请求包含三部分:消息头,一些选项和消息体。其中,选项包括协议名称、协议版
本、连接标志、保持连接时间。
消息体中可能包含设备ID、产品ID(可选)、鉴权信息。三项内容都为长度+内容的字符串格式。设备ID必须传递,若认证方式中不使用设备ID,应将设备ID长度设置为0;产品ID和鉴权信息,根据标志位若存在必须按顺序出现。 产品ID获取方式 设备ID获取方式 api-key获取方式 可选的登录认证方式: 登陆认携带信息 证方式 1 说明 消息示例 在OneNet添加产品时,平台生成产品ID。 在OneNet平台创建设备时平台生成的设备ID号。 在OneNet注册的产品,管理整个产品的api-key,或者用于自己新增具有该设备操作权限的api-key 设备ID + 鉴权设备ID:申请设备时平台返回的ID; 消息格式见示例1 信息(api-key) 鉴权信息:在平台申请的可以操作该设备的api-key字符串; 产品ID + 鉴权产品ID:在平台添加产品时平台生成消息格式见示例2 信息(auth_info) 的ID; 鉴权信息:在平台申请设备时填写设备的auth_info属性(json对象字符串),该属性需要产品内具备唯一性; 2 示例1:采用登陆方式1:设备ID“43101”和api-key“abcdefg”,登录平台的连接
请求消息格式如下: 字节 消息头 Byte 1
说明\\bit 第一字节: 5 / 26
7 0 6 0 5 0 4 1 3 0 2 0 1 0 0 0 Bit(4-7):消息类型,值为1; Bit(0-3):保留位,值为0; 变长剩余消息长度(25编码后需要占用1个字节) Byte 2 第二字节: 消息剩余字节长度,值为25 长度高位字节,值为0 长度低位字节,值为3 字母’E’ 字母’D’ 字母’P’ 一个字节表示,值为1 0 0 0 1 1 0 0 1 选项1:协议描述(字符串格式) Byte 3 Byte 4 Byte 5 Byte 6 Byte 7 Byte 8 0 0 0 0 0 0 0 0 1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 0 0 0 0 0 0 1 1 0 0 1 0 选项2:协议版本 选项3:连接标志 Byte 9 0 Bit(7):产品ID标志位,值0, Bit(6):鉴权信息标志位,值1,表示后面消息体有该项 Bit(0-5):系统保留位,填0 选项4:保持连接时间(256秒=0x0100) Byte 10 Byte 11 第一字节,时间值的高位字节,值1 第二字节,时间值的低位字节,值0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 0 0 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 1 1 1 1 0 0 0 0 0 1 0 0 0 0 1 0 1 1 0 0 1 1 1 0 0 1 0 1 1 0 1 0 1 1 0 1 0 1 0 1 消息体-设备ID(字符串格式) Byte 12 长度高位字节,值为0 Byte 13 Byte 14 Byte 15 Byte 16 Byte 17 Byte 18 Byte 19 Byte 20 Byte 21 Byte 22 Byte 23 Byte 24 Byte 25 Byte 26 Byte 27 长度低位字节,值为5 字符’4’ 字符’3’ 字符’1’ 字符’0’ 字符’1’ 长度高位字节,值为0 长度低位字节,值为7 字符’a’ 字符’b’ 字符’c’ 字符’d’ 字符’e’ 字符’f’ 字符’g’ 消息体-鉴权信息(字符串格式) 示例2:采用登陆方式2:产品ID“101”和鉴权信息“{“mac”:“FF”}”,登录平台的
连接请求消息格式如下:
6 / 26
字节 消息头 Byte 1 说明\\bit 第一字节: Bit(4-7):消息类型,值为1; Bit(0-3):保留位,值为0; 第二字节: 消息剩余字节长度,值为30 7 0 6 0 5 0 4 1 3 0 2 0 1 0 0 0 变长剩余消息长度(25编码后需要占用1个字节) Byte 2 0 0 0 1 1 1 1 0 选项1:协议描述(字符串格式) Byte 3 长度高位字节,值为0 Byte 4 Byte 5 Byte 6 Byte 7 长度低位字节,值为3 字母’E’ 字母’D’ 字母’P’ 0 0 0 0 0 0 1 0 0 1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 0 0 0 0 0 0 1 1 0 0 1 0 选项2:协议版本 Byte 8 一个字节表示,值为1 选项3:连接标志 Byte 9 Bit(7):产品ID标志位,值1,表示后面消息体有该项 Bit(6):鉴权信息标志位,值1,表示后面消息体有该项 Bit(0-5):系统保留位,填0 选项4:保持连接时间(256秒=0x0100) Byte 10 第一字节,时间值的高位字节,值1 Byte 11 Byte 12 Byte 13 第二字节,时间值的低位字节,值0 长度高位字节,值为0 长度低位字节,值为0 消息体-设备ID(字符串格式) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 1 0 0 0 0 0 0 0 0 1 1 1 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 1 1 0 0 1 1 1 1 0 0 0 0 1 1 0 1 0 1 1 0 1 1 1 0 0 消息体-产品ID(字符串格式) Byte 14 长度高位字节,值为0 Byte 15 Byte 16 Byte 17 Byte 18 Byte 19 Byte 20 Byte 21 Byte 22 Byte 23 Byte 24 Byte 25 Byte 26 Byte 27
长度低位字节,值为3 字符’1’ 字符’0’ 字符’1’ 长度高位字节,值为0 长度低位字节,值为9 字符’{’ 字符’”’ 字符’m’ 字符’a’ 字符’c’ 字符’”’ 字符’:’ 7 / 26
消息体-鉴权信息(字符串格式) Byte 28 Byte 29 Byte 30 Byte 31 Byte 32
字符’”’ 字符’F’ 字符’F’ 字符’”’ 字符’}’ 0 0 0 0 0 0 1 1 0 1 1 0 0 1 1 0 0 0 0 1 0 0 0 0 1 0 1 1 0 1 1 1 1 1 0 0 0 0 0 1 5.2 连接响应
连接响应报文包含:消息头,2个必选项和可能的消息体。其中,选项包括一个字节的响应标志和一个字节的返回码选项;消息体根据授权码标志位,可能携带平台返回的授权码。
举例格式如下: 1.连接成功无授权码 字节 消息头 Byte 1 第一字节: Bit(4-7):消息类型,值为2; Bit(0-3):保留位,值为0; 第二字节: 消息剩余字节长度,值为2 Bit(1-4):系统保留位 Bit(0):授权码标志位,值1,表示后面消息体携带有授权码 0 0 1 0 0 0 0 0 说明\\bit 7 6 5 4 3 2 1 0 Byte 2 0 0 0 0 0 0 1 0 选项1:选项-标志 Byte 3 0 0 0 0 0 0 0 0 选项2:选项-返回码 Byte 4 一个字节表示,根据验证情况,枚举值如下: 0:连接成功; 1:验证失败-协议错误; 2:验证失败-设备ID鉴权失败; 3:验证失败-服务器失败; 4:验证失败-产品ID鉴权失败; 5:验证失败-未授权; 6:验证失败-授权码无效; 7:激活失败-激活码未分配; 8:激活失败-该设备已被激活; 9:验证失败-重复发送连接请求包; 10-255:保留值; 2.连接成功有授权码,授权码为abcd 字节 消息头 Byte 1
0 0 0 0 0 0 0 0 说明\\bit 第一字节: 8 / 26
7 0 6 0 5 1 4 0 3 0 2 0 1 0 0 0
共分享92篇相关文档