物联网设备与控制器智能绑定的实现方法及系统
技术领域
本发明涉及一种物联网设备与控制器智能绑定的实现方法及系统。
背景技术
物联网环境中,如果要对物联网设备进行控制,往往需要确定和建立物联网设备(受控端)、控制器(控制端)和用户(控制主体)三方之间的绑定关系。通常,一个物联网设备需要接受多个控制器和多个用户的控制;一个用户可以在一个或多个控制器上登录;一个用户或者一个控制器则可以控制多个物联网设备。用户与物联网设备的绑定涉及到用户的操作权限和优先级;控制器与物联网设备的绑定(即匿名绑定)涉及到控制器的控制范围和控制时机;用户与控制器的绑定(即用户在控制器上登录)涉及到安全性和多重登录等问题。因此,物联网系统中设备与用户的绑定问题是关系到安全、功能和用户体验的一个基本问题。
以下列举几个控制器与物联网设备的绑定的相关技术:
1、控制器与物联网设备的绑定技术,例如:《一种可调控按键开关系统及其控制、绑定方法》申请号:CN201510407969.5。一种可调控按键开关系统,包括:若干控制模块,且每个所述控制模块均固定连接有至少一个开关,用以接收所述开关发出的动作信号,控制与所述动作信号具有绑定关系的电器产生对应动作;云存储模块,存储有所述绑定关系,且所述云存储模块分别与每个所述控制模块连接,用以接收所述控制模块转发来的所述动作信号并根据所述动作信号生成执行命令信号;以及所述控制模块接收所述执行命令信号,控制与所述动作信号具有所述绑定关系的电器产生对应动作。
这类方法属于物理控制器与物联网设备的控制前向绑定技术,局限性在于:
没有用户的概念,造成任何人使用控制器的效果都一样
必须事先完成设备绑定才能进行对设备进行控制,操作较复杂,无法实现即插即用
2、控制器与物联网设备的反向绑定技术,例如:《一种基于按键开关的反向绑定装置及其实现方法》申请号:CN201310573661.9。一种基于按键开关的反向绑定装置及其实现方法,包括电子电路、按键开关绑定设置器、按键开关和控制终端四部分,当业务逻辑模块接收到来自按键开关绑定设置器的对控制终端某个设备的开关绑定信号后,电子电路进入开关检测绑定状态,在开关检测绑定状态有效时间内,按键动作检测模块如果检测到按键开关的某个开关有动作,业务逻辑模块会将该开关和待绑定的设备进行关系对应,并将此对应关系写入电子电路的数据存储模块,通过通信模块向按键开关绑定设置器发送开关绑定情况的反馈信号,开关绑定过程结束。
这类方法属于物理控制器与物联网设备的控制反向绑定技术,局限性在于:
没有用户的概念,造成任何人使用控制器的效果都一样
解绑过程较繁琐
3、控制器与物联网设备的动态绑定技术,例如:《移动物联网动态绑定控制系统及方法》(申请号:CN201210155854.8)。一种移动物联网动态绑定控制系统,其特征在于,包括:一中央控制器;一具有拍照功能的客户端,与所述中央控制器通信连接;一智能装置,与所述中央控制器通信连接;其中,所述中央控制器设置动态绑定信息并显示在所述智能装置上,所述客户端通过拍照获取所述动态绑定信息并将其发送至所述中央控制器,建立控制链路。
这类方法局限性在于:
绑定特征码在物联网设备上显示,有安全隐患
特征码没有用户属性,造成任何人输入特征码的效果都一样
4、用户与物联网设备的绑定技术,例如:《一种物联网系统中终端接入认证的方法及装置》(申请号:CN201310231570.7)。物联网管理平台获得通信网络中设置的位置存储设备发来的通过网络注册的物联网终端的设备标识和设置在物联网终端中的用户识别卡标识;判断所述物联网终端是否定制有设备标识和用户识别卡标识的绑定业务;在判断结果为是时,确定获得的用户识别卡标识和设备标识是否与预先存储的用户识别卡标识和设备标识绑定关系一致;在确定出获得的用户识别卡标识和设备标识与预先存储的用户识别卡标识和设备标识绑定关系一致时,发送绑定关系正确响应消息,指示所述物联网终端接入网络进行业务处理。
5、《控制器与物联网设备绑定、通信的实现方法和装置》(CN201410608750.7)。一种控制器与物联网设备绑定的实现方法,包括:控制器获取搜索支持约定协议的设备的指令;在局域网内搜索得到支持约定协议的设备的物理标识码;请求物联网平台注册得到设备用于登录物联网平台的设备账号和设备密码;将设备账号和设备密码发送给对应的设备,以供设备登录物联网平台时使用;向物联网平台发送包含设备账号和本机登录物联网平台所用的用户账号的设备绑定请求,使得以用户账号登录物联网平台的控制器与以设备账号登录物联网平台的设备可经由物联网平台进行通信。上述方法为实现控制器与设备之间通信提供了基础。此外,还提供一种控制器与物联网设备绑定的实现装置以及二者通信的实现方法和装置。
这类方法属于用户帐号(或标识)与物联网设备的控制前向绑定技术,局限性在于:
没有控制器的概念,要求必须获得用户标识或用户帐号才能进行绑定
绑定过程需要向物联网物联网设备发送密码,存在安全隐患
现有技术对此问题:片面性:现有技术主要解决两方绑定问题,仅考虑控制器和物联网设备的绑定,或者仅考虑用户和物联网设备的绑定;
安全隐患:向物联网设备发送密码,或者在物联网设备上显示绑定特征码的做法都不安全;
对多用户、多控制器的使用场景支持不足;
用户体验差:无法做到即插即用。
有鉴于上述的缺陷,本设计人积极加以研究创新,以期创设一种物联网设备与控制器智能绑定的实现方法及系统,使其更具有产业上的利用价值。
发明内容
为解决上述技术问题,本发明的目的是提供一种能够充分多用户、多控制器的场景,支持用户将绑定复制到或转移给其他用户,支持用户为新用户快速建立绑定的物联网设备与控制器智能绑定的实现方法及系统。
本发明物联网设备与控制器智能绑定的实现方法,包括:
匿名绑定:包括物联网设备为初始状态,物联网设备与唯一控制器建立匿名绑定,其中该唯一控制器为主控制器,其他控制器为子控制器;
用户静态绑定:包括在云平台上注册用户账号,用户账号在主控制器上登录,该用户账号验证通过,物联网设备与该用户账号建立用户静态绑定,其中第一个与主控制器完成用户静态绑定的用户账号为物联网设备的主用户账号,其他用户账户为普通用户账号;
用户动态绑定:包括主用户账号在子控制器上登录,云平台向该子控制器下发物联网设备列表,子控制器与物联网设备进行用户动态绑定;
用户授权绑定:包括系统管理员账号或主用户账号登录云平台,在云平台上授权某些用户账号与其权限内的物联网设备或设备组进行绑定,被授权的用户账号登录子控制器时云平台下发该用户已授权的物联网设备列表,完成用户账号与物联网设备或物联网设备组的用户授权绑定;和/或
用户申请绑定:包括主用户账号登录云平台,通过云平台生成绑定二维码,用户账户登录子控制器识别绑定二维码,子控制器与物联网设备进行用户邀请绑定。
进一步地,所述匿名绑定具体包括:对物联网设备进行复位,使物联网设备处于初始状态,在限定的时间周期内,建立物联网设备与主控器的通讯连接关系,通过物联网设备记录主控器的唯一标示,主控制器记录物联网设备唯一标示,完成主控制器与物联网设备的匿名绑定。
进一步地,用户申请绑定过程中生成的绑定二维码的属性包括:指定用户账号或不指定用户账号、有效次数为单次或多次、有效期、复制绑定关系或转移绑定关系、物联网设备列表;
其中,指定用户的绑定二维码只对指定的用户账号有效,不指定用户的绑定二维码对所有用户账号有效;
单次有效绑定二维码被使用一次后即时效;
如果主用户为绑定二维码设定了有效期,则超过有效期无论是否使用过,该二维码即失效;
如果绑定二维码设定为复制绑定关系,则成功使用此二维码的用户会获得与主用户账号相同的物联网设备列表;
如果绑定二维码设定为转移绑定关系,则成功使用此二维码的用户账号会获得与主用户账号相同的物联网设备列表,同时成为新的主用户账号,原主用户账号则变为普通用户账号,主用户账号选择部分或全部物联网设备生成绑定二维码。
进一步地,还包括普通用户账号登录主控器或云平台解除该普通用户账号与物联网设备或物联网设备组的绑定;主用户账号或系统管理员账号登录云平台解除所辖区用户账号与物联网设备或设备组的绑定。
进一步地,物联网设备初始化过程具体包括:
对物联网设备进行复位操作;
确定在预定时间周期内控制器与物联网设备是否匿名绑定成功,
若不成功或绑定超时,则物联网设备恢复正常工作状态;
若成功,则原有绑定失效,记录该绑定至云平台,用户静态绑定;
云平台判断新绑定的用户是否是原有绑定用户,
如果不是,则解除所有原有用户对此物联网设备的绑定;
如果是,则恢复原有绑定或让用户选择是否恢复原有绑定,并将此次完成用户静态绑定的帐号设置为主用户。
进一步地,所述的限定时间周期为1分钟至5分钟。
本发明物联网设备与控制器智能绑定的实现系统,包括:物联网设备、控制器、云平台,其中:
所述物联网设备复位为初始状态,物联网设备与唯一控制器建立匿名绑定,其中该唯一控制器为主控制器,其他控制器为子控制器;
用户在云平台上注册用户账号,用户利用用户账号在主控制器上登录,用户账号验证通过,物联网设备与该用户账号建立用户静态绑定,其中第一个与主控制器完成用户静态绑定的用户账号为物联网设备的主用户账号,其他用户账户为普通用户账号;
用户利用主用户账号在子控制器上登录,云平台向该子控制器下发物联网设备列表,子控制器与物联网设备进行用户动态绑定;
用户利用系统管理员账号或主用户账号登录云平台,在云平台上授权某些用户账号与其权限内的物联网设备或设备组进行绑定,被授权的用户账号登录子控制器时云平台下发该用户已授权的物联网设备列表,完成用户账号与物联网设备或物联网设备组的用户授权绑定;
用户利用主用户账号登录云平台,通过云平台生成绑定二维码,用户利用普通用户账户登录子控制器识别绑定二维码,子控制器与物联网设备进行用户邀请绑定。
进一步地,所述物联网设备、控制器均包括匿名绑定模块,所述物联网设备的匿名绑定模块,用户获取控制器的唯一标示;所述控制器的匿名绑定模块,用于获取物联网设备的唯一标示;物联网设备、控制器分别成功获取对方的唯一标示,也即完成主控制器与物联网设备的匿名绑定。
进一步地,云平台包括绑定二位码生成模块,用于根据用户指令生成相应属性的绑定二维码,其中绑定二维码的属性包括:指定用户账号或不指定用户账号、有效次数为单次或多次、有效期、复制绑定关系或转移绑定关系、物联网设备列表;
其中,指定用户的绑定二维码只对指定的用户账号有效,不指定用户的绑定二维码对所有用户账号有效;
单次有效绑定二维码被使用一次后即时效;
如果主用户为绑定二维码设定了有效期,则超过有效期无论是否使用过,该二维码即失效;
如果绑定二维码设定为复制绑定关系,则成功使用此二维码的用户会获得与主用户账号相同的物联网设备列表;
如果绑定二维码设定为转移绑定关系,则成功使用此二维码的用户账号会获得与主用户账号相同的物联网设备列表,同时成为新的主用户账号,原主用户账号则变为普通用户账号,主用户账号选择部分或全部物联网设备生成绑定二维码。
进一步地,所述云平台还包括:用户账户注册/解除模块,用于普通用户进行用户账户的注册和解除,以及主用户账号或系统管理员账号所辖区用户账号与物联网设备或设备组绑定的解除。
借由上述方案,本发明至少具有以下优点:
该发明一种方法能够同时处理控制器、用户与物联网设备的三方绑定关系;
该方法涉及物联网平台、物联网设备、控制器和用户,具有广泛的通用性;
该方法不需要向物联网设备发送密码,也不需要在物联网设备上显示绑定特征码,更加安全;
该方法支持物联网设备的即插即用,用户体验更好;
该方法能够充分多用户、多控制器的场景,支持用户将绑定复制到或转移给其他用户;支持用户为新用户快速建立绑定。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,并可依照说明书的内容予以实施,以下以本发明的较佳实施例并配合附图详细说明如后。
附图说明
图1是本发明物联网设备与控制器智能绑定的实现方法及系统不同绑定的结构示意图;
图2是本发明物联网设备与控制器智能绑定的实现方法及系统的终端涉设备的初始化流程图。
实施方式
下面结合附图和实施例,对本发明的实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
本发明物联网设备与控制器智能绑定的实现方法及系统,物联网设备可以接受一个或多个控制器,以及一个或多个用户的控制;一个用户可以在一个或多个控制器上登录;一个用户或者一个控制器则可以控制一个或多个物联网设备。绑定信息保存在云平台数据库中。
特定情况下用户无需登录、也无需输入任何参数,就可以使用控制器直接操控物联网设备。控制器匿名绑定在物联网设备初始化时进行,控制器与物联网设备在同一个无线网络中,该网络包括蓝牙、本地Wi-Fi、Zig-Bee或者RF2.4G等。完成控制器匿名绑定后,控制器可以在本地,也可以远程对物联网设备进行操控。
实施例1
本实施例物联网设备与控制器智能绑定的实现方法,包括:
匿名绑定:包括物联网设备为初始状态,物联网设备与唯一控制器建立匿名绑定,其中该唯一控制器为主控制器,其他控制器为子控制器;
用户静态绑定:包括在云平台上注册用户账号,用户账号在主控制器上登录,该用户账号验证通过,物联网设备与该用户账号建立用户静态绑定,其中第一个与主控制器完成用户静态绑定的用户账号为物联网设备的主用户账号,其他用户账户为普通用户账号;
用户动态绑定:包括主用户账号在子控制器上登录,云平台向该子控制器下发物联网设备列表,子控制器与物联网设备进行用户动态绑定;
用户授权绑定:包括系统管理员账号或主用户账号登录云平台,在云平台上授权某些用户账号与其权限内的物联网设备或设备组进行绑定,被授权的用户账号登录子控制器时云平台下发该用户已授权的物联网设备列表,完成用户账号与物联网设备或物联网设备组的用户授权绑定;和/或
用户申请绑定:包括主用户账号登录云平台,通过云平台生成绑定二维码,用户账户登录子控制器识别绑定二维码,子控制器与物联网设备进行用户邀请绑定。
进一步地,本实施例中,所述匿名绑定具体包括:对物联网设备进行复位,使物联网设备处于初始状态,在限定的时间周期内,建立物联网设备与主控器的通讯连接关系,通过物联网设备记录主控器的唯一标示,主控制器记录物联网设备唯一标示,完成主控制器与物联网设备的匿名绑定。
进一步地,用户申请绑定过程中生成的绑定二维码的属性包括:指定用户账号或不指定用户账号、有效次数为单次或多次、有效期、复制绑定关系或转移绑定关系、物联网设备列表;
其中,指定用户的绑定二维码只对指定的用户账号有效,不指定用户的绑定二维码对所有用户账号有效;
单次有效绑定二维码被使用一次后即时效;
如果主用户为绑定二维码设定了有效期,则超过有效期无论是否使用过,该二维码即失效;
如果绑定二维码设定为复制绑定关系,则成功使用此二维码的用户会获得与主用户账号相同的物联网设备列表;
如果绑定二维码设定为转移绑定关系,则成功使用此二维码的用户账号会获得与主用户账号相同的物联网设备列表,同时成为新的主用户账号,原主用户账号则变为普通用户账号,主用户账号选择部分或全部物联网设备生成绑定二维码。
实施例2
本实施例物联网设备与控制器智能绑定的实现方法,在实施例1的基础上,主要描述了与物联网设备绑定的控制器是如何获取物联网设备的日志的。
本实施例综合利用物联网的有限资源,在确保资源满足其他高优先级操作的前提下,有效地记录和传输物联网设备日志,所述方法具体包括:
获取日志记录请求;
基于预定的日志记录、输出策略进行日志的记录、输出;或基于通讯网络状况、物联网设备的本地存储空间、物联网系统繁忙程度自适应地生成相应的日志记录、输出策略进行日志的记录、输出;
其中,所述的日志记录、输出策略包括:
本地记录、输出策略:日志输出至设备终端的缓存器进行记录;
串口记录、输出策略:日志通过串口输出至控制器进行日志记录;
控制器记录、输出策略:日志通过通讯网络上传至日志服务器进行日志记录,日志由日志服务器转发至控制器;和/或
云终端记录、输出策略:日志通过通讯网络上传至云终端进行日志记录,日志由云终端转发至控制器。
日志记录、输出策略的生成过程具体包括:
获取物联网设备的配置,判断是否支持本地闪存,
若支持,则获取本地日志参数,打开本地日志接口,判断是否启用本地日志,若启用,则确定本地日志的记录级别、存储空间大小、覆盖策略,其中,所述覆盖策略包括:不覆盖即写满则停止、循环覆盖即始终覆盖最早的记录;
若不支持,则判断是否支持串口日志,
若支持,则获取串口日志参数,打开串口日志接口,判断是否启用串口日志,若启用,则确定串口日志的记录级别;串口号;
若不支持,则判断是否支持日志服务器,
若支持,则获取日志服务器日志参数,打开日志服务器日志接口,判断是否启用日志服务器日志,若启用,则确定日志服务器的记录级别,日志服务器的地址和端口号;
若不支持,则判断是否支持是否支持云平台日志,
若支持,则获取云平台日志参数,打开云平台日志接口,判断是否启用云平台日志,若启用,则确定云平台日志的记录级别、云平台的地址、端口号和访问令牌;
若不支持,则获取物联网设备的运行状态,生成日志记录和输出策略,即根据日志配置参数、物联网设备的配置及运行状态包括网络状况、本地存储空间、系统繁忙程度决定日志记录和输出策略;
其中,日志记录级别采用正整数表示,数字越小表明级别越高,日志记录级别与日志记录请求中的级别相对应,只有当记录请求中的级别小于或等于日志记录级别时,该日志记录请求才会被处理。
日志的输出过程具体包括:
S1确定是否收到日志请求;
S2.1若没有,则判断物联网设备的缓存区是否有待发送日志,若有待发送日志,则读取缓存区日志信息,输出日志信息;若没有待发送日志,则不做处理;
S2.2若有,则获取日志记录和输出策略,获取日志记录请求;
S2若没有,则转至S4;
S3确定自适应策略是否生效,
若生效,则提高日志记录级别,打开简化版日志内容开关,转至S4;
若不生效,则转至S4;
S4判断日志请求级别是否大于日志记录级别,
若是,则不记录;
若否,则判断日志内容是否需要简化,
若需要,则简化日志内容,转至S5,其中简化版的日志内容生成方法包括:如果日志记录请求中包括简化版日志内容,则使用请求中的数据;如果日志记录请求无简化版日志内容,则取正常版日志内容的前16个字节作为简化版内容;
若不需要,则转至S5;
S5确定日志是否需要缓存,
若是,则判断缓存区是否可用,若可用,则缓存日志信息;若不可用,则转至S1;
若否,则输出日志信息。
本实施例中,日志记录和输出过程中还包括:判断是否启用自适应策略,若启用,则在通讯网络状况很差或者物联网系统繁忙时,用简化版的日志内容代替正常的日志内容,以减少带宽占用和存储空间占用,自动提高日志记录级别以牺牲低级别日志信息为代价,保留更多关键日志信息,物联网系统和通信网络处于正常状态时,自适应策略将自动失效。
实施例3
本实施例物联网设备与控制器智能绑定的实现方法,在实施例1和2的基础上,还包括对物联网设备的配置进行更新,所述的更新方法包括:
物联网设备进入运行状态;
物联网设备与云平台通讯连接,接收云平台/用户端输出的更新配置指令,当物联网设备收到配置更新命令,则对该更新命令进行解析,更新物联网设备的配置命令队列;
所述方法还包括:
以第一预定时间间扫描命令队列,修改运行环境;
以第二预定时间间隔将物联网设备主存储配置信息同步到外部存储;
如果云平台与物联网设备连接终端,当终端检测设备与云平台连接恢复后,以预定的延时时间与云平台进行同步配置信息。
本实施例中,所述物联网设备进入运行状态的过程具体包括:
物联网设备启动;
检测物联网设备与云平台连接是否正常,
若正常,则物联网设备与云平台同步配置信息,批量更新配置信息至外部存储,外部存储器加载更新后的配置信息至主存储,根据配置信息生成运行环境,终端进入运行状态;
若不正常,则外部存储器加载原存储的配置信息至主存储根据配置信息生成运行环境,终端进入运行环境。
本实施例中,所述的第一预定时间间隔为毫秒级,所述第二预定时间间隔为秒级,所述第三时间间隔为分钟级。
具体地,其特征在于,配置信息结构包括:操作指令、已执行标记、保存标记、配置项ID和配置信息。其中,操作指令遵照Restful规范,包括读取(GET)、新增(POST)、修改(PUT)和删除(DELETE)四种操作指令;一个操作指令可以包括一项或者多项配置信息。保存标记表示该配置是否已经在外部存储保存(UNSAVED或SAVED),已执行标记表示该配置是否已经在运行环境中生效(UNEXECUTED或EXECUTED),配置项ID类型为无符号整数,配置信息为变长数据块,上述配置信息结构,在消息和接口中以JSON格式表示,在程序内部转化为结构体保存在配置命令队列中。
进一步地,所述配置同步具体包括:物联网设备向云平台发送配置同步请求,并携带外部存储的配置时间戳及设备标识(ID);云平台收到请求后,读取平台数据库中该物联网设备的配置信息及时间戳,与接收到的设备端时间戳比较,如果平台端时间戳较新,则下发配置;如果设备端时间戳较新,则要求设备上传配置,同步完成后,云平台和物联网设备分别更新时间戳。
进一步地,还包括:当物联网设备进行硬件升级或更换后,在云平台上将硬件升级或更新的新设备的设备标识(ID)与原设备的设备标识(ID)关联起来,云平台收到配置同步请求消息后将下发全部配置。
实施例4
参见图1和图2,本发明一较佳实施例所述的一种物联网设备与控制器智能绑定的实现方法:
场景1:在物联网设备安装完成或者出厂复位时,可使用任何控制器对物联网设备进行快速绑定。这时物联网设备处于初始化状态,在限定的时间周期内,接收本地不特定控制器的连接,一旦某个控制器与物联网设备建立连接,则该物联网设备进入设置状态、不再接受其他控制器的连接。用户在此控制器完成基本的物联网设备设定后,物联网设备记录此控制器的唯一标识(如控制器的MAC地址),控制器记录物联网设备的唯一标识(如物联网设备的序列号),从而完成控制器与物联网设备的绑定。因为此过程不要求用户登录,所以此绑定可以被称为控制器匿名绑定。完成匿名绑定的控制器可视为该物联网设备的默认遥控器,由于绑定过程非常简单,可实现物联网设备的即插即用。
处理控制器、用户与物联网设备的三方绑定关系;该方法不需要向物联网设备发送密码,也不需要在物联网设备上显示绑定特征码,更加安全;该方法支持物联网设备的即插即用,用户体验更好;该方法能够充分多用户、多控制器的场景,支持主用户将绑定复制到或转移给其他用户;支持主用户为新用户快速建立绑定。
场景2:用户的注册和登录验证通过云平台完成。用户可在任何时候登录已完成匿名绑定的控制器,成功登录后云平台通过控制器的唯一标识将物联网设备与用户建立绑定。由于控制器的唯一标识与物联网设备的绑定事先已经建立,因此,此绑定可以被称为用户静态绑定。第一个在匿名绑定的控制器上完成静态绑定的用户可以被称为对应物联网设备或设备组的主用户(图示中的用户1)。主用户拥有一些特殊操作权限,参见后续场景。
用户静态绑定在控制器匿名绑定后进行,用户控制器上成功登录后云平台通过控制器的唯一标识将物联网设备与用户建立绑定。第一个在匿名绑定的控制器上完成静态绑定的用户可以被称为对应物联网设备或设备组的主用户。
场景3:主用户可以在其他不特定控制器上登录,主用户和物联网设备或设备组的绑定关系在云平台上已经建立,主用户登录后云平台向控制器下发物联网设备列表。由于控制器与物联网设备事先没有绑定关系,因此,此绑定可以被称为用户动态绑定。
用户动态绑定适用于已通过用户静态绑定或用户授权绑定或用户邀请绑定的用户,用户可以在新的控制器上登录,并从云平台获取授权终端列表,完成绑定。
场景4:系统管理员或者主用户通过云平台,建立某些用户帐号与其权限内的物联网设备或设备组的关联,即授权这些用户与这些物联网设备进行绑定。被授权用户在登录不特定控制器时,云平台会下发该用户已获授权的物联网设备列表。
用户授权绑定由系统管理员或者主用户通过云平台建立某些用户帐号与其权限内的物联网设备或设备组的关联,即授权这些用户与这些物联网设备进行绑定。被授权用户在登录不特定控制器时,云平台会下发该用户已获授权的物联网设备列表,完成绑定。
场景5:主用户通过云平台为特定或者不特定用户生成绑定二维码,并将二维码发送给其他用户。绑定二维码的属性包括:指定用户或者不指定用户;有效次数(单次或多次);有效期;复制绑定关系或者转移绑定关系;物联网设备列表。二维码所对应的属性信息保存在云平台上,二维码本身仅需要包含链接的键值。
用户邀请绑定由主用户通过云平台为特定或者不特定用户生成绑定二维码,并将二维码发送给其他用户。绑定二维码的属性包括:指定用户或者不指定用户;有效次数(单次或多次);有效期;复制绑定关系或者转移绑定关系;物联网设备列表。二维码所对应的属性信息保存在云平台上,二维码本身仅需要包含链接的键值。获得绑定二维码的用户登录不特定控制器,然后扫描或识别二维码,云平台会下发该用户已获授权的物联网设备列表。由于此过程需要主用户发送绑定二维码给其他受邀请用户,因此,此绑定可以被称为用户邀请绑定。指定用户的绑定二维码只对特定用户有效,不指定用户的绑定二维码对所有用户有效;单次有效绑定二维码被使用一次后即时效;如果主用户为绑定二维码设定了有效期,则超过有效期无论是否使用过,该二维码即失效。主用户可以选择一部分物联网设备生成绑定二维码。二维码实质上是一个动态生成的超链接,因此,也可以直接使用该超链接。
获得绑定二维码的用户登录不特定控制器,然后扫描或识别二维码,云平台会下发该用户已获授权的物联网设备列表。由于此过程需要主用户发送绑定二维码给其他受邀请用户,因此,此绑定可以被称为用户邀请绑定。指定用户的绑定二维码只对特定用户有效,不指定用户的绑定二维码对所有用户有效;单次有效绑定二维码被使用一次后即时效;如果主用户为绑定二维码设定了有效期,则超过有效期无论是否使用过,该二维码即失效。如果绑定二维码设定为复制绑定关系,则成功使用此二维码的用户会获得与主用户相同的物联网设备列表;如果绑定二维码设定为转移绑定关系,则成功使用此二维码的用户会获得与主用户相同的物联网设备列表,同时成为新的主用户,原主用户则变为普通用户。主用户也可以选择一部分物联网设备生成绑定二维码。
解除绑定:用户可以登录APP或者登录云平台解除本用户帐号与物联网设备或设备组的绑定;主用户或者系统管理员可以登录云平台解除所管辖用户与物联网设备或设备组的绑定;上述解除绑定通过云平台的应用程序接口(API)调用实现,由云平台完成后台数据库操作。
解除绑定可通过用户登录APP或者登录云平台解除本用户帐号与物联网设备或设备组的绑定。解除绑定通过云平台的应用程序接口(API)调用实现,由云平台完成后台数据库操作。解除绑定可通过主用户或者系统管理员登录云平台解除所管辖用户与物联网设备或设备组的绑定。解除绑定通过云平台的应用程序接口(API)调用实现,由云平台完成后台数据库操作。
由用户通过特定操作(比如长按复位按钮或连续若干次开关电源等)对物联网设备进行复位,用户可以重新对此物联网设备进行控制器匿名绑定。重新控制器匿名绑定后,原有绑定暂时失效,此时仅有重新绑定的控制器能够操控此物联网设备。进而当用户完成用户静态绑定后,云平台判断新绑定的用户是否是原有绑定用户,如果不是,则解除所有原有用户对此物联网设备的绑定;如果是,则恢复原有绑定(也可以让用户选择是否恢复原有绑定),并将此次完成用户静态绑定的帐号设置为主用户。主用户将绑定复制到其他用户,主用户生成绑定二维码,并设定为复制绑定,则成功使用此二维码的新用户会获得与主用户相同的物联网设备列表。新用户登录后完成绑定复制。主用户将绑定转移给其他用户,主用户生成绑定二维码,并设定为转移绑定,则成功使用此二维码的新用户会获得与主用户相同的物联网设备列表,同时成为新的主用户,原主用户则变为普通用户。新用户登录后完成主用户绑定转移。
实施例5
本实施例物联网设备与控制器智能绑定的实现系统,包括:物联网设备、控制器、云平台,其中:
所述物联网设备复位为初始状态,物联网设备与唯一控制器建立匿名绑定,其中该唯一控制器为主控制器,其他控制器为子控制器;
用户在云平台上注册用户账号,用户利用用户账号在主控制器上登录,用户账号验证通过,物联网设备与该用户账号建立用户静态绑定,其中第一个与主控制器完成用户静态绑定的用户账号为物联网设备的主用户账号,其他用户账户为普通用户账号;
用户利用主用户账号在子控制器上登录,云平台向该子控制器下发物联网设备列表,子控制器与物联网设备进行用户动态绑定;
用户利用系统管理员账号或主用户账号登录云平台,在云平台上授权某些用户账号与其权限内的物联网设备或设备组进行绑定,被授权的用户账号登录子控制器时云平台下发该用户已授权的物联网设备列表,完成用户账号与物联网设备或物联网设备组的用户授权绑定;
用户利用主用户账号登录云平台,通过云平台生成绑定二维码,用户利用普通用户账户登录子控制器识别绑定二维码,子控制器与物联网设备进行用户邀请绑定。
本实施例中,所述物联网设备、控制器均包括匿名绑定模块,所述物联网设备的匿名绑定模块,用户获取控制器的唯一标示;所述控制器的匿名绑定模块,用于获取物联网设备的唯一标示;物联网设备、控制器分别成功获取对方的唯一标示,也即完成主控制器与物联网设备的匿名绑定。
本实施例中,云平台包括绑定二位码生成模块,用于根据用户指令生成相应属性的绑定二维码,其中绑定二维码的属性包括:指定用户账号或不指定用户账号、有效次数为单次或多次、有效期、复制绑定关系或转移绑定关系、物联网设备列表;
其中,指定用户的绑定二维码只对指定的用户账号有效,不指定用户的绑定二维码对所有用户账号有效;
单次有效绑定二维码被使用一次后即时效;
如果主用户为绑定二维码设定了有效期,则超过有效期无论是否使用过,该二维码即失效;
如果绑定二维码设定为复制绑定关系,则成功使用此二维码的用户会获得与主用户账号相同的物联网设备列表;
如果绑定二维码设定为转移绑定关系,则成功使用此二维码的用户账号会获得与主用户账号相同的物联网设备列表,同时成为新的主用户账号,原主用户账号则变为普通用户账号,主用户账号选择部分或全部物联网设备生成绑定二维码。
所述云平台还包括:用户账户注册/解除模块,用于普通用户进行用户账户的注册和解除,以及主用户账号或系统管理员账号所辖区用户账号与物联网设备或设备组绑定的解除。
实施例6
本实施例物联网设备与控制器智能绑定的实现系统,若所述的物联网设备具有闪存,则闪存用于日志缓存和本地日志存储;在实施例5的基础上还包括:日志模块,用于接收控制器的日志记录请求,基于预定的日志记录、输出策略进行日志的记录、输出;或基于通讯网络状况、物联网设备的本地存储空间、物联网系统繁忙程度自适应地生成相应的日志记录、输出策略进行日志的记录、输出;
其中,所述的日志记录、输出策略包括:
本地记录、输出策略:日志输出至设备终端的缓存器进行记录;
串口记录、输出策略:日志通过串口输出至控制器进行日志记录;
控制器记录、输出策略:日志通过通讯网络上传至日志服务器进行日志记录,日志由日志服务器转发至控制器;和/或
云终端记录、输出策略:日志通过通讯网络上传至云终端进行日志记录,日志由云终端转发至控制器。
本实施例中,所述日志模块包括:日志接口模块、日志策略模块、日志生成模块、日志缓存模块和日志输出模块;其中,
所述日志接口模块,包括日志配置接口、日志记录接口和日志输出接口,其中,日志配置接口直接或间接接收控制器的日志配置消息,并将配置参数传送给日志策略模块;日志记录接口接收日志记录请求,并将请求提供给日志生成模块,其中,物联网物联网设备上的其他模块和组件通过所述日志记录接口调用日志记录;日志记录接口的接口参数包括:级别和日志内容和/或简化版日志内容;日志输出接口则被日志输出模块调用,实现日志信息向串口、本地存储、云平台和日志服务器的传送;
日志策略模块负责根据日志配置参数、物联网设备的配置及运行状态,决定日志生成和输出策略,所述运行状态包括网络状况、本地存储空间、系统繁忙程度;
日志生成模块从日志记录接口接收日志记录请求,并根据日志策略模块产生的日志生成和输出策略生成日志数据;日志信息通过日志输出模块传输到日志模块外部;如果日志模块检测到网络故障,日志信息会在本地闪存中缓存,等待后续传送;
日志输出模块调用日志输出接口,向串口、本地存储、云平台和日志服务器传送日志信息。
本实施例,能够同时使用串口、本地闪存、系统日志服务以及云平台四种渠道记录物联网物联网设备的日志;涉及物联网云平台、物联网设备、日志服务器、控制器,具有通用性;支持物联网设备根据网络状况、本地存储空间、系统繁忙程度、以及控制器的指令调整日志生成和输出的策略。
实施例7
本实施例物联网设备与控制器智能绑定的实现系统,在实施例5、6的基础上,客户端通过云平台向物联网设备输出配置更新指令,或客户直接向物联网设备输出配置更新指令;
所述物联网设备还包括配置更新模块,用于接收云平台输出的更新配置指令,当物联网设备收到配置更新命令,则对该更新命令进行解析,更新物联网设备的配置命令队列;
所述物联网设备还包括:第一定时模块,用于以第一预定时间间扫描命令队列,修改运行环境;
第二定时模块,用于以第二预定时间间隔将物联网设备主存储配置信息同步到外部存储;
第三定时模块,用于如果云平台与物联网设备连接终端,当终端检测设备与云平台连接恢复后,以预定的延时时间与云平台进行同步配置信息。
本实施例中,所述物联网设备还包括运行启动模块,具体用于当物联网设备启动后,检测物联网设备与云平台连接是否正常,
若正常,则物联网设备与云平台同步配置信息,批量更新配置信息至外部存储,外部存储器加载更新后的配置信息至主存储,根据配置信息生成运行环境,终端进入运行状态;
若不正常,则外部存储器加载原存储的配置信息至主存储根据配置信息生成运行环境,终端进入运行环境。
所述物联网设备还包括配置恢复模块,用于当物联网设备进行硬件升级或更换后,在云平台上将硬件升级或更新的新设备的设备标识(ID)与原设备的设备标识(ID)关联起来,云平台收到配置同步请求消息后将下发全部配置。
本发明在实际物联网终端的具体应用:
例如一款智能灯具产品,允许多个家庭成员对灯具进行操控,每个家庭成员可以使用多部手机、平板电脑、台式机等作为控制器。该智能灯具支持Wi-Fi(本地或远程),蓝牙,Zig-Bee和RF2.4G等通信方式。
例如:智能灯具安装完毕后进入初始化状态,用户使用手机通过本地Wi-Fi或者蓝牙搜索并连接到智能灯具。手机可以事先安装智能灯具的APP,或者连接到智能灯具后从智能灯具直接下载APP。用户在手机上打开APP,用户无需登录,即可进入智能灯具绑定操作,包括两种绑定选项:
输入或选择家庭Wi-Fi连接参数,完成绑定。消息流程:智能灯具和手机分别记录对方的标识、智能灯具向云平台发送绑定消息、云平台向对应的手机发送绑定通知、收到绑定通知的手机回应云平台、云平台回应智能灯具(注:绑定消息也可以由手机发起,处理流程相同),完成控制器匿名绑定。此后,该控制器可以在本地或远程操控此智能灯具,操控需要云平台介入。
不输入任何参数,直接确认完成绑定。消息流程:智能灯具和手机分别记录对方的标识,,完成控制器匿名绑定。此后,该控制器只能在本地操控此智能灯具,操控不需要云平台介入,由智能灯具判断控制源标识是否与绑定的标识一致。
例如:用户在云平台注册帐号A,然后用此帐号在上述实例的手机上登录APP,即可完成帐号A与智能灯具的用户静态绑定。此操作可以在本地进行,也可以通过互联网进行,绑定过程在用户A登录APP时云由平台上完成。
例如:用户使用另一个平板电脑安装APP,并使用帐号A登录APP,登录成功后云平台向平板电脑下发包含上述智能灯具的授权终端列表,用户在平板电脑上选择此智能灯具,对其进行操控。用户退出登录,平板电脑上则无法查看授权终端列表,也无法对此智能灯具进行操控。
例如:用户使用帐号A登录云平台,将用户B加入智能灯具的授权用户列表。用户B使用自己的手机下载并成功登录APP,云平台向用户B的手机下发包含上述智能灯具的授权终端列表,用户B在手机上选择此智能灯具,对其进行操控。用户B退出登录,其手机上则无法查看授权终端列表,也无法对此智能灯具进行操控。用户使用帐号A登录云平台,将用户B从该智能灯具的授权用户列表中删除。用户B再次用自己的手机登录APP,云平台向用户B的手机下发的的授权终端列表不再包含该智能灯具,因此,用户B无法对此智能灯具进行操控。
例如:用户使用帐号A登录云平台,生成一个不指定用户、一次有效、针对此智能灯具的绑定二维码,并将此二维码通过电子邮件发送给用户B和用户C。用户C首先在手机上识别收到的二维码,如果手机尚未安装APP,则提示安装,然后提示用户C登录,用户C登录成功后,云平台根据收到的二维码中包含的链接键值,在数据库中检索相应的记录,完成用户C与此智能灯具的绑定,将上述绑定二维码置为失效状态,并下发包含此智能灯具的授权终端列表。用户C选择此智能灯具,对其进行操控。而当用户B试图在手机上识别收到的二维码时,云平台提示此绑定二维码已失效。
例如一款智能灯具产品,采用的单片机支持串口和Wi-Fi无线通讯,并有64K字节的空闲闪存空间可用于存储日志。该智能灯具通过家庭无线网络,接入互联网并到物联网云平台;并且在第三方数据中心部署了日志服务器。
例如:智能灯具的初始日志生成和输出策略为:
本地日志策略:启用本地日志;本地日志的记录级别为严重(20);存储空间为48K字节;覆盖策略为循环覆盖;
串口日志策略:启用串口日志;串口日志的记录级别为调试(50);串口号为1;
云平台日志策略:启用云平台日志;云平台日志的记录级别为正常(30);云平台的地址、端口号和访问令牌为系统中物联网云平台参数;
日志服务器日志策略:启用日志服务器日志;日志服务器的记录级别为详细(40);日志服务器的地址和端口号指向第三方数据中心日志服务器;
缓存策略:有缓存;缓存区大小为16K字节;缓存区覆盖策略为不覆盖;
自适应策略:启用自适应策略;支持简化日志内容;自动提高日志记录级别;
例如:因不明原因智能灯具突然出现严重故障,网络通讯全部中断,稍后智能灯具死机。云平台日志和日志服务器的日志都有缺失,无法提供故障发生时的日志信息。本地存储日志则记录有故障发生现场的信息,为故障诊断提供了有效支撑。
例如:正常情况网路带宽充足,日志服务器日志记录正常版日志内容,记录级别为详细(40)。当网络出现拥堵时自适应策略生效,日志服务器日志级别自动降为30,并简化日志内容。同时日志缓存发挥作用。因此,日志既中断,也没有造成网络进一步拥堵。
例如:系统中有几个智能灯具被选定做一个特殊测试,需要尽可能搜集测试阶段的日志信息。测试者通过日志客户端将这几个智能灯具的云平台日志级别调整到调试(50),并关闭日志服务器日志以节约资源。而后测试者就能通过云平台查看到详尽的调试日志了。
一款智能灯具产品,微控制器有16K字节主存储空间,以及512K外部闪存。智能灯具与云平台连接,同时也可以被本地的遥控器和墙面开关控制。根据本专利的方法,微控制器为配置命令队列分配4K字节空间,假定每项配置信息的平均长度为32字节,则配置命令队列最多可保存128条配置。
例如:客户端需要读取某项配置,智能灯具收到命令后查询配置命令队列,找到后返回结果;如果没有找到,则访问外部闪存获取结果。
例如:客户端通过云平台更新某项配置,智能灯具收到命令后查询配置命令队列,找到后更新队列中的记录;如果没有找到,则在队列中增加一条记录。约50ms后,定时操作1执行,更新的配置项生效;约5秒后,定时操作2执行,该配置项被写入外部存储。
例如:客户端程序异常,连续发了100条更新某项配置的重复消息。智能灯具收到每条命令后仅仅查询配置命令队列,找到后更新队列中的记录。约50ms 后,定时操作1执行,更新的配置项生效;约5秒后,定时操作2执行,该配置项被写入外部存储。定时操作1和定时操作2仅仅执行一次,过滤掉99条误操作。
例如:突然断电,造成智能灯具异常停机。供电恢复后智能灯具重启,智能灯具从外部存储中读取配置信息,恢复断电前的工作状态。这时即使网络没有恢复,也不影响智能灯具的工作。一段时间后,网络连接恢复,约120秒后,定时操作3执行,智能灯具与云平台完成配置同步。
例如:智能灯具的控制器被人为损坏,用户收到新控制后替换旧控制器,然后重新启动。智能灯具自动从云平台获取原有配置信息,恢复正常工作。
以上智能灯具仅为举例,本方法适用于各种物联网终端,如:智能开关、智能空调、智能摄像头、智能门锁等等。
以上所述仅是本发明的优选实施方式,并不用于限制本发明,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变型,这些改进和变型也应视为本发明的保护范围。