请先使用测试服地址完成接入测试,再修改为正式服地址
测试服
HOST : mioto-service.imwork.net
PORT : 40252
正式服
HOST : tcp.9iot.cn
PORT : 9995
USERNAME : 2yS992iUXqEvI0j8iGXa
PASSWORD : 1D6847E292C9440B848F7AE37C4A4B53
CLIENT ID : 请根据设备情况,写入设备全球唯一标识。一般为设备/WIFI 模块MAC地址。 16字节,不足末尾补零。
字段 |
大小(byte) |
描述 |
|
协议头 |
version |
2 |
版本号 |
length |
2 |
数据包大小 |
|
header_crc |
2 |
协议头校验码 |
|
协议体 |
body |
Length - 8 |
数据体 |
body_crc |
2 |
数据体校验码 |
Version : 版本号(公有协议 0001 开始,私有协议 0501开始)
Length : 完整协议包大小
Header_crc : 协议头校验码。采用的多项式为CRC-16/CCITT的16位循环校验码
Body : 数据体,以下为数据体结构定义
字段 |
大小(byte) |
描述 |
PackageType |
1 |
协议包类型 |
Command |
2 |
应用命令字 |
Data |
不定长 |
数据 |
PackageType :协议包类型,用于应用层消息逻辑处理方式。以下为协议包类型值约定:
字节值 |
描述 |
0x00 |
Message,无需回复协议包类型 |
0x01 |
Get,需回复协议包类型,用于请求获取数据回复 |
0x02 |
Set,需回复协议包类型,用于设置数据需返回设置成功与否 |
0x03 |
Result,无需回复协议包类型,用于set/get类型正确回复包,序列号与set和get包相同 |
0x04 |
Error,无需回复协议包类型,用于set/get类型错误回复包,序列号与set和get包相同 |
Command : 应用命令字,以下为值约定:
数据包类型 |
command |
source数据来源 |
设备登录认证 |
0x0001 |
设备 |
设备数据上传 |
0x0002 |
设备 |
发送设备控制指令 |
0x0003 |
Server |
时间同步 |
0x0004 |
Server |
心跳包 |
0xFFFF |
设备 |
分类 |
描述 |
长度[字节] |
字段名 |
数据样例 |
Header |
2 |
VERSION/版本 |
0001 |
|
2 |
LENGTH/长度 |
0000 |
||
2 |
Header_CRC/头部校验码 |
0000 |
||
PayLoad |
1 |
PackgeType / 协议包类型 |
01 |
|
2 |
Command / 数据包类型 |
0001 |
||
|
|
16 | MAC ADDRESS /设备标识 |
00000000000000010000(不足末尾补零) |
|
|
20 |
USERNAME / 用户名对应APPID |
[BG73ivJHX6OFxxxxXXXX] ASCII |
|
|
16 |
PASSWORD / 密码对应PRODUCT_ID |
5D31FF4CA98943E9955A025C9CAC23F3 |
1 |
Device Type / 设备类型 |
33 |
||
2 |
PayLoad_CRC / 数据体校验码 |
0000 |
RES:
分类 |
描述 |
长度 |
字段名 |
数据样例 |
||
Header |
|
2 |
version |
0001 |
||
2 |
length |
0000 |
||||
2 |
header_crc |
0000 |
||||
Payload |
Defination |
1 |
PackageTypeee |
03 |
||
2 |
Command |
0001 |
||||
Date |
|
1 |
RES |
00(成功) 01(认证失败) |
||
Tail |
2 |
CRC |
0000 |
设备(Device Type)类型说明:
设备 |
标识(1byte) |
红外宝 |
0x33 |
此处应结合接入设备和上层应用的实际情况,合理选择心跳包上传频率及方案。一般情况下,如设备在接受云端指令之外的动作触发(如机械或者红外等方案),应即时通过心跳方式将当前状态上报上来。
如设备某些参数时刻变化,如传感器类设备,则建议按一定时间间隔上报最新状态。
分类 |
描述 |
长度[字节] |
字段名 |
数据样例 |
Header |
2 |
VERSION/版本 |
0001 |
|
2 |
LENGTH/长度 |
0000 |
||
2 |
Header_CRC/头部校验码 |
0000 |
||
PayLoad |
1 |
PackgeType / 协议包类型 |
00 |
|
2 |
Command / 数据包类型 |
FFFF |
||
1 |
Device Type / 设备类型 |
0x33 |
||
不定长 |
结合实际情况,一般可将设备当前状态值上报上来,若无则为空 |
0000 |
||
2 |
PayLoad_CRC / 数据体校验码 |
0000 |
1、设备上电入网,认证通过,立即发送至少一次心跳
2、设备状态改变(包括且不限于,MIOC系统控制/外界条件触发/传统渠道如遥控、功能按钮),立即发送至少一次
3、一定时间间隔,如60s
分类 |
描述 |
长度[字节] |
字段名 |
数据样例 |
Header |
2 |
VERSION/版本 |
0001 |
|
2 |
LENGTH/长度 |
0000 |
||
2 |
Header_CRC/头部校验码 |
0000 |
||
PayLoad |
1 |
PackgeType / 协议包类型 |
02 |
|
2 |
Command / 数据包类型 |
0003 |
||
1 |
Device Type / 受控设备类型 |
单品类型:02 |
||
|
|
16 | Suite ID / 套件标识 |
00000000000000000000000000000000 |
|
|
1 | Control Type / 控制类型 | 14 |
12 |
Control Value / 控制设值 |
00 00 00 00 00 00 00 00 00 00 00 00 |
||
2 |
PayLoad_CRC / 数据体校验码 |
0000 |
设备应反馈控制结果:
分类 |
描述 |
长度[字节] |
字段名 |
数据样例 |
Header |
2 |
VERSION/版本 |
0001 |
|
2 |
LENGTH/长度 |
0000 |
||
2 |
Header_CRC/头部校验码 |
0000 |
||
PayLoad |
1 |
PackgeType / 协议包类型 |
03 |
|
2 |
Command / 数据包类型 |
0002 |
||
1 |
Control Type / 控制类型 |
01 |
||
1 |
Control Value / 控制设值 |
00 |
||
1 |
RESULT / 控制结果 |
00[SUCCESS] 0X[FAILD] |
||
2 |
PayLoad_CRC / 数据体校验码 |
0000 |
创建人 | admin |
工作小组 | MIOC物联网开放平台 |
文档编辑权限 | 创建者私有 |
文档阅读权限 | 来自分类 |
分类阅读权限 | 所有人 |
分类编辑权限 | 所有人 |
分类审核权限 | 无 |
修改日期 | 修改人 | 备注 |
2018-09-28 18:10:33[当前版本] | admin | 完善协议 |
2018-09-25 15:35:56 | admin | 格式调整 |
2018-09-16 17:33:56 | admin | CREAT |