智能柜的离线存取件方法及装置与流程

文档序号:23617283发布日期:2021-01-12 10:27阅读:350来源:国知局
智能柜的离线存取件方法及装置与流程

本申请涉及信息技术领域,尤其是涉及到一种智能柜的离线存取件方法及装置。



背景技术:

随着互联网的快速发展以及人们生活节奏的加快,人们对快递业务的要求越来越高。有时用户不方便当面从配送员手里取件,而智能柜的出现可有效解决这一问题,配送员将配送件放置在智能柜中,由用户从智能柜中取件。智能柜在网络不好或服务端发生故障,处于离线状态时,或者用户移动设备信号差无法与服务端连接时,对用户的存取件都会造成严重的影响。

为了解决离线状态下智能柜的存取件无法实现的问题,目前,可设置管理员权限,登录后直接输入柜格号开柜门或者是通过机械钥匙应急开门。然而这种传统方式需要维护人员到场人工操作,耗时耗力且增加人工成本,维护人员前往事故地点也会耗费一定时长,进而会影响用户存取件的效率。



技术实现要素:

有鉴于此,本申请提供了一种智能柜的离线存取件方法及装置,主要目的在于改善目前离线状态下智能柜存取件的传统解决方案,耗时耗力、增加人工成本,并且会影响用户存取件效率的技术问题。

依据本申请的一个方面,提供了一种智能柜的离线存件方法,可应用于存件用户的客户端侧,该方法包括:

响应于智能柜的存件指令,通过建立的短距离通信连接向所述智能柜发送存件请求,以使得所述智能柜分配可用柜格;

接收所述可用柜格的柜格标识;

根据所述柜格标识和存件时间戳,生成取件码。

依据本申请的另一方面,提供了一种智能柜的离线取件方法,可应用于取件用户的客户端侧,该方法包括:

响应于智能柜的取件指令,通过建立的短距离通信连接向所述智能柜发送取件请求,所述取件请求中携带有取件码,以使得所述智能柜根据取件时间戳对所述取件码进行合法性校验;

接收取件柜格的柜格信息,所述柜格信息是所述智能柜判定所述取件码合法时根据所述取件码确定得到的。

依据本申请的又一方面,提供了一种智能柜的离线存件装置,可应用于存件用户的客户端侧,该装置包括:

发送模块,用于响应于智能柜的存件指令,通过建立的短距离通信连接向所述智能柜发送存件请求,以使得所述智能柜分配可用柜格;

接收模块,用于接收所述可用柜格的柜格标识;

生成模块,用于根据所述柜格标识和存件时间戳,生成取件码。

依据本申请的再一方面,提供了一种智能柜的离线取件装置,可应用于取件用户的客户端侧,该装置包括:

发送模块,用于响应于智能柜的取件指令,通过建立的短距离通信连接向所述智能柜发送取件请求,所述取件请求中携带有取件码,以使得所述智能柜根据取件时间戳对所述取件码进行合法性校验;

接收模块,用于接收取件柜格的柜格信息,所述柜格信息是所述智能柜判定所述取件码合法时根据所述取件码确定得到的。

依据本申请再一个方面,提供了一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述可应用于存件用户的客户端侧的智能柜的离线存件方法。

依据本申请再一个方面,提供了一种客户端设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述可应用于存件用户的客户端侧的智能柜的离线存件方法。

依据本申请再一个方面,提供了一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述可应用于取件用户的客户端侧的智能柜的取件存件方法。

依据本申请再一个方面,提供了一种客户端设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述可应用于取件用户的客户端侧的智能柜的离线取件方法。

借由上述技术方案,本申请提供的一种智能柜的离线存取件方法及装置,与目前离线状态下智能柜存取件的传统解决方案相比,本申请可在智能柜处于离线状态、或移动设备信号差无法与服务端通信时,通过建立移动设备客户端与智能柜的短距离通信连接,实现对智能柜的存取件操作。其中对于离线状态下取件码的生成可在存件用户客户端侧执行,保证用户信息的隐私安全,并且配备了该取件码在离线状态下完整的取件使用方案,进而可保证离线状态下智能柜存取件的顺利进行,无需维护人员到场人工操作,省时省力,节约人力成本,从而可提高用户存取件的效率。

上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1示出了本申请实施例提供的一种智能柜的离线存件方法的流程示意图;

图2示出了本申请实施例提供的另一种智能柜的离线存件方法的流程示意图;

图3示出了本申请实施例提供的一种智能柜的离线取件方法的流程示意图;

图4示出了本申请实施例提供的另一种智能柜的离线取件方法的流程示意图;

图5示出了本申请实施例提供的一种智能柜结构的示例示意图;

图6示出了本申请实施例提供的一种离线存餐示例的流程示意图;

图7示出了本申请实施例提供的一种离线取餐示例的流程示意图;

图8示出了本申请实施例提供的一种智能柜的离线存件装置的结构示意图;

图9示出了本申请实施例提供的一种智能柜的离线取件装置的结构示意图。

具体实施方式

下文中将参考附图并结合实施例来详细说明本申请。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

为了改善目前离线状态下智能柜存取件的传统解决方案,耗时耗力、增加人工成本,并且会影响用户存取件效率的技术问题。本实施例提供了一种智能柜的离线存件方法,如图1所示,可应用于存件用户的客户端侧,该方法包括:

