一种基于微信公众平台的门禁控制方法及系统技术方案

技术编号:22659977 阅读:15 留言:0更新日期:2019-11-28 03:54
本发明专利技术涉及智能门禁控制的技术领域,更具体地,涉及一种基于微信公众平台的门禁控制方法及系统,包括:S1.用户通过用户微信客户端向微信公众平台发送请求开门的指令;S2.微信公众平台接收指令后将指令转发至云端服务器;S3.云端服务器根据内部逻辑,返回授权码至微信公众平台;S4.微信公众平台将授权码返回至用户微信客户端;S5.用户微信客户端收到授权码后转发给管理员微信客户端;S6.管理员微信客户端收到授权码后转发至微信公众平台,微信公众平台确认授权码后向云端服务器发送开锁指令。本发明专利技术以较低成本实现终端电子锁的开启控制,不会因门卡数量的增加而导致成本增加,且用户在使用时无需记忆密码,也避免了门卡遗失的问题,使用方便且安全性高。

An access control method and system based on wechat public platform

The invention relates to the technical field of intelligent access control, more specifically, an access control method and system based on the wechat public platform, including: S1. The user sends the instruction of requesting to open the door to the wechat public platform through the user wechat client; S2. The wechat public platform receives the instruction and forwards it to the cloud server; S3. The cloud server returns according to the internal logic Authorization code is sent to wechat public platform; S4. Wechat public platform returns authorization code to user wechat client; S5. User wechat client forwards to administrator wechat client after receiving authorization code; S6. Administrator wechat client forwards to wechat public platform after receiving authorization code, wechat public platform sends unlocking instruction to cloud server after confirming authorization code. The invention realizes the opening control of the electronic lock of the terminal at a lower cost, does not increase the cost due to the increase of the number of door cards, and the user does not need to memorize the password when using, and also avoids the problem of the loss of the door card, which is convenient to use and high security.

