一种基于应用程序的智能门锁扫码开锁方法及系统

文档序号:1876684 发布日期:2021-11-23 浏览:18次 >En<

阅读说明:本技术 一种基于应用程序的智能门锁扫码开锁方法及系统 (Intelligent door lock code scanning unlocking method and system based on application program ) 是由 李东兴 白刚 易海平 余俊 于 2021-09-15 设计创作,主要内容包括:本发明适用物联网技术领域,提供了一种基于应用程序的智能门锁扫码开锁方法及系统,该方法包括,通过微信扫码打开访客端小程序,访客端自动获取智能门锁ID和微信绑定的手机号码并将其发送到云平台进行匹配验证,云平台根据验证结果向访客端小程序返回不同的信息,如果验证通过,云平台向访客端小程序返回加密秘钥和授权信息,访客端小程序向智能门锁发起通讯连接并下发加密过的开锁命令,智能门锁收到后进行对开锁指令解密并执行开门操作,如果验证不通过,访客端小程序向用户进行授权失败提示。(The invention is applicable to the technical field of Internet of things, and provides an intelligent door lock code scanning unlocking method and system based on an application program.)

一种基于应用程序的智能门锁扫码开锁方法及系统

技术领域

本发明属于物联网技术领域,尤其涉及一种基于应用程序的智能门锁扫码开锁方法及系统。

背景技术

随着物联网技术的日益成熟和智能门锁的普及,为住户提供了诸如人脸解锁、指纹解锁、密码解锁、卡片解锁、手机解锁等等方便而实用的功能,使住户摆脱了单一的钥匙解锁方式,体验到了智能门锁提供的便利性。然而对于访客,如个人家里的亲戚来访、公寓出租屋的中介看房等,在住户不在家时如何提供一个方便而实用的方法,成为智能门锁必须解决的一个难题。

目前行业内的解决方法主要有如下几种:

通过远程开锁的方式来满足要求。首先,访客到门前后,按门锁上的组合键或者门铃键,打电话告知住户,住户打开APP或者小程序允许开锁,然后再打电话与访客确认门锁是否已开。此种解决方案一来存在多次沟通的问题,二来由于门锁是低功耗产品,为了省电,接受远程开锁的时长一般定在一分钟左右,而沟通过程或者其它原因可能早就超过一分钟,因此可能需要多次操作协调才能真正远程开锁成功。

通过授权临时密码的方式来满足要求。此种方式需要门锁实时联网,断网情况下且网络差导致没能及时下发到门锁上时,访客可能无法使用该临时密码完成开锁。另外,临时密码存在被分享使用等风险。

通过授权无网络密码的方式来满足要求。此种方式需要门锁及APP或者小程序各自内置一套无网络密码算法,并保证门锁上的时间与APP或者小程序一致,否则两边算出来的无网络密码将会不一致而导致无法识别进行开锁。另外,门锁上内置这种无网络密码算法的方式,加大了密码的误撞成功率,一旦算法外泄也存在极大的安全威胁。

通过授权人脸的方式来满足要求。首先,此种方式仅适合支持人脸开锁的智能锁,对于指纹智能锁或者公寓普遍使用的密码卡片智能锁均无法使用。其次,在授权时,住户不一定能找到访客的人脸照片,可能仍需要经过人为沟通和微信传输等步骤来获取,可操作性差。

发明内容

本发明的目的在于提供一种基于应用程序的智能门锁扫码开锁方法及系统,旨在解决使用智能门锁的住户对访客开门的授权问题。

一方面,本发明提供了一种基于应用程序的智能门锁扫码开锁方法,所述智能门锁包括蓝牙模块,所述应用程序包括可分别与云平台通讯的住户端APP或住户端小程序和访客端小程序,其特征在于,所述方法包括:

在所述蓝牙模块和所述应用程序之间定义一套安全通讯协议;

住户通过所述住户端APP或住户端小程序将所述智能门锁ID与所述云平台进行绑定,在绑定过程中所述住户端APP或住户端小程序将加密秘钥分发给所述智能门锁和所述云平台;

住户通过所述住户端APP或住户端小程序设置授权管理信息并将其发送给所述云平台;

所述访客端小程序通过微信扫码获取所述智能门锁ID并将所述智能门锁ID和微信用户绑定的手机号码发送给所述云平台;