步骤101、客户端响应于智能柜的存件指令,通过建立的短距离通信连接向智能柜发送存件请求,以使得智能柜分配可用柜格。

其中,短距离通信连接可包括无线上网(wireless-fidelity,wifi)、蓝牙、紫蜂协议(zigbee)技术、近距离无线通信技术(nearfieldcommunication,nfc)、超宽带(ultrawideband,uwb)等。需要说明的是,为了实现短距离通信连接,在智能柜侧需要预先配置相应的通信模块,如蓝牙模块、nfc模块等,进而通过该通信模块与智能柜实现短距离通信连接。对于本实施例中的智能柜可用于存取餐品或物品等,具体可为外卖取餐柜或快递柜等。

对于本离线存件方法实施例的执行主体可为存件用户的客户端设备,例如,智能手机、平板电脑等智能终端上安装的具有物流存件功能的应用程序(application,app)、或小程序、或公众号、或web端应用程序等。

为了便于了解,本实施例可主要以用户智能手机侧客户端为执行主体进行说明,用户可通过手机客户端找到智能柜输入存件指令,触发发送相应的存件请求,其中,输入存件指令的方式可存在多种可选形式。例如,待存件用户可通过手机app对智能柜上的标识码(如一维条码、二维码或多维条码等)进行扫码,进而输入存件指令,以便通过网络请求发送相应的存件请求;待存件用户还可通过手机小程序按照智能柜所在的位置找到当前智能柜,在具备该智能柜一定的操作权限后可输入存件指令,进而发送相应的存件请求等。

智能柜的每个仓格,可用于存放物品或餐品等。在本实施例中,智能柜的短距离通信连接功能可默认为开启状态,或者当检测到智能柜与服务端无法通信(如信号低于一定阈值)时开启此项功能。在建立短距离通信连接后,客户端可通过建立的连接,向智能柜的主控设备发送存件请求。由于存取明确的指向性,该存件请求中可不携带有智能柜的标识信息。存件请求中可携带存件用户的用户信息,以便智能柜根据该用户信息进行权限认证,认证通过后为其默认分配一个可用的柜格,用于存件。智能柜的主控设备可将分配的可用柜格的柜格标识(如柜格号、所在柜体的编号、柜体中的所在行/列等)通过建立的短距离通信连接,返回给客户端。

步骤102、客户端接收智能柜分配的可用柜格的柜格标识。

步骤103、根据智能柜分配的可用柜格的柜格标识和存件时间戳,生成取件码。

存件时间戳可为本次存件操作相应的时间戳。本实施例可在存件用户客户端侧生成取件码,避免取件码由智能柜侧生成带来的信息泄露隐患,可保证智能柜物流存储的安全性。考虑到后续可能会存在离线取件的需求,本实施例在生成取件码时可依据智能柜分配的可用柜格的柜格标识和存件时间戳,其中柜格标识用于离线状态下智能柜可识别出取件的目标柜格,而存件时间戳可用于校验取件的时效性,并且为了保证这些信息的安全性,生成取件码时可一并附带信息加密过程。

在生成取件码后,取件用户可通过该取件码在该智能柜中实现相应的取件操作,进而实现完整的离线状态下智能柜的存取件过程。

本实施例提供的可应用于存件用户客户端侧的智能柜的离线存件方法,与目前离线状态下智能柜存件的传统解决方案相比,本实施例可在智能柜处于离线状态、或移动设备信号差无法与服务端通信时,通过建立移动设备客户端与智能柜的短距离通信连接,实现对智能柜的存件操作。其中对于离线状态下取件码的生成可在存件用户客户端侧执行,保证用户信息的隐私安全,可保证离线状态下智能柜存件的顺利进行,无需维护人员到场人工操作,省时省力,节约人力成本,从而可提高用户存件的效率。

进一步的,作为上述实施例具体实施方式的细化和扩展,本实施例提供了另一种可应用于存件用户客户端侧的智能柜的离线存件方法,以短距离通信连接为蓝牙连接为例,如图2所示,该方法包括:

步骤201、客户端响应于智能柜的存件指令。

步骤202a、输出与智能柜进行短距离通信连接的提示信息,并响应于确认短距离通信连接的指令,通过建立的短距离通信连接向智能柜发送存件请求。

在本实施例中可在用户触发存件时主动提示与智能柜进行短距离通信连接,进而实现通过建立的短距离通信连接向所述智能柜发送存件请求,使得用户明确还可利用短距离通信连接实现智能柜的存件操作,以满足更多的需求。除此之外,还可进行智能判断,如客户端响应于智能柜的存件指令,若与服务端无法通信或判定智能柜处于离线状态,则输出与智能柜进行短距离通信连接的提示信息。

在本实施例中,服务端可为线上的云端侧后台,每次向服务端发送存件请求时可携带有智能柜的标识信息(如名称、id号等),以便告知后台服务端存件的目标智能柜。如果智能手机信号小于一定阈值,或向服务端发送存件请求后长时间未接收到服务端返回的响应信息等情况下,可确定与服务端无法通信。而如果发送存件请求后接收到服务端返回的告知该智能柜没有响应的信息时,可判定该智能柜处于离线状态。在判定客户端与服务端无法通信或智能柜处于离线状态时,可触发输出提示信息,建议存件用户使用短距离通信连接的方式操作存件。提示信息具体为文字、图片、音频、视频、灯光、振动等提示信息。