【技术实现步骤摘要】
一种基于微信公众平台的门禁控制方法及系统
本专利技术涉及智能门禁控制的
,更具体地,涉及一种基于微信公众平台的门禁控制方法及系统。
技术介绍
目前,许多高校都有专用的活动室,但是对于上百人规模的社团来说,每人配备一把钥匙是不现实也是不安全的,故有在活动室安装电子锁的做法,这种电子锁包括设置于楼宇入口的门禁控制器、存储有识别信息的RFID有源标签及受控于门禁控制器的门锁,门禁控制器连接有RFID读卡模块,手持RFID有源标签并被RFID读卡模块读取,门禁控制器将RFID有源标签的信息与预存的信息进行匹配,匹配成功即控制门锁打开。尽管安装电子锁可以方便地随时赋予或取消普通用户的开门权限,但是:一方面,传统的电子锁成本高昂,难于管理,易发生电子锁遗失导致盗窃现象发生;另一方面,若出门忘带钥匙,则遇到无法开门进入的窘境。
技术实现思路
本专利技术的目的在于克服现有技术的不足,提供一种基于微信公众平台的门禁控制方法及系统,借助微信公众平台提供的消息时间接口,用户通过与公众号发消息获取用户的OpenID,低成本且安全性高。为解决上述技术问题,本专利技术采用的技术方案是:提供一种基于微信公众平台的门禁控制方法,包括以下步骤:S1.用户通过用户微信客户端向微信公众平台发送请求开门的指令;S2.微信公众平台接收指令后将指令转发至云端服务器,同时微信公众平台附带信息发送至云端服务器;S3.云端服务器根据内部逻辑,返回授权码至微信公众平台;S4.微信公众平台将授权码返回至用户微信客户端;S5.用户微信客户端收到授权码后转发给管理员微信客户端;S6.管理员微信客户端收到授权码后转发至微信公众平台,微信公众平台确认授权码后向云端服务器发送开锁指令,云端服务器控制终端电子锁开锁。本专利技术的基于微信公众平台的门禁控制方法,借助微信公众平台提供的消息事件接口,当用户与公众号互发消息时,云端服务器可获知用户的OpenID,OpenID可用于唯一识别用户身份,用户身份核实后云端服务器向终端电子锁发送开锁指令驱动电子锁开锁。本专利技术以较低成本实现终端电子锁的开启控制,在用户数量增加时不会因门卡数量的增加而导致成本增加,且用户在使用时无需记忆密码,也避免了门卡遗失导致的问题,使用方便且安全性高。优选地,步骤S1中,请求开门的指令为DOOR或开门。本专利技术请求开门的指令不限于“DOOR”或“开门”,还可采用其他便于用户输入及便于识别的文本作为输入指令。优选地,步骤S2中,所述附带信息包括timestamp信息、nonce信息及OpenID信息,所述指令与附带信息打包为xml数据包转发至云端服务器。云端服务器通过解析xml数据包即可获知所发送的指令与附带信息,开发者在数据库中检索是否存在OpenID,若不存在,则要求用户与学号绑定,若存在,则根据内部逻辑生成相关回复。优选地,步骤S3中,所述内部逻辑包括以下步骤:S31.云端服务器接收微信公众平台的事件消息;S32.判断所述事件消息是否为文本消息:若是,则解析用户的OpenID和指令内容;若否,则返回暂不支持;S33.判断所述事件消息是否为命令:若是,则解析出参数并跳转至命令所对应的函数,且根据函数运行结果返回授权码;若否,则判断事件消息是否为授权码:若是,则转步骤S34;若否,则返回暂不支持;S34.解码授权码,提取参数,将所述授权码、参数与数据库系统内存储的数据库进行比对,识别是否能够授权:若无权,则返回错误提示;若有权,则更新授权状态,返回成功提示;S35.事件消息达到开门要求,向终端电子锁发送开门指令。优选地,用户初次使用时,还包括进行用户身份验证和授权的步骤。优选地,所述用户身份验证和授权按以下步骤进行:S11.管理员在数据库系统中录入用户的身份信息,所述身份信息包括姓名及学号,则绑定身份信息与OpenID被允许;S12.用户关注微信公众号,发送“BD学号”:若数据库系统中存在所述学号且未被绑定后,返回授权码;若数据库系统不存在所述学号,则返回错误提示;S13.用户复制授权码,并将授权码转发给管理员;S14.管理员收到授权码后检查授权码中请求者的身份信息是否属实:若属实,则转发授权码至所述微信公众平台,将用户的身份信息与OpenID绑定;若不属实,则返回错误提示。优选地,所述微信公众平台与云端服务器之间约定有一个相同的token令牌,所述微信公众平台与云端服务器之间的通讯按以下步骤进行:当微信公众平台向云端服务器发送包含有url参数的消息时,所述url参数包含timestamp、nonce和signature字段,signature、timestamp、nonce字段和token令牌按字典序排序拼接而成的字符串对应的第一sha1摘要;当云端服务器收到来自微信公众平台的消息后,signature、timestamp、nonce字段和token令牌按字典序排序拼接而成的字符串对应的第二sha1摘要;当第一sha1摘要与第二sha1摘要相同时,则通过验证。sha1摘要的低碰撞性,不同的消息很难生成一样的sha1摘要,如果token只有收发双方知道,没有泄露的话,任何第三方按上述规则生成的signature都无法通过验证,消息来源可以信任。优选地,所述终端电子锁与云端服务器之间通讯采用双签名的验证方式,包括以下步骤:终端电子锁向云端服务器发送消息,所述消息包含T1、N1、S1、T2、N2字段;云端服务器利用T1、N1、S1字段验证消息是否来自终端电子锁,根据T2、N2字段生成签名S2回复给电子锁。由于S2是根据刚刚发送的T2、N2生成的,仅在本次通信中有效,因此具有时效性。本专利技术还提供了一种基于微信公众平台的门禁控制系统,包括数据库系统、云端服务器、终端电子锁以及微信公众平台:所述数据库系统与云端服务器通讯,用于管理员录入、查看、修改和删除用户信息;所述云端服务器与微信公众平台连接,用于集中处理用户请求和验证用户权限,所述云端服务器还与终端电子锁连接,用于向终端电子锁发送开门指令驱动终端电子锁开锁;所述微信公众平台与多个微信客户端通讯,用于接收微信客户端发出的指令。本专利技术的基于微信公众平台的门禁控制系统,用户发起开门指令,云端服务器为此建立一个会话,将会话参数编码在授权码中,然后将授权码回复给用户,完成一次交互;随后用户将授权码转发给管理员,若管理员同意授权,则将授权码转发给公众号,微信公众平台解码授权码中的参数,并与数据库系统中存储的参数进行比对,若一致则控制云端服务器发送开门指令。本专利技术以较低成本实现终端电子锁的开启控制,在用户数量增加时不会因门卡数量的增加而导致成本增加,且用户在使用时无需记忆密码,也避免了门卡遗失导致的问题,使用方便且安全性高。进一步地,所述终端电子锁内置有单片机,所述单片机模块通过esp8266模块访问网络。与现有技术相比,本专利技术的有益效果是:...