所述云平台根据所述智能门锁ID、所述手机号码和所述授权管理信息进行授权验证;

若验证不通过,所述云平台向所述访客端小程序返回验证失败信息;

所述访客端小程序接根据所述验证失败信息向访客发出授权失败提示;

若验证通过,所述云平台向所述访客端小程序返回验证成功信息并向其下发加密秘钥;

所述访客端小程序向所述智能门锁发起通讯连接并向其发送根据所述加密秘钥加密过的开锁命令;

所述智能门锁接收到所述开锁命令后,执行开锁操作。

进一步地,在所述步骤所述访客端小程序通过微信扫码获取所述智能门锁ID并将所述智能门锁ID和微信用户绑定的手机号码发送给所述云平台之前还包括以下步骤:

在所述智能门锁上或所述智能门锁旁边设置携带有所述智能门锁ID的二维码。

进一步地,所述安全通讯协议的数据格式包括包头、包标识、包长度、数据区、校验位和包尾。

进一步地,所述授权管理信息包括访客的手机号码、授权的起止和结束时间段以及授权的次数。

进一步地,所述步骤所述云平台根据所述智能门锁ID、所述手机号码和所述授权管理信息进行授权验证的具体步骤包括:

根据所述智能门锁ID判断所述云平台上是否有所述智能门锁的授权信息,若无,则返回授权验证失败;

若有,则匹配授权信息里有无待验证的手机号码,

若无,则返回授权验证失败;

若有,则判断时间段是否有效和次数是否已用完,

若时间无效或次数用完,则返回授权验证失败信息;

若时间有效且次数未用完,则返回授权验证成功信息并附带门锁蓝牙加密秘钥。

进一步地,所述步骤所述智能门锁接收到所述开锁命令后,执行开锁操作之后还包括以下步骤:

所述智能门锁根据开锁操作结果发出语音提示,并向所述访客端小程序返回所述开锁操作结果。

进一步地,访客端小程序根据所述开锁操作结果执行不同的操作:

若开锁成功,将开锁成功的信息上报到所述云平台;

若开锁失败,向所述访客发出开锁失败提示并提供重试的选择。

另一方面,本发明提供了一种基于应用程序的智能门锁扫码开锁系统,所述应用程序包括可分别与云平台通讯的住户端APP或住户端小程序和访客端小程序,其特征在于,包括以下模块:

智能门锁模块,用于接收访客端小程序加密传输的开锁命令并执行开锁操作;

住户端APP或住户端小程序模块,用于设置授权管理信息并将其保存至云平台和向所述智能门锁和所述云平台分发加密秘钥;

访客端小程序模块,用于向云平台发送授权申请信息并根据返回的授权验证结果向所述智能门锁发送加密开锁命令或向访客提示授权失败信息;

云平台模块,用于根据授权管理信息通过对访客端小程序发送的授权申请信息进行验证并返回验证结果,所述验证结果包括验证通过信息附带加密秘钥或验证失败信息。

进一步地,所述智能门锁模块包括:

开锁模块,用于根据访客端小程序下发的开锁命令执行开锁操作;

蓝牙模块,用于分别与所述住户端APP或住户端小程序和所述访客端小程序进行通讯。

本发明的有益效果:通过微信扫码打开访客端小程序,不需要提前下载安装APP,便于为访客提供一种快捷简单的操作方式,同时,通过微信扫码可以自动获取智能门锁ID并自动上传到云平台,方便云平台通过匹配进行授权验证,将访客微信绑定的手机号码作为授权验证的身份凭证,确保了访客身份的唯一性,降低了授权被分享的可能性;通过在住户端APP或住户端小程序设置授权管理信息,方便了住户对访客权限进行管理;通过访客端小程序向智能门锁发送加密开锁命令,并通过智能门锁中的加密秘钥对开锁命令进行解密,提高了智能门锁的安全性,另外,住户端APP或住户端小程序向智能门锁下发加密秘钥时,利用近距离蓝牙通讯网络一次性下发,降低了加密秘钥被截获的可能性,同时也降低了智能门锁中的单片机对数据加解密的实现复杂度。

附图说明

图1是本发明实施例提供的基于应用程序的智能门锁开锁方法的流程图;