为了准确判定智能柜是否处于离线状态,可选的,响应于智能柜的存件指令,具体可包括:客户端向服务端发送智能柜的存件请求;接收该智能柜的离线状态信息,该离线状态信息是服务端无法与智能柜进行通信时发送的;然后根据该离线状态信息,判定该智能柜处于离线状态。例如,服务端根据客户端发送的存件请求,指示相应的智能柜分配可用柜格,如果服务端无法与智能柜进行通信,可将该智能柜的离线状态信息发送给客户端,使得客户端判定智能柜处于离线状态。

下面为了便于叙述,以短距离通信连接为蓝牙连接进行说明:

为了实现自动化的存件操作过程,如果用户提前设置免确认蓝牙连接进行存件,或者系统默认设置免确认等情况下,可在接收到智能柜的存件指令,且判定与服务端无法通信或判定智能柜处于离线状态时,无需输出与智能柜进行蓝牙连接的提示信息,直接与智能柜的低功耗蓝牙(bluetoothlowenergy,ble)模块建立蓝牙连接,进而向智能柜发送存件请求。通过这种可选方式,可实现存件用户在离线状态下一键存件,做到用户无感知,提高了用户存件的效率。

客户端响应于确认蓝牙连接的指令,与智能柜的ble蓝牙模块建立蓝牙连接,并通过建立的蓝牙连接向智能柜发送存件请求。

进一步的,以使得智能柜分配可用柜格。存件请求中还可携带有需要分配柜格的要求信息(如可由存件用户预先指示设定,或者客户端侧根据待存件订单信息分析出该要求信息等),如需要柜格分配的数量和格口大小等,进而智能柜可根据该要求信息分配适合的可用柜格。

对于ble蓝牙芯片同时支持通信链路的数量,有时会存在一定的数量限制,因此,为了便于更多存件用户对同一智能柜进行离线存件操作,可选的,在与智能柜的ble蓝牙模块建立蓝牙连接之后,本实施例方法还可包括:若预设时长内未接收到对智能柜的操作指令或判定存件已完成,则断开与ble蓝牙模块的蓝牙连接。断开蓝牙连接可由客户端侧发起,或者由智能柜侧主动发起等。例如,智能柜分配可用柜格后,可触发开启相应的柜格柜门,在该柜门关闭后,并且通过传感器检测到柜格里面存在物品时,可认为此次存件已完成,将相关信息通过蓝牙连接反馈给客户端,由智能柜侧主动断开蓝牙连接,或者由客户端侧根据反馈的信息确定存件成功后断开蓝牙连接等。除此之外,如果在蓝牙连接成功后,用户长时间未对智能柜操作,ble模块或者客户端可主动断开蓝牙连接,以便给其他用户腾出蓝牙通信链路。

与步骤202a并列的步骤202b、若与服务端无法通信或判定智能柜处于离线状态,则通过建立的短距离通信连接向智能柜发送存件请求。

例如,响应于智能柜的存件指令,若与服务端无法通信或判定智能柜处于离线状态,则通过建立的短距离通信连接自动向智能柜发送存件请求,使得用户在存件时无感知利用了短距离通信连接实现存件,做到存件用户即使在手机无网络或智能柜离线时,也能快速实现存件操作,进而可做到用户无感知的智能切换链路存件,保证存件的及时性和成功率。

步骤203、通过建立的短距离通信连接接收智能柜分配的可用柜格的柜格标识。

如客户端通过建立的蓝牙连接接收智能柜分配的可用柜格的柜格标识。

步骤204、获取智能柜对应的加密密钥。

在本实施例中,每个智能柜都可各自对应一个加密密钥,每个智能柜的加密密钥不同,进而用于区分各个智能柜。对于当前智能柜对应的加密密钥,客户端可通过蓝牙连接从智能柜侧获取得到,或者通过服务端查询得到等。

步骤205、基于智能柜分配的可用柜格的柜格标识和存件时间戳,利用获得的加密密钥进行加密处理,并将加密处理后的数据转换为符合预设格式的取件码。

其中,预设格式可为事先统一设置的取件码规范格式,如8位纯数字的取件码、10位带有数字和字母的取件码等。本实施例基于智能柜分配的可用柜格的柜格标识和存件时间戳,利用智能柜对应唯一的加密密钥进行加密处理,便于后续离线状态下智能柜进行取件码合法性校验,例如,利用唯一的加密密码,根据取件时间戳进行加密处理,如果取件码未超时失效,那么取件时间戳和存件时间戳在加密过程中可保持同样的精度,得到的取件时间戳的加密码和存件时间戳的加密码也会一致,进而判别出取件码合法;而如果取件码超时失效(在加密过程中无法保证同样的精度),或者取件码利用的是另一个智能柜(非当前智能柜)的加密密码进行加密处理,那么会造成取件时间戳的加密码和存件时间戳的加密码不一致,进而判别出取件码非法。通过这种可选方式,离线状态下在存件用户客户端侧生成取件码,避免取件码由智能柜侧生成带来的信息泄露隐患,可保证智能柜物流存储的安全性;并且在离线取件时也能做到准确的安全验证,智能柜内存储物品的安全。

示例性的,步骤205具体可包括:将柜格标识按照预设进制转换为第一部分数据;对存件时间戳使用加密密钥进行加密处理,并将加密处理后的数据按照预设进制转换为第二部分数据;将第一部分数据和第二部分数据进行组合,得到取件码。