【技术保护点】
1.一种基于微信公众平台的门禁控制方法,其特征在于,包括以下步骤:/nS1.用户通过用户微信客户端向微信公众平台发送请求开门的指令;/nS2.微信公众平台接收指令后将指令转发至云端服务器,同时微信公众平台附带信息发送至云端服务器;/nS3.云端服务器根据内部逻辑,返回授权码至微信公众平台;/nS4.微信公众平台将授权码返回至用户微信客户端;/nS5.用户微信客户端收到授权码后转发给管理员微信客户端;/nS6.管理员微信客户端收到授权码后转发至微信公众平台,微信公众平台确认授权码后向云端服务器发送开锁指令,云端服务器控制终端电子锁开锁。/n

【技术特征摘要】
1.一种基于微信公众平台的门禁控制方法,其特征在于,包括以下步骤:
S1.用户通过用户微信客户端向微信公众平台发送请求开门的指令;
S2.微信公众平台接收指令后将指令转发至云端服务器,同时微信公众平台附带信息发送至云端服务器;
S3.云端服务器根据内部逻辑,返回授权码至微信公众平台;
S4.微信公众平台将授权码返回至用户微信客户端;
S5.用户微信客户端收到授权码后转发给管理员微信客户端;
S6.管理员微信客户端收到授权码后转发至微信公众平台,微信公众平台确认授权码后向云端服务器发送开锁指令,云端服务器控制终端电子锁开锁。


2.根据权利要求1所述的基于微信公众平台的门禁控制方法,其特征在于,步骤S1中,请求开门的指令为DOOR或开门。


3.根据权利要求1所述的基于微信公众平台的门禁控制方法,其特征在于,步骤S2中,所述附带信息包括timestamp信息、nonce信息及OpenID信息,所述指令与附带信息打包为xml数据包转发至云端服务器。


4.根据权利要求1所述的基于微信公众平台的门禁控制方法,其特征在于,步骤S3中,所述内部逻辑包括以下步骤:
S31.云端服务器接收微信公众平台的事件消息;
S32.判断所述事件消息是否为文本消息:若是,则解析用户的OpenID和指令内容;若否,则返回暂不支持;
S33.判断所述事件消息是否为命令:若是,则解析出参数并跳转至命令所对应的函数,且根据函数运行结果返回授权码;若否,则判断事件消息是否为授权码:若是,则转步骤S34;若否,则返回暂不支持;
S34.解码授权码,提取参数,将所述授权码、参数与数据库系统内存储的数据库进行比对,识别是否能够授权:若无权,则返回错误提示;若有权,则更新授权状态,返回成功提示;
S35.事件消息达到开门要求,向终端电子锁发送开门指令。


5.根据权利要求1所述的基于微信公众平台的门禁控制方法,其特征在于,用户初次使用时,还包括进行用户身份验证和授权的步骤。


6.根据权利要求5所述的基于微信公众平台的门禁控制方法,其特征在于,所述用户身份验证和授权按以下步骤进行:
S11.管理员在数据库系统中录入用户的身份信息,所述身份信息包括姓名及学号,则绑定身份信息与OpenID被...

【专利技术属性】
技术研发人员:师文庆徐广涞彭肖
申请(专利权)人:广东海洋大学
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1