1.一种高可用性远程保险箱系统,其能够在第一运行模式和第二运行模式之一模式下运行,该高可用性远程保险箱系统包括:远程保险箱,其位于能够连接到外部网络的局域网中并且包括保险箱主体、电子锁、以及保险箱控制器,所述保险箱控制器通过控制线与电子锁连接以控制所述电子锁的开启和关闭,并且所述保险箱控制器能够通过无线连接连接到所述局域网;
安装在用户的用户设备上的保险箱应用,所述保险箱应用被配置为:在第一运行模式下,所述第一运行模式是服务器中继模式:在用户通过保险箱应用输入第一用户凭证向中继服务器成功认证以后,通过中继服务器建立与保险箱控制器的通信;
从第一运行模式切换到第二运行模式,所述第二运行模式是点对点模式:向点对点服务器查询保险箱控制器的外部网络IP地址和外部网络端口,从点对点服务器接收保险箱控制器的外部网络IP地址和外部网络端口,尝试建立所述保险箱应用到所述外部网络IP地址和外部网络端口的点对点连接,以及使用所述点对点连接与所述保险箱控制器通信;
中继服务器,其被配置为在第一运行模式下:
在用户通过保险箱应用输入第一用户凭证向中继服务器成功认证以后建立保险箱应用与保险箱控制器之间的连接;以及在保险箱控制器与保险箱应用之间中继通信;以及
点对点服务器,其位于外部网络中并且与所述保险箱应用通信,其中点对点服务器被配置为在第二运行模式下:从保险箱控制器接收由所述保险箱控制器发送的数据分组,所述数据分组包含保险箱控制器的外部网络IP地址和外部网络端口;
其中用户在通过保险箱应用输入第二用户凭证向保险箱控制器成功认证以后,获得对电子锁的控制权。
2.根据权利要求1所述的高可用性远程保险箱系统,其中第一运行模式与第二运行模式之间的切换条件包括如下之一:中继服务器或点对点服务器发生故障;
中继服务器或点对点服务器受到攻击而瘫痪;
中继服务器或点对点服务器的负载超过预定阈值;以及用户或系统选择。
3.根据权利要求1所述的高可用性远程保险箱系统,其中所述中继服务器包括第一中继服务器和第二中继服务器,第二中继服务器被配置为:在第一中继服务器和/或点对点服务器不可用或其负载超过预定阈值时或者在用户或系统选择时建立与保险箱控制器和保险箱应用的连接;以及在保险箱控制器与保险箱应用之间中继通信。
4.根据权利要求3所述的高可用性远程保险箱系统,其中所述点对点服务器包括第一点对点服务器和第二点对点服务器,第二点对点服务器位于外部网络中并且与所述保险箱应用通信,其中第二点对点服务器被配置为在第一点对点服务器和/或中继服务器不可用或其负载超过预定阈值时或者在用户或系统选择时提供服务,其中第二点对点服务器从保险箱控制器接收由所述保险箱控制器发送的数据分组,所述数据分组包含保险箱控制器的外部网络IP地址和外部网络端口。
5.根据权利要求3所述的高可用性远程保险箱系统,其中第一中继服务器和第二中继服务器是无状态服务器,并且第一中继服务器和第二中继服务器还被配置为:给每个用户操作赋予有效时间;以及
在该有效时间期满以后相应用户操作还未完成时,清除该用户操作的命令并且复位到初始状态。
6.根据权利要求1所述的高可用性远程保险箱系统,其中所述保险箱应用和/或保险箱控制器还被配置为:通过固定域名地址访问服务器;
将该固定域名地址初始指向中继服务器;以及
在从第一运行模式切换到第二运行模式时将该固定域名地址指向点对点服务器并与第一点对点服务器通信。
7.根据权利要求1所述的高可用性远程保险箱系统,其中所述保险箱应用和/或保险箱控制器还被配置为:保存中继服务器和点对点服务器的域名;
初始地通过中继服务器的域名访问中继服务器;以及
在从第一运行模式切换到第二运行模式时,通过点对点服务器的域名访问点对点服务器。
8.根据权利要求1所述的高可用性远程保险箱系统,其中保险箱控制器还被配置为:记录历史数据,所述历史数据表示用户每次的开锁操作是利用中继服务器还是点对点服务器执行的以及该开锁操作是否成功;以及根据所述历史数据选择利用中继服务器或者点对点服务器执行开锁操作。
9.根据权利要求1所述的高可用性远程保险箱系统,其中所述无线连接由第三方Wi-Fi路由器提供,或者由用户的用户设备的Wi-Fi热点来提供。
10.一种高可用性远程保险箱,其能够在第一运行模式和第二运行模式之一模式下运行,所述第一运行模式是服务器中继模式,第二运行模式是点对点模式;该高可用性远程保险箱包括:保险箱主体;
电子锁;以及
保险箱控制器,所述保险箱控制器通过控制线与电子锁连接以控制所述电子锁的开启和关闭,并且所述保险箱控制器能够通过无线连接连接到局域网,所述局域网能够连接到外部网络,所述保险箱控制器包括:存储器,在该存储器上存储有计算机可执行程序;
处理器,其被配置为执行所述计算机可执行程序以在第一运行模式下执行下列步骤:在用户通过用户设备上运行的保险箱应用输入第一用户凭证向中继服务器成功认证的情况下,通过中继服务器与所述保险箱应用通信;
通过中继服务器从用户接收通过保险箱应用输入的第二用户凭证;
认证所述第二用户凭证;以及
在认证成功的情况下向用户赋予对所述电子锁的控制权;
或者,该处理器被配置为执行所述计算机可执行程序从第一运行模式切换到第二运行模式,以在第二运行模式下执行下列步骤:向点对点服务器发送数据分组,所述数据分组包含远程保险箱的外部网络IP地址和外部网络端口;
在安装在用户的用户设备上的保险箱应用从点对点服务器接收保险箱控制器的外部网络IP地址和外部网络端口并且尝试建立所述用户设备与保险箱控制器之间的点对点连接以后,建立所述用户设备与保险箱控制器之间的点对点连接;
从用户接收通过保险箱应用输入的第二用户凭证;
认证所述第二用户凭证;以及
在认证成功的情况下向用户赋予对所述电子锁的控制权。