预设进制可根据实际需求预先进行配置。例如,预设进制可为十六进制,相应的,取餐码可为6位16进制组成(0-9,a~f),总计3个字节,分为a和b两部分:a.柜格号:由第一个字节表示,柜格号从1~255;b.加密数:由后两个字节表示,加密数由存件用户存件的时间戳和一组密钥通过加密算法(如sm3等)加密处理得到。加密时间戳可根据具体的业务需要调整精确到分钟、小时、或者天。

进一步可选的,第二部分数据可用于智能柜离线取件时取件码的合法性校验,而该第一部分数据可用于智能柜离线取件时判别取件码相应的柜格。

例如,如果时间是精确到小时,2020-10-0915:xx:xx,那么提取出来的时间相关信息就是20201009150000,加上智能柜的密钥信息加密出来的数字是3688(用16进制表示是0e68),柜格号是15(用16进制表示就是0f),那么取件码就是0f0e68。后续在利用该取件码对智能柜进行取件时,智能柜收到取件码0f0e68后先去校验0e68是否合法,如果0e68合法再去操作0f(15)号柜格,进而将15号柜格的柜门开启。通过这种可选方式,可实现在离线状态下准确的智能柜存取件操作过程,保证智能柜存储物品的安全性。

在步骤205之后,根据取件用户的用户信息,向取件用户发送生成的取件码;或,将取件码通过服务端发送给取件用户客户端,并将对智能柜的操作记录上传至服务端。例如,存件用户可根据取件用户的手机号码,复制取件码后通过短信息、即时通讯工具等向取件用户发送该取件码,使得取件用户可凭借取件码到同一智能柜前实现取件。或者待手机信号良好时,将取件码和对智能柜的操作记录上传至服务端,服务端根据操作记录,查询到对应的取件用户,向取件用户发送该取件码。

与目前离线状态下智能柜存件的传统解决方案相比,本实施例方案可在智能柜处于离线状态、或移动设备信号差无法与服务端通信时,通过建立移动设备客户端与智能柜的短距离通信连接,实现对智能柜的存件操作。其中对于离线状态下取件码的生成可在存件用户客户端侧执行,保证用户信息的隐私安全,可保证离线状态下智能柜存件的顺利进行,无需维护人员到场人工操作,省时省力,节约人力成本,从而可提高用户存件的效率。

上述实施例内容为在存件用户客户端侧描述的智能柜的离线存件操作过程,进一步的,为了完整说明本实施例的实施方式,本实施例还提供了一种智能柜的离线取件方法,可应用于取件用户客户端侧,需要说明的是离线取件方法可与上述离线存件方法相互结合,进而实现离线状态下智能柜完整的存取件过程,或者根据实际场景情况拆分进而分别实现(如离线状态下存件+在线状态下取件,或在线状态下存件+离线状态下取件等)。如图3所示,离线取件方法具体包括:

步骤301、客户端响应于智能柜的取件指令,通过建立的短距离通信连接向智能柜发送取件请求。

对于本离线取件方法实施例的执行主体可为取件用户的客户端设备,例如,智能手机、平板电脑等智能终端上安装的具有物流取件功能的app、或小程序、或公众号、或web端应用程序等。再例如,客户端设备还可配置在智能柜侧,如智能柜的操控屏或者控制设备等,用户通过在操控屏上输入取件,进而输入取件指令。

为了便于了解,本实施例可主要以用户智能手机侧客户端为执行主体进行说明,用户可通过手机客户端找到智能柜输入取件指令,触发发送相应的取件请求,其中,输入取件指令的方式可存在多种可选形式。例如,待取件用户可通过手机app对智能柜上的标识码(如一维条码、二维码或多维条码等)进行扫码,进而输入取件指令,通过网络请求发送相应的取件请求;待取件用户还可通过手机小程序按照智能柜所在的位置找到当前智能柜,在具备该智能柜一定的操作权限后可输入取件指令(如取件时可输入取件码等),进而发送相应的取件请求。

其中,取件请求中携带有取件码,进一步的,以使得智能柜根据取件时间戳对该取件码进行合法性校验。取件时间戳可为本次取件操作相应的时间戳。本实施例可在存件用户客户端侧生成取件码,避免取件码由智能柜侧生成带来的信息泄露隐患,可保证智能柜物流存储的安全性。考虑到后续可能会存在离线取件的需求,本实施例在生成取件码时可依据智能柜分配的可用柜格的柜格标识和存件时间戳,其中柜格标识用于离线状态下智能柜可识别出取件的目标柜格,而存件时间戳可用于校验取件的时效性,并且为了保证这些信息的安全性,生成取件码时可一并附带信息加密过程。在生成取件码后,取件用户可通过该取件码在该智能柜中实现相应的取件操作,进而实现完整的离线状态下智能柜的存取件过程。

步骤302、客户端接收取件柜格的柜格信息。

其中,接收到的柜格信息是智能柜判定取件码合法时根据取件码确定得到的。柜格信息可包括柜格标识、柜格所在位置、柜格大小等信息。

本实施例提供的可应用于取件用户客户端侧的智能柜的离线取件方法,与目前离线状态下智能柜取件的传统解决方案相比,本实施例可在智能柜处于离线状态、或移动设备信号差无法与服务端通信时,通过建立移动设备客户端与智能柜的短距离通信连接,实现对智能柜的取件操作。其中对于离线状态下取件码的生成可在存件用户客户端侧执行,保证用户信息的隐私安全,并且配备了该取件码在离线状态下完整的取件使用方案,进而可保证离线状态下智能柜取件的顺利进行,无需维护人员到场人工操作,省时省力,节约人力成本,从而可提高用户取件的效率。

