绿米网关局域网通讯协议V10.7.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
绿米网关局域网通讯协议V10.7.doc

绿米网关局域网通讯协议V1.0.7 网关设备发现(设备发现不加密) 设备发现用来在局域网中发现网关,使用组播(ip: 0, peer_port: 4321)。 所有网关收到Whois命令都要应答、回复自己的IP信息。 PC 组播方式 -网关: {cmd:whois} 网关 单播方式-PC: {cmd:iam,ip : 2,port : 9898,model : gateway,.....} 2.加密机制 局域网通信采用key加密方式,需要在米家智能家庭APP上对网关设置KEY(使用AES-CBC 128 加密,app下发随机的16个字节长度的字符串KEY)。必须拥有该网关的KEY,才能与该网关进行局域网通信。 注: AES-CBC 128 初始向量定义为: unsigned char const AES_KEY_IV[16] = {0x17, 0x99, 0x6d, 0x09, 0x3d, 0x28, 0xdd, 0xb3, 0xba, 0x69, 0x5a, 0x2e, 0x6f, 0x58, 0x56, 0x2e}; 在米家智能家庭app中设置KEY的步骤如下: 查询子设备id列表 命令以单播方式发送给网关的udp 9898端口,网关以单播方式回复,用来获取网关中有哪些设备(网关返回子设备的设备id)。 PC-网关: {cmd : get_id_list} 网关-PC: {cmd : get_id_list_ack,sid:1022780,data:[\sid1\,\sid2\,\sid3\]},其中的“sid”为网关did。 4.子设备状态上报 以组播方式发送给 (ip: 0, port: 9898)。当子设备状态发生变化时,子设备会上报状态。例如窗磁上报open/close信息。用户可以拿这个状态去做联动。例如:开窗报警,开窗关空调 网关-PC: {cmd:report,model:magnet,sidshort_id:4343,data:{\status\:\open\} } 5. 读设备 命令以单播方式发送给网关的udp 9898端口。用户可以主动读取墙壁开关,插座的属性状态,网关返回设备的全部属性信息。 读取墙壁开关的状态: {cmd:read,sid:158d0000123456} 网关以单播方式回复格式: {cmd:read_ack,model:ctrl_neutral2,sid:158d0000123456,short_id:4343,data:{\channel_0\:\on\,\channel_1\:\off\}} 读取网关的状态: {cmd:read,sid:1022780} 网关以单播方式回复格式: {cmd:read_ack,model:gateway,sid:1022780,short_id:0,data:{\rgb\:0,\illumination\:350,\proto_version\:\1.0.6\}}, 其中,rgb是网关夜灯的颜色值,illumination是光照度,proto_version是网关所用的本通信协议的版本号。 6. 写设备 命令以单播方式发送给网关的udp 9898端口。当用户需要控制墙壁开关,插座等设备时使用write命令。 {cmd:write,model:ctrl_neutral1,sid:158d0000123456,short_id:4343,data:{\channel_0\:\on\,\key\:\3EB43E37C20AFF4C5872CC0D04D81314\} } 网关以单播方式回复格式: {cmd:write_ack,model:ctrl_neutral2,sid:158d0000123456,short_id:4343,data:{\channel_0\:\on\,\channel_1\:\off\}} ,该write_ack只是代表网关收到了write命令,data里的属性状态为当前的设备最新状态,不是write之后的最终设备状态。最终的设备状态靠report报文进行上报。 注: 其中的“key”为32个字节长度的字符串。当网关启用了加密模式时,会对该key进行解密并校验,以验证写命令的合法性。该“key”的生成规则是:用户收到“heartbeat”里的16个字节的“token”字符串之后,使用网关的KEY(在米家智能家庭app里设置的KEY)对该字符串进行AES-CBC 128加密,生成16个字节的密文后,再转换为32个字节的ASCII码字符串。 比如:用户在米家智能家庭app中配置16个字符长度的

文档评论(0)

wendang_12 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档