图2是本发明实施例提供的基于应用程序的智能门锁开锁系统的结构示意图;

图3是本发明实施例提供的基于应用程序的智能门锁开锁方法中的通讯协议的数据格式。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

以下结合具体实施例对本发明的具体实现进行详细描述:

实施例1:

如图1示出了本发明实施例一提供的基于应用程序的智能门锁开锁方法的实现流程,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:

智能门锁包括蓝牙模块,应用程序包括可分别与云平台通讯的住户端APP或住户端小程序和访客端小程序,基于应用程序的智能门锁开锁方法包括:

S101、在蓝牙模块和应用程序之间定义一套安全通讯协议;

S102、住户通过住户端APP或住户端小程序将智能门锁ID与云平台进行绑定,在绑定过程中住户端APP或住户端小程序将加密秘钥分发给智能门锁和云平台;

S103、住户通过住户端APP或住户端小程序设置授权管理信息并将其发送给云平台;

S104、访客端小程序通过微信扫码获取智能门锁ID并将智能门锁ID和微信用户绑定的手机号码发送给云平台;

S105、云平台根据智能门锁ID、手机号码和授权管理信息进行授权验证,要验证通过,执行步骤S108,若验证不通过,执行步骤S106;

S106、云平台向访客端小程序返回验证失败信息;

S107、访客端小程序接根据验证失败信息向访客发出授权失败提示;

S108、云平台向访客端小程序返回验证成功信息并向其下发加密秘钥;

S109、访客端小程序向智能门锁发起通讯连接并向其发送根据加密秘钥加密过的开锁命令;

S110、智能门锁接收到开锁命令后,执行开锁操作。

进一步地,在步骤S104之前还包括以下步骤:

在智能门锁上或智能门锁旁边设置携带有智能门锁ID的二维码。

进一步地,如图3所示,步骤S101的安全通讯协议的数据格式包括包头、包标识、包长度、数据区、校验位和包尾。

进一步地,步骤S103中的授权管理信息包括访客的手机号码、授权的起止和结束时间段以及授权的次数。

进一步地,步骤S105的具体步骤包括:

S1051、根据智能门锁ID判断云平台上是否有智能门锁的授权信息,若无,执行步骤S1052,若有,执行步骤S1053;

S1052、返回授权验证失败;

S1053、匹配授权信息里有无待验证的手机号码,若无,执行步骤S1054,若有,执行步骤S1055,

S1054、返回授权验证失败;

S1055、判断时间段是否有效和次数是否已用完,若时间无效或次数用完,执行步骤S1056,若时间有效且次数未用完,执行步骤S1057,

S1056、返回授权验证失败信息;

S1057、返回授权验证成功信息并附带门锁蓝牙加密秘钥。

进一步地,步骤S110之后还包括以下步骤:

智能门锁根据开锁操作结果发出语音提示,并向访客端小程序返回开锁操作结果。

进一步地,访客端小程序根据开锁操作结果执行不同的操作:

若开锁成功,将开锁成功的信息上报到云平台;

若开锁失败,向访客发出开锁失败提示并提供重试的选择。

实施例2:

如图2示出了本发明实施例一提供的基于应用程序的智能门锁开锁系统的结构示意图,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:

应用程序包括可分别与云平台通讯的住户端APP或住户端小程序和访客端小程序,其特征在于,包括以下模块:

智能门锁模块201,用于接收访客端小程序加密传输的开锁命令并执行开锁操作;

住户端APP或住户端小程序模块202,用于设置授权管理信息并将其保存至云平台和向智能门锁和云平台分发加密秘钥;

访客端小程序模块203,用于向云平台发送授权申请信息并根据返回的授权验证结果向智能门锁发送加密开锁命令或向访客提示授权失败信息;

云平台模块204,用于根据授权管理信息通过对访客端小程序发送的授权申请信息进行验证并返回验证结果,验证结果包括验证通过信息附带加密秘钥或验证失败信息。

进一步地,智能门锁模块201包括:

开锁模块2011,用于根据访客端小程序下发的开锁命令执行开锁操作;

蓝牙模块2012,用于分别与住户端APP或住户端小程序和访客端小程序进行通讯。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

10页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种基于双频的电单车管理系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!