进一步的,作为上述实施例具体实施方式的细化和扩展,本实施例提供了另一种可应用于取件用户客户端侧的智能柜的离线取件方法,以短距离通信连接为蓝牙连接为例,如图4所示,该方法包括:

步骤401、客户端响应于智能柜的取件指令。

步骤402a、输出与智能柜进行短距离通信连接的提示信息,并响应于确认短距离通信连接的指令,通过建立的短距离通信连接向智能柜发送取件请求。

在本实施例中可在用户触发取件时主动提示与智能柜进行短距离通信连接,进而实现通过建立的短距离通信连接向所述智能柜发送取件请求,使得用户明确还可利用短距离通信连接实现智能柜的取件操作,以满足更多的需求。除此之外,还可进行智能判断,如客户端响应于智能柜的取件指令,若客户端与服务端无法通信或判定智能柜处于离线状态,则输出与所述智能柜进行短距离通信连接的提示信息。

如果智能手机信号小于一定阈值,或向服务端发送取件请求后长时间未接收到服务端返回的响应信息等情况下,可确定与服务端无法通信。而如果发送取件请求后接收到服务端返回的告知该智能柜没有响应的信息时,可判定该智能柜处于离线状态。在判定客户端与服务端无法通信或智能柜处于离线状态时,可触发输出提示信息,建议取件用户使用短距离通信连接的方式操作取件。提示信息具体为文字、图片、音频、视频、灯光、振动等提示信息。

为了准确判定智能柜是否处于离线状态,可选的,响应于智能柜的取件指令,具体可包括:向服务端发送智能柜的取件请求;接收智能柜的离线状态信息,其中该离线状态信息是服务端无法与智能柜进行通信时发送的;后续根据该离线状态信息,判定智能柜处于离线状态。例如,服务端根据客户端发送的取件请求,指示相应的智能柜打开对应的取件柜格,如果服务端无法与智能柜进行通信,可将该智能柜的离线状态信息发送给客户端,使得客户端判定智能柜处于离线状态。

下面为了便于叙述,以短距离通信连接为蓝牙连接进行说明:

为了实现自动化的取件操作过程,如果用户提前设置免确认蓝牙连接进行取件,或者系统默认设置免确认等情况下,可在接收到智能柜的取件指令(指令中包含取件码),且判定与服务端无法通信或判定智能柜处于离线状态时,无需输出与智能柜进行蓝牙连接的提示信息,直接与智能柜的ble模块建立蓝牙连接,进而向智能柜发送取件请求。通过这种可选方式,可实现取件用户在离线状态下一键取件,做到用户无感知,提高了用户取件的效率。

客户端响应于确认蓝牙连接的指令,与智能柜的ble蓝牙模块建立蓝牙连接,并通过建立的蓝牙连接向智能柜发送取件请求。

其中,取件请求中携带有取件码,进一步的,以使得智能柜根据取件时间戳对取件码进行合法性校验。可选的,取件码可以是由第一部分数据和第二部分数据组合得到的,该第一部分数据是根据取件柜格的柜格标识进行转换得到的,该第二部分数据是对存件时间戳使用智能柜对应的加密密钥经过加密处理和转换得到的,取件码具体的生成过程可参见图2方法中的对应描述,在此不再赘述。

相应可选的,智能柜根据取件时间戳对取件码进行合法性校验,具体可包括:根据取件时间戳使用智能柜对应的加密密钥进行加密处理,得到第一加密码数据;及,获取取件码中第二部分数据转换前的第二加密码数据;然后通过比对第一加密码数据和第二加密码数据,判断取件码是否合法。例如,智能柜接收到取件码后以当前接收的时间戳(取件时间戳)为准,与加密存件时间戳时保持同样的精度(如时间都精确到天,相当于取件码在当天有效、过天失效;再如时间都精确到月份,相当于取件码在当月有效、当月过后失效),提取出来时间相关信息,使用同样的密钥(与智能柜唯一对应)进行加密,若生成的加密码与取件码中的加密码一致,则认为取件码合法,再提取出柜格号字段,进行开门操作。通过这种可选方式,可实现在离线状态下准确的智能柜存取件操作过程,保证智能柜存储物品的安全性。

为了满足更多的业务场景需求,取件码可具有时效性。示例性的,根据取件时间戳使用智能柜对应的加密密钥进行加密处理,得到第一加密码数据,具体可包括:基于取件时间戳,按照不同的精度范围标准,确定至少一参考时间戳;然后对至少一个参考时间戳分别使用智能柜对应的加密密钥进行加密处理,得到至少一第一加密码数据;相应的,通过比对第一加密码数据和第二加密码数据,判断取件码是否合法,具体可包括:若该至少一第一加密码数据中存在与第二加密码数据一致的第一加密码数据,则确定取件码合法;若至少一第一加密码数据中不存在与第二加密码数据一致的第一加密码数据,则确定取件码非法。

