作者:admin于 2018年09月16日 发布在分类 / 产品相关 / 通讯模块 / 接入规范与标准 下,并于 2018年09月28日 编辑
    MIOC 标准接入协议 通讯模组与云端-红外宝V1.0

       345

       0


    一、建立与MIOC-TCP服务器的连接

    请先使用测试服地址完成接入测试,再修改为正式服地址

    测试服


    HOST mioto-service.imwork.net

    PORT 40252


    正式服

    HOST tcp.9iot.cn

    PORT 9995


    USERNAME 2yS992iUXqEvI0j8iGXa

    PASSWORD 1D6847E292C9440B848F7AE37C4A4B53


    CLIENT ID 请根据设备情况,写入设备全球唯一标识。一般为设备/WIFI 模块MAC地址。 16字节,不足末尾补零。



    二、指令说明。


    1)协议结构说明

    字段

    大小(byte)

    描述

    协议头

    version

    2

    版本号

    length

    2

    数据包大小

    header_crc

    2

    协议头校验码

    协议体

    body

    Length - 8

    数据体

    body_crc

    2

    数据体校验码










    Version : 版本号(公有协议 0001 开始,私有协议 0501开始)

    Length : 完整协议包大小

    Header_crc 协议头校验码。采用的多项式为CRC-16/CCITT16位循环校验码


    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

    设备




    2)设备与服务端建立连接之后,应首先发送设备认证数据包。以下为设备认证指令说明与实例:


    分类

    描述

    长度[字节]

    字段名

    数据样例

    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






    3)设备认证通过之后,应根据实际持续情况上报心跳包:

    此处应结合接入设备和上层应用的实际情况,合理选择心跳包上传频率及方案。一般情况下,如设备在接受云端指令之外的动作触发(如机械或者红外等方案),应即时通过心跳方式将当前状态上报上来。

    如设备某些参数时刻变化,如传感器类设备,则建议按一定时间间隔上报最新状态。


    分类

    描述

    长度[字节]

    字段名

    数据样例

    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




    4)云端接受各客户终端的控制请求,向设备发送控制指令:


    分类

    描述

    长度[字节]

    字段名

    数据样例

    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物联网开放平台
    文档编辑权限 创建者私有
    文档阅读权限 来自分类
    分类阅读权限 所有人
    分类编辑权限 所有人
    分类审核权限
    标签

    设备 类型 数据 协议 校验 校验码 header 控制 长度 描述
    历史版本

    修改日期 修改人 备注
    2018-09-28 18:10:33[当前版本] admin 完善协议
    2018-09-25 15:35:56 admin 格式调整
    2018-09-16 17:33:56 admin CREAT
    同类知识
    相关知识

    MIOTO WIKI-V3.2.0