一种嵌入式设备云服务接入方法及系统的制作方法_2

文档序号:9711466阅读:来源:国知局
>[0054]其中,所述接收终端通过MQTT协议发送的第一数据信息之前,包括:
[0055]根据所述设备发送的注册请求,对所述设备进行注册,并向所述设备发送登陆信息,所述设备根据所述登陆信息进行登陆;其中,所述注册请求及所述登陆信息通过HTTP或者HTTPS协议进行传输;
[0056]根据所述终端通过所述设备发送的绑定请求,将所述终端与所述设备进行绑定,并将绑定结果通过所述设备发送给所述终端;其中,所述绑定请求及所述绑定结果通过HTTP或者HTTPS协议进行传输。
[0057]具体的,参见图2及图3,本实施例提供的嵌入式设备云服务接入方法,在实现设备与终端通过云服务器进行数据交互之前,首先要完成设备的注册及设备与终端的绑定的过程。即嵌入式设备连接网络后,通过HTTP/HTTPS方式向服务器发送注册请求,注册请求包含本设备的身份验证信息,例如MAC地址、产品ID和产品密钥信息等,这里的产品ID是这产品的类型信息等。
[0058]具体的,设备向云服务器发送的注册请求可以为:
[0059]//REQUEST:POST
[0060]{
[0061 ] "productjcT: "xxxxxxxxxx",//产品 ID
[0062]"MAC": "c89346xxxxxx", //MAC地址
[0063]"secret—key": "xxxxxxxxxx",//产品密钥(md5(MAC+product_secret_key))
[0064]〃alias〃:〃〃,//产品别名(可选)
[0065]〃encrypt_method〃: 〃MD5〃//密钥加密方法(可选)
[0066]}
[0067]服务器返回设备ID/TOKEN:
[0068]//RESP0NSEE:
[0069]{
[0070]"device_id": "xxxxxxxxxx",//设备ID
[0071 ] 〃device_token": "xxxxxxxxxx"//设备token,操作凭证
[0072]}
[0073]当云服务器接收注册请求后,验证设备的合法性,并分配给嵌入式设备一个专有登陆信息,登陆信息至少包括设备ID和设备key,并将设备ID和设备key发送给嵌入式设备。
[0074]具体的,嵌入式设备接收到云服务器分配的登陆信息后,根据所述登陆信息登陆云服务器;其中,嵌入式设备登陆后,就可以通过云服务器进行数据的传输。并且嵌入式设备与云服务器中间的操作统一采用HTTP/HTTPS的方式进行数据交互,协议规范统一,便于设备端开发。
[0075]参见图3,当实现了设备的注册后,若用户想要与某个嵌入式设备进行数据传输,这时需要将用户的终端与嵌入式设备进行绑定。即当设备连接网络后,用户通过终端扫描附近的嵌入式设备,向指定的设备发送绑定请求,设备将该绑定请求、设备自身信息和绑定模式提交给云服务器进行绑定处理;服务器返回绑定结果给设备,最后设备将服务器返回的结果返回给终端,完成绑定过程。其中APP和设备之间通信方式不限定,开发者可自由定义。这里的绑定模式包括管理员模式、普通用户模式和云服务器自由分配模式。
[0076]具体的,嵌入式设备向服务器发送用户绑定请求数据为:
[0077]//REQUEST:POST
[0078]{
[0079]"product_id": "xxxxxxxxxx",//产品 ID
[0080]"user—icT: "xxxxxxxxxx", //APP发给设备的用户ID[0081 ] "MAC": "c89346xxxxxx", //MAC地址
[0082]〃secret_key": "xxxxxxxx"//产品密钥(md5(MAC+product_secret_key))
[0083]"bind_mode": "3",//绑定模式(1: owner, 2: share, 3:auto).
[0084]〃encrypt_method〃: 〃MD5〃//密钥加密方法(可选)
[0085]}
[0086]服务器返回绑定结果数据:
[0087]//RESP0NSEE:
[0088]{
[0089]〃result〃:〃处理结果"
[0090]}
[0091]具体的,当用户的终端与设备成功绑定后,用户和设备之间就可以通过云服务器实现数据的交互。并且设备和云服务器、终端和云服务器之间采用MQTT消息协议通信。MQTT协议由IBM公司开发的一个基于发布/订阅消息模型的即时通信协议,专门针对计算能力有限、工作在低带宽、不可靠网络中的设备而设计,十分适合嵌入式物联网设备的应用需求。
[0092]具体的,设备MQTT连接服务器参数:
[0093]Client-1D:[MAC]//(必须填写,而且只能是0?9a?zA?Z组成,不允许有下划线,横线,冒号等其他字符)可以是设备的MAC地址(如果是mac地址,必须是12位/17位)或者自定义(测试时用,随便写的)。
[0094]Username:设备ID//必须填写,设备注册后获取的device_id
[0095]Password:MD5(产品seeret_key+timestamp), timestamp//必须填写,设备产品key加上时间戳组成的字符串的MD5值
[0096]S102、根据所述目标设备标识,确定与所述目标设备标识相对应的设备输入通道;
[0097]其中,所述接收终端通过MQTT协议发送的第一数据信息之前,包括:
[0098]所述终端订阅与所述终端相对应的设备输出通道,所述设备订阅与所述设备相对应的设备输入通道。
[0099]具体的,参见图4,基于MQTT的消息通道模型,嵌入式设备需订阅devicejd/in/#通道,即设备输入通道,接收终端通过此通道向嵌入式设备发送的消息;设备发布消息到(16¥;^6_1(1/0111:/#通道,即可发送消息;终端需订阅(16¥;^6_1(1/0111:/#通道,即设备输出通道,接收嵌入式设备通过此通道发送的消息,其中#表示任意子通道。
[0100]具体的,在本实施例中,并不限定与设备绑定的终端的数量,也不限定与终端绑定的设备的数量,所以终端向设备发送数据时,需要确定目标设备的标识,从而使云服务器准确的将数据发送至与目标设备相对应的专属通道;同理,在设备向终端发送数据时,也需要确定终端的标识,从而使云服务器准确的将数据发送至终端,具体设备向终端发送数据的流程详见下一实施例。
[0101]S103、通过MQTT协议及与所述目标设备标识相对应的设备输入通道,将所述第一待发送数据转发至目标设备。
[0102]本发明实施例公开了一种具体的嵌入式设备云服务接入方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:
[0103]参见图5,在将所述第一待发送数据转发至目标设备之后,还包括:
[0104]S201、接收目标设备通过MQTT协议发送的第二数据信息;其中,所述第二数据信息中包括第二待发送数据和终端标识;
[0105]S202、根据所述终端标识,确定与所述终端标识相对应的设备输出通道;
[0106]S203、通过MQTT协议及所述设备输出通道,将所述第二待发送数据转发至终端。
[0107]具体的,在本实施例中对设备向终端发送数据的流程进行描述,这里设备向终端发送数据信息可以是在终端向设备发送数据后,设备向终端发送的响应信息,也可以是设备以预定时间为间隔,向终端推送的数据。
[0108]基于上述技术方案,本方法还包括:
[0109]接收所述设备发送的注销请求,并根据所述注销请求注销所述嵌入式设备的设备
?目息。
[0110]具体的,在本实施例中,如果需要重置已注册的设备所有信息、或者彻底删除设备信息,只需要从设备上向云端发送注销请求即可。
[0111]本发明实施例提供的一种嵌入式设备云服务接入方法,包括:接收终端通过MQTT协议发送的第一数据信息;其中,所述第一数据信息包括第一待发送数据和目标设备标识;根据所述目标设备标识,确定与所述目标设备标识相对应的设备输入通道;通过MQTT协议及与所述目标设备标识相对应的设备输入通道,将所述第一待发送数据转发至目标设备,可见,在本实施例中,设备与终端的身份信息及权限关系全部由云端管理,不仅实现了设备快速且便捷的接入云服务器,还能实现设备与终端的数据传输,并且设备无需记录用户信
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1