例如,取件码的时效性可设置为3秒钟,取件时间戳和存件时间戳在加密过程中保持同样的精度,具体为时间精确到秒钟,如果取件时间戳的时间相关信息为20201009150503,那么可计算20201009150501、20201009150502、20201009150503分别对应的加密码数据,如果这三个加密码数据中存在与存件时间戳的时间相关信息对应的加密码数据一致的数据,那么说明取件码合法,如果这三个加密码数据中不存在与存件时间戳的时间相关信息对应的加密码数据相一致的数据,那么说明取件码非法。

对于ble蓝牙芯片同时支持通信链路的数量,有时会存在一定的数量限制,因此,为了便于更多取件用户对同一智能柜进行离线取件操作,可选的,在与智能柜的ble蓝牙模块建立蓝牙连接之后,本实施例方法还可包括:若预设时长内未接收到对智能柜的操作指令或判定取件已完成,则断开与ble蓝牙模块的蓝牙连接。例如,智能柜触发开启相应的柜格柜门,在该柜门关闭后,并且通过传感器检测到柜格里面不存在物品时,可认为此次取件已完成,将相关信息通过蓝牙连接反馈给客户端,由智能柜侧主动断开蓝牙连接,或者由客户端侧根据反馈的信息确定取件成功后断开蓝牙连接等。除此之外,如果在蓝牙连接成功后,用户长时间未对智能柜操作,ble模块或者客户端可主动断开蓝牙连接,以便给其他用户腾出蓝牙通信链路。

在具体的应用场景中,后台服务端可能无权限(如平台不同导致的无法获取到另一平台内的数据等)查询到用户对应取件的取件订单信息,进而无法获取到相应的取件码。因此为了实现自动化的取件过程,可选的,上述响应于确认蓝牙通信连接的指令,通过建立的蓝牙通信连接向智能柜发送取件请求,具体可包括:若与服务端能够通信,且服务端有权限获取取件订单对应的取件码,则从服务端获取取件码,并通过建立的短距离通信连接向智能柜发送携带有取件码的取件请求,进而实现自动化地获取取件码并发送存件请求的过程;若与服务端无法通信,或服务端无权限获取取件订单对应的取件码,则提示输入取件码,并通过建立的短距离通信连接向智能柜发送携带有输入的取件码的取件请求。

与步骤402a并列的步骤402b、若与服务端无法通信或判定智能柜处于离线状态,则通过建立的短距离通信连接向所述智能柜发送取件请求。

例如,响应于智能柜的取件指令,若与服务端无法通信或判定智能柜处于离线状态,则通过建立的短距离通信连接自动向智能柜发送取件请求,使得用户在取件时无感知利用了短距离通信连接实现取件,做到取件用户即使在手机无网络或智能柜离线时,也能快速实现取件操作,进而可做到用户无感知的智能切换链路取件,保证取件的及时性和成功率。

步骤403、通过建立的短距离通信连接接收取件柜格的柜格信息。

如通过建立的蓝牙连接接收取件柜格的柜格信息。

在接收取件柜格的柜格信息之后,本实施例方法还可包括:将对智能柜的操作记录上传至服务端。具体可执行步骤404a至404b所示的过程。

步骤404a、若与服务端能够通信,则将对智能柜的操作记录上传至服务端。

与步骤404a并列的步骤404b、若与服务端无法通信,则待与服务端恢复通信后,将对智能柜的操作记录上传至服务端。

为了方便理解上述各实施例方法的具体实现过程,给出如下应用场景,但不限于此:

目前,当前智能取餐柜在网络不好或服务端发生故障,处于离线状态时,无论对配送员(骑手)的放餐还是用户的取餐都会造成严重的影响;同时由于智能柜铺设的点位可能不是很好,部分用户手机信号不好也会导致放餐取餐困难。因此本实施例旨在解决离线状态下取餐柜的放餐和取餐问题。

具体可在智能柜(取餐柜)侧增加ble模块作为近场通讯模块,ble模块与智能柜主控通过串口或其他接口直接通讯。并且为了增强ble的通信质量,ble的天线需要引出到柜体外部,具体结构可如图5所示。在骑手扫码放餐时,首先判断取餐柜是否离线或者骑手手机是否无法与服务端通讯。若否,则骑手手机app向服务端申请放餐,服务端分配柜格,下发指令到取餐柜,并推送取餐码给骑手,服务端推送取餐码给用户、或骑手通知用户取餐码;若是,则提示骑手网络信号不好建议使用蓝牙放餐,骑手确认后建立蓝牙连接,智能柜分配柜格,并将柜格号返回至骑手手机端。手机端app根据柜格号、当前时间戳(存件时间戳)生成一组6位数字的取餐码。后续骑手可将取餐码通知到取餐用户,或者在手机网络正常时,手机app将取餐码自动推送给取件用户,并将操作记录上传至服务端,如执行流程可如图6所示。

在用户取餐过程中,用户可扫码取餐或者通过取餐柜屏幕输入取餐。首先判断取餐柜是否离线或者用户手机是否无法与服务端通讯。若否,则用户直接通过智能柜输入取餐码取餐,智能柜上传操作记录给服务端;若是,则提示用户网络信号不好建议使用蓝牙取餐,用户确认后建立蓝牙连接,提示用户输入取餐码,智能柜通过ble获取到取餐码,校验取餐码的合法性并解析柜格号。智能柜根据校验结果决定是否开门,并返回结果到用户手机端app,手机app在网络正常的情况下上传操作记录至服务端,具体执行过程可如图7所示。在离线取件和离线存件的过程中,还可在用户app操作上指引用户快速完成操作。

通过应用上述方案,使用ble技术解决智能柜领域的离线存取的问题,有助于节省智能柜的运营成本。

进一步的,作为图1和图2所示方法的具体实现,本实施例提供了一种可应用于存件用户客户端侧的智能柜的离线存件装置,如图8所示,该装置包括:发送模块51、接收模块52、生成模块53。

发送模块51,用于发送模块,用于响应于智能柜的存件指令,通过建立的短距离通信连接向所述智能柜发送存件请求,以使得所述智能柜分配可用柜格;

接收模块52,用于接收所述可用柜格的柜格标识;

生成模块53,用于根据所述柜格标识和存件时间戳,生成取件码。

在具体的应用场景中,发送模块51,具体用于响应于智能柜的存件指令,输出与所述智能柜进行短距离通信连接的提示信息,并响应于确认短距离通信连接的指令,通过建立的短距离通信连接向所述智能柜发送存件请求;或,响应于智能柜的存件指令,若与服务端无法通信或判定所述智能柜处于离线状态,则通过建立的短距离通信连接向所述智能柜发送存件请求。

在具体的应用场景中,发送模块51,具体还用于若与服务端无法通信或判定所述智能柜处于离线状态,则输出与所述智能柜进行短距离通信连接的提示信息。

在具体的应用场景中,发送模块51,还用于响应于智能柜的存件指令之后,向所述服务端发送所述智能柜的存件请求;

接收模块52,还用于接收所述智能柜的离线状态信息,所述离线状态信息是所述服务端无法与所述智能柜进行通信时发送的;根据所述离线状态信息,判定所述智能柜处于离线状态。

在具体的应用场景中,所述生成模块53,具体用于获取所述智能柜对应的加密密钥;基于所述柜格标识和存件时间戳,利用所述加密密钥进行加密处理,并将加密处理后的数据转换为符合预设格式的所述取件码。

在具体的应用场景中,所述生成模块53,具体还用于将所述柜格标识按照预设进制转换为第一部分数据;对所述存件时间戳使用所述加密密钥进行加密处理,并将加密处理后的数据按照预设进制转换为第二部分数据;将所述第一部分数据和所述第二部分数据进行组合,得到所述取件码。

在具体的应用场景中,可选的,所述第二部分数据用于所述智能柜离线取件时取件码的合法性校验,所述第一部分数据用于所述智能柜离线取件时判别取件码相应的柜格。

在具体的应用场景中,所述短距离通信连接为蓝牙连接;所述发送模块51,具体用于与所述智能柜的ble蓝牙模块建立蓝牙连接,并通过建立的蓝牙连接向所述智能柜发送存件请求;

所述接收模块52,具体用于通过建立的蓝牙连接接收所述可用柜格的柜格标识。

在具体的应用场景中,所述发送模块51,具体还用于在与所述智能柜的ble蓝牙模块建立蓝牙连接之后,若预设时长内未接收到对所述智能柜的操作指令或判定存件已完成,则断开与所述ble蓝牙模块的蓝牙连接。

在具体的应用场景中,所述发送模块51,还用于根据取件用户的用户信息,向所述取件用户发送所述取件码;或,将所述取件码通过所述服务端发送给取件用户客户端,并将对所述智能柜的操作记录上传至所述服务端。

需要说明的是,本实施例提供的一种可应用于存件用户客户端侧的智能柜的离线存件装置所涉及各功能单元的其它相应描述,可以参考图1和图2中方法的对应描述,在此不再赘述。

进一步的,作为图5所示方法的具体实现,本申请实施例提供了一种可应用于取件用户客户端侧的智能柜的离线取件装置,如图9所示,该装置包括:发送模块61、接收模块62。

发送模块61,用于响应于智能柜的取件指令,通过建立的短距离通信连接向所述智能柜发送取件请求,所述取件请求中携带有取件码,以使得所述智能柜根据取件时间戳对所述取件码进行合法性校验;

接收模块62,用于接收取件柜格的柜格信息,所述柜格信息是所述智能柜判定所述取件码合法时根据所述取件码确定得到的。

在具体的应用场景中,发送模块61,具体用于响应于智能柜的取件指令,输出与所述智能柜进行短距离通信连接的提示信息,并响应于确认短距离通信连接的指令,通过建立的短距离通信连接向所述智能柜发送取件请求;或,响应于智能柜的取件指令,若与服务端无法通信或判定所述智能柜处于离线状态,则通过建立的短距离通信连接向所述智能柜发送取件请求。

在具体的应用场景中,发送模块61,具体还用于若与服务端无法通信或判定所述智能柜处于离线状态,则输出与所述智能柜进行短距离通信连接的提示信息。

在具体的应用场景中,发送模块61,还用于在响应于智能柜的取件指令之后,向所述服务端发送所述智能柜的取件请求;

接收模块62,还用于接收所述智能柜的离线状态信息,所述离线状态信息是所述服务端无法与所述智能柜进行通信时发送的;根据所述离线状态信息,判定所述智能柜处于离线状态。

在具体的应用场景中,可选的,所述取件码是由第一部分数据和第二部分数据组合得到的,所述第一部分数据是根据所述取件柜格的柜格标识进行转换得到的,所述第二部分数据是对存件时间戳使用所述智能柜对应的加密密钥经过加密处理和转换得到的;

所述发送模块61,具体用于向所述智能柜发送取件请求,以使得根据所述取件时间戳使用所述智能柜对应的加密密钥进行加密处理,得到第一加密码数据;及,获取所述取件码中所述第二部分数据转换前的第二加密码数据;通过比对所述第一加密码数据和所述第二加密码数据,判断所述取件码是否合法。

在具体的应用场景中,所述发送模块61,具体还用于向所述智能柜发送取件请求,以使得基于所述取件时间戳,按照不同的精度范围标准,确定至少一参考时间戳;对所述至少一个参考时间戳分别使用所述智能柜对应的加密密钥进行加密处理,得到至少一第一加密码数据;若所述至少一第一加密码数据中存在与所述第二加密码数据一致的第一加密码数据,则确定所述取件码合法;若所述至少一第一加密码数据中不存在与所述第二加密码数据一致的第一加密码数据,则确定所述取件码非法。

在具体的应用场景中,所述发送模块61,具体还用于若与所述服务端能够通信,且所述服务端有权限获取取件订单对应的所述取件码,则从所述服务端获取所述取件码,并通过建立的短距离通信连接向所述智能柜发送携带有所述取件码的取件请求;若与所述服务端无法通信,或所述服务端无权限获取取件订单对应的所述取件码,则提示输入所述取件码,并通过建立的短距离通信连接向所述智能柜发送携带有输入的所述取件码的取件请求。

在具体的应用场景中,可选的,所述短距离通信连接为蓝牙连接;所述发送模块61,具体用于与所述智能柜的ble蓝牙模块建立蓝牙连接,并通过建立的蓝牙连接向所述智能柜发送取件请求;

所述接收模块62,具体用于通过建立的蓝牙连接接收取件柜格的柜格信息。

在具体的应用场景中,所述发送模块61,具体还用于在与所述智能柜的ble蓝牙模块建立蓝牙连接之后,若预设时长内未接收到对所述智能柜的操作指令或判定取件已完成,则断开与所述ble蓝牙模块的蓝牙连接。

在具体的应用场景中,所述发送模块61,还用于将对所述智能柜的操作记录上传至服务端。

需要说明的是,本实施例提供的一种可应用于取件用户客户端侧的智能柜的离线取件装置所涉及各功能单元的其它相应描述,可以参考图3和图4中方法的对应描述,在此不再赘述。

基于上述如图1和图2所示方法,相应的,本申请实施例还提供了一种存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述如图1和图2所示的可应用于存件用户客户端侧的智能柜的离线存件方法。基于上述如图3和图4所示方法,本申请实施例还提供了另一种存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述如图3和图4所示的可应用于取件用户客户端侧的智能柜的离线取件方法。

基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施场景的方法。

基于上述如图1和图2所示的方法,以及图8所示的虚拟装置实施例,为了实现上述目的,本申请实施例还提供了一种客户端设备,具体可以为平板电脑、智能手机、智能手表、智能手环、智能柜操控设备、或其他网络设备等,该客户端设备包括存储介质和处理器;存储介质,用于存储计算机程序;处理器,用于执行计算机程序以实现上述如图1和图2所示的可应用于存件用户客户端侧的智能柜的离线存件方法。

基于上述如图3和图4所示的方法,以及图9所示的虚拟装置实施例,为了实现上述目的,本申请实施例还提供了一种客户端设备,具体可以为平板电脑、智能手机、智能手表、智能手环、智能柜操控设备、或其他网络设备等。该设备包括存储介质和处理器;存储介质,用于存储计算机程序;处理器,用于执行计算机程序以实现上述如图3和图4所示的可应用于取件用户客户端侧的智能柜的离线取件方法。

可选的,上述两种实体设备都还可以包括用户接口、网络接口、摄像头、射频(radiofrequency,rf)电路,传感器、音频电路、wi-fi模块等等。用户接口可以包括显示屏(display)、输入单元比如键盘(keyboard)等,可选用户接口还可以包括usb接口、读卡器接口等。网络接口可选的可以包括标准的有线接口、无线接口(如wi-fi接口)等。

本领域技术人员可以理解,本实施例提供的客户端设备的实体设备结构并不构成对这两种实体设备的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件布置。

存储介质中还可以包括操作系统、网络通信模块。操作系统是管理上述两个实体设备硬件和软件资源的程序,支持信息处理程序以及其它软件和/或程序的运行。网络通信模块用于实现存储介质内部各组件之间的通信,以及与信息处理实体设备中其它硬件和软件之间通信。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可以借助软件加必要的通用硬件平台的方式来实现,也可以通过硬件实现。通过应用本实施例的技术方案,与目前离线状态下智能柜存取件的传统解决方案相比,本实施例可在智能柜处于离线状态、或移动设备信号差无法与服务端通信时,通过建立移动设备客户端与智能柜的短距离通信连接,实现对智能柜的存取件操作。其中对于离线状态下取件码的生成可在存件用户客户端侧执行,保证用户信息的隐私安全,并且配备了该取件码在离线状态下完整的取件使用方案,进而可保证离线状态下智能柜存取件的顺利进行,无需维护人员到场人工操作,省时省力,节约人力成本,从而可提高用户存取件的效率。

本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本申请所必须的。本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。

上述本申请序号仅仅为了描述,不代表实施场景的优劣。以上公开的仅为本申请的几个具体实施场景,但是,本申请并非局限于此,任何本领域的技术人员能思之的变化都应落入本申请的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1