一种对前端设备进行控制的方法、系统和管理服务器的制作方法

文档序号:7970826阅读:142来源:国知局
专利名称:一种对前端设备进行控制的方法、系统和管理服务器的制作方法
技术领域
本发明涉及监控技术,特别涉及一种对前端设备进行控制的方法、系统和管理服务器。
背景技术
典型的监控系统主要由前端设备、信号传输设备和后端显示记录设备三部分组成。以视频监控系统为例,前端设备即为摄像设备,它是视频监控系统的“眼睛”,其性能直接影响了系统性能的优劣。信号传输设备即为完成视频信号传输与控制的设备;后端显示记录设备即为显示视频监控图像和录像的设备。
目前,支持对前端设备进行控制的系统模式主要有两种矩阵联网系统和基于主控设备的系统。
图1即为矩阵联网系统的控制方案示意图。在该系统中,控制范围从上到下按区域逐级递减,控制指令通过控制键盘发出。具体地,总控中心具有最高的控制级别,可以控制其以下二级、三级区域内的前端设备,其通过在控制键盘输入控制指令控制本矩阵以及其下辖控制区域内的矩阵下的前端设备。
可见,采用矩阵联网系统实现对前端设备进行控制的方案缺陷是没有控制权限和控制冲突解决机制,即来自于不同控制键盘的控制指令可能会下达到同一前端设备,使前端设备出现控制混乱;另外,由于控制指令由控制键盘发出,控制指令类别少、本矩阵的控制键盘发出的控制指令会天然具有较高优先级;同时由于视频干线只能单向传输,会造成同级区域内的两个不同矩阵间可控不可看的局面。
图2为目前基于主控设备的系统控制方案示意图。在该系统中,由主控设备,即图2中的监控主机来存储权限信息,直接控制前端设备,客户端可以通过向主控设备下发指令间接控制前端设备。
图2所示的方案同样存在图1所示的矩阵联网系统中的控制冲突问题,由于主控设备不记录前端设备的控制信息,只转发客户端下发的控制指令到前端设备,因此会造成同一前端设备接收到不同客户端下发的不同控制指令,出现控制混乱;另外,由于权限信息数据存储在主控设备中,每个控制设备都拥有一套独立的权限数据,只在本控制设备范围内有效,无法实现大规模的级联。
随着视频监控的飞速发展,大规模综合监控系统(如城市监控)、远距离跨区域布控和错综复杂的组网模式已经出现,控制中心多、视频控制资源多、层次复杂这一实际情况,使得上述两种控制方案会导致视频控制资源抢占的混乱局面、无法解决不同用户、尤其是跨区域间的控制权限和控制冲突问题。
上述仅以视频监控系统为例,事实上,对于其他诸如监听系统、出入检测系统、视频辅助系统(如摄像机辅助红外灯、排风、加热等系统)、报警系统、入侵检测系统、楼宇控制系统等相关控制系统也同样存在上述控制权限和控制冲突问题。

发明内容
有鉴于此,本发明提供一种对前端设备进行控制的方法,能够对前端设备的控制权限、控制冲突进行统一控制。
本发明还提供一种对前端设备进行控制的系统,能够对前端设备的控制权限、控制冲突进行统一控制。
本发明又提供一种管理服务器,能够对前端设备的控制权限、控制冲突进行统一控制。
为实现上述目的,本发明采用如下的技术方案
一种对前端设备进行控制的方法,该前端设备与一管理服务器相连接,该方法包括管理服务器接收客户端发送的控制前端设备的请求消息,并根据请求消息中携带的前端设备的标识,获取该前端设备是否受控的受控信息;管理服务器根据受控信息,判断是否允许所述客户端控制该前端设备;根据判断结果执行对前端设备的控制。
较佳地,该方法可以进一步包括配置控制权限信息的步骤,该控制权限信息中至少包括一用户是否有权控制一前端设备的信息;在管理服务器接收到所述控制前端设备的请求消息时,可以进一步包括管理服务器根据请求消息中携带的当前用户的标识获取该用户的控制权限信息;所述管理服务器可以进一步根据所获取的控制权限信息判断是否允许所述客户端控制该前端设备。
较佳地,所述判断是否允许所述客户端控制该前端设备的步骤可以包括管理服务器首先根据前端设备的受控信息判断该前端设备是否已受控,若不受控,再根据所获取的控制权限信息判断当前用户是否有权控制该前端设备,如是,则判断允许所述客户端控制该前端设备。
较佳地,所述判断是否允许所述客户端控制该前端设备的步骤可以包括管理服务器首先根据所获取的控制权限信息判断当前用户是否有权控制该前端设备,如是,再根据前端设备的受控信息判断该前端设备是否已受控,若不受控,则判断允许所述客户端控制该前端设备。
较佳地,所述的控制权限信息中可以进一步包括用户控制权限级别的优先级信息;所述判断是否允许所述客户端控制该前端设备的步骤可以包括管理服务器根据前端设备的受控信息判断该前端设备是否已受控,并且,根据获取的控制权限信息,判断当前用户是否有权控制该前端设备,如果判断出该前端设备已受控且当前用户有权控制该前端设备,则根据所述用户控制权限级别的优先级信息,继续判断当前用户控制权限级别的优先级是否大于当前控制该前端设备用户的控制权限级别的优先级,如果判断出大于,则判断允许所述客户端控制该前端设备。
较佳地,所述的控制权限信息中可以进一步包括同优先级抢占策略的信息;如果判断出当前用户控制权限级别的优先级等于当前控制该前端设备用户控制权限级别的优先级时,进一步包括管理服务器根据所述的同优先级抢占策略,判断是否允许当前用户抢占,如果是,则判断允许所述客户端控制该前端设备。
较佳地,当所述的前端设备与所述的客户端分别连接于不同的管理服务器时,所述的管理服务器接收的控制前端设备的请求消息为客户端通过与其连接的管理服务器转发的。
较佳地,在判断允许所述客户端控制前端设备后,可以进一步包括管理服务器接收所述客户端发送的对前端设备的控制指令,根据该控制指令中携带的当前用户标识,判断该控制指令是否接收自所述当前用户,若是,则将控制指令转发给所述前端设备,否则,向所述客户端返回控制失败的消息。
较佳地,在判断允许所述客户端控制前端设备后,可以进一步包括客户端将锁定请求发送至管理服务器,管理服务器根据该锁定请求将前端设备的受控信息更改为锁定状态,并拒绝其他用户对该前端设备的控制请求。
一种对前端设备进行控制的系统,包括客户端、管理服务器和前端设备,所述前端设备与所述管理服务器相连接,管理服务器,接收客户端发送的控制前端设备的请求消息,并根据请求消息中携带的前端设备的标识,获取该前端设备是否受控的受控信息,根据该受控信息,判断是否允许所述客户端控制该前端设备,若是,则将成功响应消息发送给所述客户端,否则,将失败响应消息发送给所述客户端。
较佳地,该系统可以进一步包括数据中心,存储控制权限信息,该控制权限信息中至少包括一用户是否有权控制一前端设备的信息;所述管理服务器,进一步根据请求消息中携带的当前用户的标识从所述数据中心获取当前用户的控制权限信息,并根据该控制权限信息,判断是否允许所述客户端控制该前端设备。
较佳地,所述数据中心,可以进一步存储前端设备是否受控的受控信息;所述管理服务器,从所述数据中心获取前端设备是否受控的受控信息。
一种管理服务器,该管理服务器包括客户端接口单元和控制单元,其中,所述客户端接口单元,接收客户端发送的控制前端设备的请求消息,将控制单元发送的成功响应消息或失败响应消息转发给外部的客户端;所述控制单元,根据客户端接口单元所接收到请求消息中携带的前端设备的标识,获取该前端设备是否受控的受控信息,根据该受控信息,判断是否允许所述客户端控制该前端设备,若是,则将成功响应消息发送给客户端接口单元,否则,将失败响应消息发送给客户端接口单元。
较佳地,所述控制单元,进一步根据所述请求消息中携带的当前用户的标识获取该用户的控制权限信息,根据所获取的控制权限信息判断是否允许所述客户端控制该前端设备。
较佳地,所述控制单元可以包括查询子单元和判断子单元,其中,所述查询子单元,获取所述前端设备是否受控的受控信息和当前用户的控制权限信息,将所获取的受控信息和控制权限信息发送给所述判断子单元;所述判断子单元,根据所述受控信息和所述控制权限信息,判断是否允许所述客户端控制该前端设备。
较佳地,所述查询子单元,从外部获取前端设备的受控信息;或者,所述控制单元进一步包括存储子单元,存储前端设备是否受控的受控信息,则所述查询子单元从所述存储子单元获取所述前端设备是否受控的受控信息。
由上述技术方案可以看出,本发明在当前用户控制前端设备前,首先通过客户端向管理服务器发送控制请求,以限制当前用户对前端设备的随意控制;管理服务器根据请求消息中携带的前端设备的标识,获取该前端设备的受控信息,并根据该受控信息,判断是否允许当前用户控制该前端设备。利用本发明,由前端设备所在区域的管理服务器统一管理用户对该前端设备的控制,并且在同一时间,只允许一个用户对前端设备进行控制,解决了控制冲突的问题,实现了前端设备控制权限、控制冲突的统一集中管理。
更进一步地,可以配置用户对前端设备的控制权限,区分不同用户对于前端设备的不同控制权限;在判断是否允许当前用户控制该前端设备时,进一步根据用户对前端设备的控制权限信息进行。这样利用配置的控制权限信息,为管理服务器判断前端设备控制权的归属提供了统一的标准。为管理员提供了良好的管理手段,为用户提供了便捷合理的控制方式。
另外,由于本发明采用统一的数据中心存储用户的控制权限信息,使用户控制权限信息实现了全网统一;同时,在本地和异地管理服务器间进行交互,实现了跨区域间的前端设备控制,为大规模级联应用创造了条件。
总之,本发明提高了系统的稳定性,为合理利用资源、精确分配控制权限、控制冲突管理提供了良好的解决方案。


图1为矩阵联网系统的控制方案示意图。
图2为目前基于主控设备的系统控制方案示意图。
图3为本发明的对前端设备进行控制的方法总体流程图。
图4为本发明的对前端设备进行控制的系统总体结构图。
图5为本发明的对前端设备进行控制的管理服务器总体结构图。
图6为本发明实施例一中对前端设备进行控制的方法具体流程图。
图7为本发明实施例一中对前端设备进行控制的系统和管理服务器的具体结构图。
图8为本发明实施例二中对前端设备进行控制的方法具体流程图。
图9为本发明实施例二中对前端设备进行控制的系统和管理服务器的具体结构图。
具体实施例方式
为使本发明的目的、技术手段和优点更加清楚明白,以下结合附图并举实施例说明对本发明作进一步详细说明。
本发明的基本思想为在当前用户控制前端设备前,当前用户首先通过客户端向管理服务器发送控制前端设备的请求消息,管理服务器根据请求消息中携带的前端设备的标识,获取该前端设备的受控信息,并根据该受控信息,判断是否允许客户端控制该前端设备。
图3为本发明的对前端设备进行控制的方法总体流程图。如图3所示,该方法包括步骤301,管理服务器接收客户端发送的控制前端设备的请求消息。
本步骤中,在发送的请求消息中携带前端设备的标识和当前用户的标识。
步骤302,管理服务器根据请求消息中携带的前端设备的标识,获取该前端设备是否受控的受控信息。
步骤303,管理服务器根据前端设备的受控信息,判断是否允许客户端控制该前端设备,若是,则执行步骤304,否则执行步骤305。
本步骤中,管理服务器判断是否允许客户端控制前端设备时,可以进一步根据预先配置的用户对前端设备的控制权限信息进行。
步骤304,触发客户端控制前端设备。
步骤305,禁止客户端控制前端设备。
步骤304和305中触发客户端控制前端设备及禁止客户端控制前端设备的方式可以为向客户端返回请求成功响应消息及请求失败响应消息。也可以通过其它方式进行,比如,利用返回请求成功响应消息表示触发客户端控制前端设备的过程,而默认的没有任何处理则表示禁止客户端控制前端设备的过程;或者,利用返回请求失败响应消息表示禁止客户端控制前端设备的过程,而默认的没有任何处理则表示触发客户端控制前端设备的过程。
图4为本发明的对前端设备进行控制的系统总体结构图。如图4所示,该系统包括客户端410、管理服务器420和前端设备430。
在该系统中,客户端410,将当前用户输入的控制前端设备的请求消息发送给管理服务器420,并接收管理服务器420返回的响应消息;进一步地,在接收到成功响应消息时,根据用户输入,向管理服务器420发送控制指令。
管理服务器420,接收客户端发来的控制前端设备的请求消息,根据请求消息中携带的前端设备的标识,获取该前端设备的受控信息,并根据该受控信息,判断是否允许客户端410控制该前端设备,若是,则将成功响应消息发送给客户端410,否则,将失败响应消息发送给客户端410;进一步地,在允许客户端410控制前端设备430后,将客户端410发送的控制指令转发给前端设备430。
前端设备430,接收管理服务器420转发的控制指令,并根据该指令执行相应操作。
在本发明系统中,客户端410和前端设备430的功能与现有技术中的基本相同。
图5为本发明的对前端设备进行控制的管理服务器总体结构图,在本发明中,该管理服务器420包括客户端接口单元421、控制单元422和前端设备接口单元423。
在该管理服务器420中,客户端接口单元421,接收客户端发送的控制前端设备的请求消息,将控制单元422发来的成功响应消息或失败响应消息发送给外部的客户端。
控制单元422,根据客户端接口单元421所接收到请求消息中携带的前端设备的标识,获取该前端设备的受控信息,根据该受控信息,判断是否允许客户端控制该前端设备,若是,则将成功响应消息发送给客户端接口单元421,否则,将失败响应消息发送给客户端接口单元421。
前端设备接口单元423,接收客户端接口单元421转发的前端设备控制指令,并将该指令发送给前端设备。
在本发明中,管理服务器中的前端设备接口单元423的功能与现有技术中的相同。
上面是对本发明的对前端设备进行控制的方法、系统和管理服务器的总体概述,在下面的实施例中,以视频监控系统中对云台摄像机的控制为例说明本发明中对前端设备进行控制的方法、系统和管理服务器的具体实施方式

本发明对于同一区域内的网络和不同区域内的网络均可以适用。在不同区域内的网络中,会涉及到本地用户和异地用户对前端设备的不同控制。另外,根据用户请求时前端设备是否处于其它用户控制下,整个控制过程也会有所不同。
下面两个实施例就分别以本地用户请求控制目前未受控的前端设备和异地用户请求控制目前处于受控状态的前端设备为例,说明本发明的具体实施方式

首先介绍一下本地用户和异地用户的概念。当用于发送用户请求的客户端和用户要求控制的前端设备处于同一个管理服务器的控制下时,称该用户为本地用户,称前端设备所在的管理服务器为本地管理服务器;当用于发送用户请求的客户端和用户要求控制的前端设备处于不同的管理服务器的控制下时,称该用户为异地用户,称前端设备所在的管理服务器为本地管理服务器,称用户使用的客户端所在的管理服务器为异地管理服务器。
实施例一本实施例中,假定本地用户A希望控制云台摄像机B,云台摄像机B的受控信息存储于管理服务器中,则本地用户A即为当前用户,云台摄像机B即为前端设备。
图6为本发明实施例一中对前端设备进行控制的方法具体流程图。如图6所示,该方法包括步骤601,配置用户对云台摄像机的控制权限。
本步骤中,用户对云台摄像机的控制权限可以配置在数据中心中。
通常,在用户注册时,执行本步骤中为用户配置对云台摄像机的控制权限的过程,可以由管理员直接配置,或者由系统配置默认值,再由管理员根据需要随时更新。
最基本地,为用户配置云台摄像机控制权限的方式可以包括规定用户是否具有某云台摄像机的控制权限。当规定用户具有某云台摄像机的控制权限时,还可以进一步规定用户对于该前端设备的控制优先级。
例如,用户A新加入该系统,系统为用户A配置对于某云台摄像机的控制权限时,可以规定其不具有对该云台摄像机的控制权限,即系统规定该用户不能控制该云台摄像机,或者可以规定用户A具有对该云台摄像机的控制权限,且为其设置控制权限优先级的级别。
在对系统进行配置时,还可以包括对同优先级抢占策略和用户锁定策略的设置。
由于不同的用户可能被配置为对同一前端设备的控制优先级相同,可能会出现同优先级的用户抢占控制某前端设备,因此,系统还可以预先配置同优先级抢占策略,控制同优先级用户对于控制权限的分配问题。具体地,根据系统用户的需求,可以将同优先级的抢占策略配置为超时抢占、立即抢占等。超时抢占,即规定某用户的最长控制时间,当发生同优先级用户抢占时,先由原控制用户C控制前端设备,即云台摄像机B,并开始计时,当计时时间到达规定的最长控制时间时,则将云台摄像机B的控制权赋予抢占用户A;立即抢占,即发生同优先级用户抢占时,管理服务器立即将云台摄像机B的控制权由原控制用户C转给抢占用户A。
较佳地,为保证低优先级用户在特殊情况下,控制权不被抢占,本发明实施例还提供了锁定功能,可以在本步骤中为系统设置锁定策略。具体为根据需要,由管理员预先设定对于云台摄像机的最长锁定时间,以防止个别用户长期占用前端设备的控制权,或者也可以设定为永久锁定。
对于上述各类信息和策略的设置,均可以由系统的超级管理员来设置。该超级管理员在系统创建初期,对系统进行各项配置,如用户的添加、用户身份信息和控制权限信息的指定、锁定策略、同优先级抢占策略等。该超级管理员对系统中前端设备的控制权限优先级为最高级,可以抢占任何前端设备的控制权,且不会被其他用户抢占,也可以抢占处于锁定状态的前端设备的控制权。
步骤602,管理服务器接收用户A通过客户端发来的控制云台摄像机B的请求消息。
本步骤中,当用户A希望控制云台摄像机B时,首先通过某个客户端向管理服务器发送控制请求消息。在发送的控制请求消息中携带了用户A的标识和云台摄像机B的标识。
用户A通过客户端上发送控制指令的面板向云台摄像机B发送控制指令。在未得到管理服务器下发的控制权之前,客户端上向云台摄像机B发送控制指令的面板是关闭的,即使用户A能够看到云台摄像机B,由于发送控制指令的面板关闭,也无法发送控制指令到云台摄像机B。
步骤603,管理服务器根据请求消息中携带的用户A的标识和云台摄像机B的标识,获取用户A的控制权限信息和云台摄像机B的受控信息。
由于用户A的控制权限信息存储在数据中心,因此本步骤中,管理服务器从数据中心获取用户控制权限信息。
具体地,数据中心可以首先验证用户A的合法性,进而查询用户A对云台摄像机B的控制权限信息,并将用户A的合法性及控制权限信息返回给管理服务器。
云台摄像机B的受控信息包括目前是否存在用户控制该云台摄像机,以及控制该云台摄像机用户的控制权限信息。由管理服务器根据当前前端设备的状态,对前端设备的受控信息进行实时更新。
云台摄像机B的受控信息可以存储在数据中心或管理服务器中,本实施例以存储在管理服务器为例。则本步骤中,管理服务器在本身的存储单元中查询云台摄像机B的受控信息。
本实施例中,云台摄像机B的受控信息可以通过对应前端设备的设备控制块记录。具体地,在系统中,当某云台摄像机上线后,系统为其建立唯一对应的设备控制块,在该设备控制块中记录该云台摄像机的标识,如云台摄像机B。当某用户获得该云台摄像机的控制权后,管理服务器更新设备控制块信息,将用户的控制权限信息写入设备控制块,若被锁定,则将锁定状态、时间信息等写入设备控制块。设备控制块中记录的用户标识所代表的用户即为当前控制该设备控制块对应的云台摄像机的用户。将对云台摄像机的控制权赋予某用户,即将该云台摄像机对应的设备控制块中的用户标识表示为该用户。
本步骤中,获取用户的控制权限信息和获取前端设备的受控信息的操作可以同时执行,或以任意顺序先后执行。
步骤604,管理服务器根据配置的用户A的控制权限信息和云台摄像机B的受控信息,判断是否允许用户A控制云台摄像机B,若是,则执行步骤605~609,否则执行步骤610。
本步骤中,根据配置的用户A的控制权限信息和云台摄像机B的受控信息,判断是否允许用户A控制云台摄像机B的方式可以有如下三种方式第一种方式为,管理服务器根据受控信息,判断当前是否已有其他用户控制云台摄像机B,也即云台摄像机B是否已受控,若不受控,则根据请求消息中携带的用户A的标识获取用户A的控制权限信息,并根据该控制权限信息,判断用户A是否有权控制该前端设备,如果有权,则继续执行步骤605~609。
第二种方式为,管理服务器根据请求消息中携带的用户A的标识获取用户A的控制权限信息,并根据该控制权限信息,判断用户A是否有权控制云台摄像机B,如果有权,则根据云台摄像机B的受控信息判断当前是否已有其他用户控制云台摄像机B,若没有,则继续执行步骤605~609。
第三种方式为,管理服务器根据云台摄像机B的受控信息判断当前是否已有其他用户控制云台摄像机B,并且,根据请求消息中携带的用户A的标识获取用户A的控制权限信息,进一步根据该控制权限信息,判断用户A是否有权控制云台摄像机B,如果判断出已有其他用户控制云台摄像机B且用户A有权控制云台摄像机B,则根据所配置的用户控制权限的优先级,继续判断用户A的控制权限的优先级是否大于该其他用户的控制权限的优先级,如果判断出大于,则继续执行步骤605~609。
对于上述第三种方式,可以有进一步改进的方案为,在所配置的控制权限信息中进一步包括同优先级抢占策略,如果判断出用户A的控制权限的优先级等于该其他用户的控制权限的优先级时,进一步包括管理服务器根据所配置的同优先级抢占策略,判断是否允许用户A抢占,如果是,则继续执行步骤605~609。
步骤605,管理服务器将云台摄像机B的设备控制块中的用户信息标识为用户A,并通知客户端,用户A控制云台摄像机B的请求成功。
当前端设备的受控状态发生变化时,由管理服务器对前端设备的受控信息进行更新。具体地,本步骤中,管理服务器在云台摄像机B的设备控制块记录控制用户A的标识和控制信息。
步骤606,客户端接收到管理服务器发送的请求成功消息后,即打开云台摄像机B的控制面板,用户A通过客户端向管理服务器发送控制指令。
本步骤中,当客户端接收到控制请求成功的消息后,将一直关闭的云台摄像机B的控制面板打开,使用户A能够输入控制指令,并将用户A输入的控制指令发送给管理服务器。
步骤605~606即是本实施例中触发用户控制前端设备流程的具体方式。
步骤607,管理服务器将控制指令发送给云台摄像机B,云台摄像机B根据控制指令执行相应操作。
用户A希望自身对云台摄像机B的控制不被轻易抢占,于是要锁定云台摄像机B,可以执行以下操作步骤608,用户A通过客户端向管理服务器发送锁定请求,请求锁定云台摄像机B。
本步骤中,用户A为使自身对云台摄像机B的控制权不被抢占,启动锁定。
步骤609,管理服务器接收到锁定请求,对云台摄像机B的设备控制块进行更新,并结束本流程。
本步骤中,管理服务器接收到用户A发送的锁定请求后,更新云台摄像机B的设备控制块,具体为写入锁定状态,并将控制云台摄像机B的用户A的控制权限优先级更改为次高级。
通常,普通用户的控制权限最高级只能设置为步骤601中设置的所有控制权限优先级别的次高级,因此,将用户A的控制权限优先级设为次高级。这样,在步骤601中设置的锁定策略允许的范围内,用户A即可以控制云台摄像机B,而不受其他低级别用户的打扰。具体地,当有控制权限优先级低于次高级、高于用户A原有级别的用户请求抢占云台摄像机B的控制权时,管理服务器通过比较用户A与抢占用户的控制权限优先级,由于设备控制块中记录的用户A的控制权限优先级为次高级,因此将会拒绝抢占用户的请求,由用户A继续控制云台摄像机B。但是,由于超级管理员用户具有最高级的控制优先权,因此,超级管理员用户可以抢占用户A对于云台摄像机B的控制权。
当用户A对云台摄像机B的锁定超出锁定策略允许的范围时,如超出设置的最大锁定时间,即对云台摄像机B进行解锁,更新云台摄像机B的设备控制块。具体为取消云台摄像机B的锁定状态,将记录在设备控制块中的用户A控制权限优先级恢复为其原有的优先级。
步骤610,管理服务器通知客户端拒绝用户A控制云台摄像机B的请求,客户端接收到失败响应消息后,将该消息显示给用户A,并保持云台摄像机B的控制面板处于关闭状态,使用户A无法输入控制指令控制云台摄像机B。
步骤610即是本实施例中禁止用户控制前端设备流程的具体方式。
至此,本实施例中对云台摄像机进行控制的方法流程结束。
在上述实施例中,步骤604判断是否允许用户A控制云台摄像机B时,采用的是优选的实施方式,即根据云台摄像机B的受控信息和配置的用户A的控制权限信息进行判断。
当然,实际应用中,也可以仅根据云台摄像机B的受控信息进行判断,当云台摄像机B的受控信息表明目前没有其它用户控制云台摄像机B时,则执行步骤605~609,否则执行步骤610的操作。在这种情况下,步骤601中配置用户的控制权限信息的操作就可以不执行了。
上述为本实施例中提供的对前端设备进行控制的方法具体流程。本实施例还提供了对前端设备进行控制的系统和管理服务器的具体结构,该系统和管理服务器分别为图4所示系统和图5所示管理服务器的一种具体实施方式
,可以用于实施上述控制方法。图7即为本发明实施例一提供的对前端设备进行控制的系统具体结构图。如图7所示,该系统包括客户端410、管理服务器420、云台摄像机430和数据中心440。其中,管理服务器420具体包括客户端接口单元421、控制单元422和前端设备接口单元423。其中,控制单元422包括查询子单元422a、判断子单元422b和存储子单元422c。
在该系统中,客户端410,向管理服务器420发送控制云台摄像机430的请求消息,在接收到管理服务器420的请求成功消息后,打开控制云台摄像机430的面板,将用户输入的控制指令发送给管理服务器420。
在管理服务器420中,客户端接口单元421,接收客户端410发送的控制前端设备的请求消息,将控制单元422发送的成功响应消息或失败响应消息发送给客户端410,并将客户端410发送的控制云台摄像机430的指令转发给前端设备接口单元423。
在控制单元422中,查询子单元422a,根据客户端接口单元421所接收到请求消息中携带的前端设备的标识,一方面,从数据中心440获取用户的控制权限信息,发送给判断子单元422b;另一方面,在存储子单元422c中获取云台摄像机430的受控信息,具体可以查询其对应的设备控制块中存储的信息,并将查询结果发送给判断子单元422b。判断子单元422b,根据接收的用户控制权限信息和云台摄像机430的受控信息,判断是否允许用户控制云台摄像机430,并将成功响应消息或失败响应消息发送给客户端接口单元421。存储子单元422c,存储管理服务器420控制下的所有云台摄像机的受控信息,具体可以为云台摄像机对应的设备控制块。
前端设备接口单元423,接收客户端接口单元421转发的云台摄像机430控制指令,并将该指令发送给云台摄像机430。
数据中心440,存储配置的用户控制权限信息,为管理服务器420中的查询子单元422a提供用户的控制权限信息。云台摄像机430,接收管理服务器420中前端设备接口单元423转发的控制指令,并根据该指令执行相应操作。
在上述系统中,数据中心440可以是集中式的数据中心,也可以是分布式的。当数据中心为分布式时,多个数据源物理上分布在各分控中心,通过互联共享机制组成一个逻辑上数据中心,开放统一的访问接口,对监控服务器来说访问的是数据中心而不是各个数据源。于是,对应图6中步骤603的管理服务器通过数据中心获取用户的控制权限信息时,通过访问接口访问数据中心。
上述即为应用本发明的对前端设备进行控制的方法、系统和管理服务器,本地用户对目前未受控的前端设备进行控制的过程。由上述可以看出,本实施例中,由于前端设备未受任何其他用户的控制,因此管理服务器在判断当前请求的用户是否可以控制该前端设备时,只需要考虑该用户是否有权控制该前端设备,而不需要考虑该用户控制权限的优先级。
另外,由于本实施例中发起请求的用户是本地用户,因此用户使用的客户端与控制云台摄像机的管理服务器间的交互是直接进行的。
实施例二本实施例中,假定异地用户A希望控制云台摄像机B,并且在用户A请求控制云台摄像机B时,云台摄像机B正处于本地用户C的控制之下。用户A所在区域的管理服务器为异地管理服务器D,云台摄像机B所在区域的管理服务器为本地管理服务器E,云台摄像机B的受控信息存储于数据中心内。由于本实施例中由异地用户对前端设备进行控制,因此管理服务器包括本地管理服务器和异地管理服务器,即本实施例中的本地管理服务器E和异地管理服务器D共同组成了图3中所述的管理服务器。异地用户A即为当前用户,云台摄像机B即为前端设备。
图8为本发明实施例二中对前端设备进行控制的方法具体流程图。如图8所示,该方法包括步骤801,配置用户对云台摄像机的控制权限。
本步骤中,配置用户对云台摄像机控制权限、以及同优先级抢占策略、锁定策略等的方式与实施例一中图6所示步骤601中的方式相同,这里就不再赘述。
步骤802,管理服务器接收用户A通过客户端发来的控制云台摄像机B的请求消息。
本实施例中,由于用户A是异地用户,当用户A希望控制云台摄像机B时,首先通过异地管理服务器D控制下的某个客户端向异地管理服务器D发送控制请求;异地管理服务器D向本地管理服务器E发送漫游控制请求,通知本地管理服务器E用户A请求控制云台摄像机B。
在未得到管理服务器下发的控制权之前,客户端上向云台摄像机B发送控制指令的面板是关闭的,即使用户A能够看到云台摄像机B,由于发送控制指令的面板关闭,也无法发送控制指令到云台摄像机B。
在发送的控制请求消息中携带了用户A的标识和云台摄像机B的标识。
步骤803,本地管理服务器E根据请求消息中携带的用户A的标识和云台摄像机B的标识,获取用户A的控制权限信息和云台摄像机B的受控信息。
本步骤中,本地管理服务器E获取用户A的控制权限信息的方式与实施例一图6所示的步骤603相同,这里就不再赘述。
本实施例也采用设备控制块来记录云台摄像机的受控信息,且以该受控信息存储在数据中心为例,则本步骤中,管理服务器需要通过访问数据中心获取云台摄像机B的受控信息。
步骤804,本地管理服务器E根据配置的用户A的控制权限和云台摄像机B的受控信息,判断是否允许用户A控制云台摄像机B,若是,则执行步骤805~810,否则执行步骤811。
本步骤中,根据配置的用户A的控制权限信息和云台摄像机B的受控信息,判断是否允许用户A控制云台摄像机B的方式可以有如下三种方式第一种方式为,管理服务器根据受控信息,判断当前是否已有其他用户控制云台摄像机B,也即云台摄像机B是否已受控,若没有,则根据请求消息中携带的用户A的标识获取用户A的控制权限信息,并根据该控制权限信息,判断用户A是否有权控制该前端设备,如果有权,则继续执行步骤805~810。
第二种方式为,管理服务器根据请求消息中携带的用户A的标识获取用户A的控制权限信息,并根据该控制权限信息,判断用户A是否有权控制云台摄像机B,如果有权,则根据云台摄像机B的受控信息判断当前是否已有其他用户控制云台摄像机B,若没有,则继续执行步骤805~810。
第三种方式为,管理服务器根据云台摄像机B的受控信息判断当前是否已有其他用户控制云台摄像机B,并且,根据请求消息中携带的用户A的标识获取用户A的控制权限信息,进一步根据该控制权限信息,判断用户A是否有权控制云台摄像机B,如果判断出已有其他用户控制云台摄像机B且用户A有权控制云台摄像机B,则根据所配置的用户控制权限的优先级,继续判断用户A的控制权限的优先级是否大于该其他用户的控制权限的优先级,如果判断出大于,则继续执行步骤805~810,如果判断出小于,则继续执行步骤811。
对于上述第三种方式,可以有进一步改进的方案为,在所配置的控制权限信息中进一步包括同优先级抢占策略,如果判断出用户A的控制权限的优先级等于该其他用户的控制权限的优先级时,进一步包括管理服务器根据所配置的同优先级抢占策略,判断是否允许用户A抢占,如果是,则继续执行步骤805~810,否则,执行步骤811。
步骤805,本地管理服务器E更新云台摄像机B的设备控制块,并通知异地管理服务器D,用户A控制云台摄像机B的请求成功;通知用户C使用的客户端,控制权被抢占。
本步骤中,本地管理服务器E为云台摄像机B更新设备控制块,将该设备控制块中记录的控制用户的信息更新为用户A的信息。
步骤806,客户端接收到异地管理服务器D转发的请求成功消息后,即打开控制云台摄像机B的面板,用户A通过客户端向异地管理服务器D发送控制指令。
本步骤中,当客户端接收到控制请求成功的消息后,将一直关闭的控制云台摄像机B的面板打开,使用户A能够输入控制指令,并将用户A输入的控制指令发送给管理服务器。
步骤805~806即是本实施例中触发用户控制前端设备流程的具体方式。
步骤807,异地管理服务器D将控制指令转发给本地管理服务器E。
步骤808,本地管理服务器E根据控制指令验证发送指令的用户是否为当前云台摄像机B的控制用户A,若是,则继续执行步骤809,否则执行步骤810。
本步骤中,本地管理服务器E在接收到用户发送的控制指令后,进一步包括验证用户的操作。具体为从接收到的控制指令中提取发送指令用户的身份信息,并查询云台摄像机B的控制用户的身份信息,判断发送指令的用户是否为控制用户。若二者信息一致,则表示发送指令的用户为该控制用户;否则,表示发送指令的用户并非该控制用户。
步骤809,本地管理服务器E将控制指令发送给云台摄像机B,云台摄像机B根据控制指令执行相应操作,并结束本流程。
步骤810,本地管理服务器E通过异地管理服务器D通知客户端,用户A目前无权控制云台摄像机B,并通知客户端关闭控制云台摄像机B的面板。
步骤811,本地管理服务器E通过异地管理服务器D通知客户端,拒绝用户A控制云台摄像机B的请求,客户端接收到失败响应消息后,将该消息显示给用户A,并保持云台摄像机B的控制面板处于关闭状态,使用户A无法输入控制指令控制云台摄像机B。
步骤811即是本实施例中禁止用户控制前端设备流程的具体方式。
至此,本实施例中对云台摄像机控制权限的管理方法流程结束。
在上述实施例中,步骤804判断是否允许用户A控制云台摄像机B时,采用的是优选的实施方式,即根据云台摄像机B的受控信息和配置的用户A的控制权限信息进行判断。
当然,实际应用中,也可以仅根据云台摄像机B的受控信息进行判断,当云台摄像机B的受控信息表明目前没有其它用户控制云台摄像机B时,则执行步骤805~810,否则执行步骤811的操作。在这种情况下,步骤801中配置用户的控制权限信息的操作就可以不执行了。
上述为本实施例中提供的对前端设备进行控制的方法具体流程。本实施例还提供了对前端设备进行控制的系统和管理服务器的具体结构,该系统和管理服务器分别为图4所示的系统和图5所示的管理服务器的一种具体实施方式
,可以用于实施上述控制方法。图9为本发明实施例二中对前端设备控制权限的管理系统的具体结构图。如图9所示,该系统包括客户端410、本地管理服务器420′、数据中心440、云台摄像机430和异地管理服务器420″。其中,本地管理服务器420′和异地管理服务器420″构成了图5所示的管理服务器420。其中,本地管理服务器420′包括客户端接口单元421′、控制单元422′、前端设备接口单元423′、服务器接口单元424′和指令验证单元425′;异地管理服务器包括客户端接口单元421″和服务器接口单元424″。本地管理服务器420′中的控制单元422′包括查询子单元422a′和判断子单元422b′。客户端410为异地用户A使用的客户端,也即发起控制请求的用户使用的客户端。
在该系统中,客户端410,接受用户控制,向异地管理服务器420″发送控制云台摄像机430的请求,在接收到异地管理服务器420″的请求成功消息后,打开云台摄像机430的控制面板,将用户输入的控制指令发送给异地管理服务器420″,并在接收到异地管理服务器420″发送的用户控制失败消息及关闭云台摄像机430的控制面板的消息后,关闭云台摄像机430的控制面板。
在异地管理服务器420″中,客户端接口单元421″,接收客户端410发送的请求信息,并将该请求转发给服务器接口单元424″,将服务器接口单元424″转发的请求成功信息发送给客户端410,并将客户端发送的控制云台摄像机430的指令转发给服务器接口单元424″,将服务器接口单元424′转发的用户控制失败消息及关闭云台摄像机430的控制面板的消息发送给客户端410。服务器接口单元424″,根据客户端410发送的控制请求,向本地管理服务器420′发送漫游控制请求,并将接收自本地管理服务器420′的判断结果发送给客户端410,将接收自客户端410的云台摄像机的控制指令转发给本地管理服务器420′,将本地管理服务器420′发送的用户控制失败消息及关闭云台摄像机430的控制面板的消息转发给客户端接口单元421″。
在本地管理服务器420′中,服务器接口单元424′,接收异地管理服务器420″中服务器接口单元424″发送的漫游控制请求,将控制单元422′发送的成功响应消息或失败响应消息转发给异地管理服务器420″,并将异地管理服务器420″发送的控制云台摄像机的指令转发给指令验证单元425′,接收指令验证单元425′发送的控制失败消息,转发给异地管理服务器420″,令其通知客户端410关闭云台摄像机430的控制面板。
在控制单元422′中,查询子单元422a′,根据服务器接口单元424′接收到请求消息中的当前用户的标识和前端设备标识,从数据中心440获取当前用户的控制权限信息,并将该信息发送给判断子单元422b′,从数据中心440获取云台摄像机430的受控信息,具体可以查询其对应的设备控制块中的信息,并将接收自数据中心440的查询结果发送给判断子单元422b′。判断子单元422b′,根据接收的用户控制权限信息和云台摄像机的受控信息,判断是否允许用户对云台摄像机的控制,并将成功响应消息或失败响应消息发送给服务器接口单元424′。
指令验证单元425′,接收服务器接口单元424′转发的云台摄像机430的控制指令,并根据控制指令中的用户标识验证该发送指令的用户是否为云台摄像机430的控制用户,当发送指令的用户为云台摄像机430的控制用户时,将控制指令转发给前端设备接口单元423′,当发送指令的用户不是云台摄像机430的控制用户时,向服务器接口单元424′发送用户控制失败的消息。
前端设备接口单元423′,接收指令验证单元425′转发的云台摄像机430控制指令,并将该指令发送给云台摄像机430。
客户端接口单元421′,将控制单元422中判断子单元422b发送的控制权被抢占的消息转发给原来控制云台摄像机430的客户端。
数据中心440,存储配置的用户的控制权限信息,为本地管理服务器420′中的查询子单元422a′提供当前用户的控制权限信息;存储系统中所有云台摄像机的受控信息,具体可以为云台摄像机对应的设备控制块。云台摄像机430,接收本地管理服务器420′中前端设备接口单元423′转发的控制指令,并根据该指令执行相应操作。
与实施例一不同,本实施例中,假定前端设备的受控信息,也即设备控制块,存储在数据中心,因此在本地管理服务器420′的控制单元421′中不存在存储子单元421c′,而是由数据中心440完成存储设备控制块的功能。当然,在实施本发明时,也可以按照实施例一的方式,将设备控制块存储在管理服务器中,其结构及其与其他单元的连接关系也与实施例一中相同。
与实施例一的另外一点不同在于,本实施例中在当前用户获得前端设备的控制权后,向管理服务器发送控制指令时,为进一步保证控制的合法性,在管理服务器对发送控制指令的用户进行身份验证,以保证发送控制指令的用户为当前前端设备的控制用户。利用本实施例的方法,能够在用户未获得前端设备控制权前,利用非常规手段发送控制指令到管理服务器中时,及早发现该控制指令的非法性,不再将该控制指令发送给前端设备,进一步避免控制冲突的出现。
本实施例为针对异地用户发起控制请求时,处理控制权限管理的具体实施方式
。与本地用户发起控制请求相比,差别在于,异地用户需要通过其使用的客户端所在区域的异地管理服务器向前端设备所在的本地管理服务器发送请求,及接收响应消息,也即采用漫游请求和响应的方式。通过这种方式,使得网络的扩容和网络间的互联更加方便易行,使本发明在进行大规模应用时的复杂度不会骤增,使应用本发明的系统拥有无缝扩展能力,可以适于跨区域的前端设备控制。
由上述可以看出,在本发明中,由管理服务器统一管理前端设备的控制,本实施例中具体为设置设备控制块,当发生控制抢占时,管理服务器比较当前用户的控制权限和原控制用户的控制权限,允许具有较高控制权限优先级的用户控制前端设备,同时禁止优先级低的用户控制前端设备,从而避免出现多个用户同时发送控制指令控制前端设备的控制冲突,保证在同一时间,只有一个用户可以控制前端设备。提高了系统的稳定性,为合理利用资源、精确分配权限、冲突管理提供了良好的解决方案。完全解决了前端设备数量庞大、客户端众多的应用中,传统监控无法解决的前端设备控制权限、控制冲突的管理,结束了前端设备控制冲突、抢占混乱的局面。
本发明的实施例均是以视频监控系统为例说明的本发明的具体实施方式
,其中将云台摄像机作为前端设备的具体形式。事实上,本发明同样可以应用于监听系统、出入检测系统、视频辅助系统(如摄像机辅助红外灯、排风、加热等系统)、报警系统、入侵检测系统、楼宇控制系统等相关控制系统,只是系统中前端设备、数据中心、管理服务器和客户端的具体存在形式不同,这里就不再赘述。
以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种对前端设备进行控制的方法,该前端设备与一管理服务器相连接,其特征在于,该方法包括管理服务器接收客户端发送的控制前端设备的请求消息,并根据请求消息中携带的前端设备的标识,获取该前端设备是否受控的受控信息;管理服务器根据受控信息,判断是否允许所述客户端控制该前端设备;根据判断结果执行对前端设备的控制。
2.根据权利要求1所述的方法,其特征在于,该方法进一步包括配置控制权限信息的步骤,该控制权限信息中至少包括一用户是否有权控制一前端设备的信息;进一步包括在管理服务器接收到所述控制前端设备的请求消息时,进一步包括管理服务器根据请求消息中携带的当前用户的标识获取该用户的控制权限信息;所述管理服务器进一步根据所获取的控制权限信息判断是否允许所述客户端控制该前端设备。
3.根据权利要求2所述的方法,其特征在于,所述判断是否允许所述客户端控制该前端设备的步骤包括管理服务器首先根据前端设备的受控信息判断该前端设备是否已受控,若不受控,再根据所获取的控制权限信息判断当前用户是否有权控制该前端设备,如是,则判断允许所述客户端控制该前端设备。
4.根据权利要求2所述的方法,其特征在于,所述判断是否允许所述客户端控制该前端设备的步骤包括管理服务器首先根据所获取的控制权限信息判断当前用户是否有权控制该前端设备,如是,再根据前端设备的受控信息判断该前端设备是否已受控,若不受控,则判断允许所述客户端控制该前端设备。
5.根据权利要求2所述的方法,其特征在于,所述的控制权限信息中进一步包括用户控制权限级别的优先级信息;所述判断是否允许所述客户端控制该前端设备的步骤包括管理服务器根据前端设备的受控信息判断该前端设备是否已受控,并且,根据获取的控制权限信息,判断当前用户是否有权控制该前端设备,如果判断出该前端设备已受控且当前用户有权控制该前端设备,则根据所述用户控制权限级别的优先级信息,继续判断当前用户控制权限级别的优先级是否大于当前控制该前端设备用户的控制权限级别的优先级,如果判断出大于,则判断允许所述客户端控制该前端设备。
6.根据权利要求5所述的方法,其特征在于,所述的控制权限信息中进一步包括同优先级抢占策略的信息;如果判断出当前用户控制权限级别的优先级等于当前控制该前端设备用户控制权限级别的优先级时,进一步包括管理服务器根据所述的同优先级抢占策略,判断是否允许当前用户抢占,如果是,则判断允许所述客户端控制该前端设备。
7.根据权利要求1至6中任意一项所述的方法,其特征在于,当所述的前端设备与所述的客户端分别连接于不同的管理服务器时,所述的管理服务器接收的控制前端设备的请求消息为客户端通过与其连接的管理服务器转发的。
8.根据权利要求1至6中任意一项所述的方法,其特征在于,在判断允许所述客户端控制前端设备后,进一步包括管理服务器接收所述客户端发送的对前端设备的控制指令,根据该控制指令中携带的当前用户标识,判断该控制指令是否接收自所述当前用户,若是,则将控制指令转发给所述前端设备,否则,向所述客户端返回控制失败的消息。
9.根据权利要求1至6中任意一项所述的方法,其特征在于,在判断允许所述客户端控制前端设备后,进一步包括客户端将锁定请求发送至管理服务器,管理服务器根据该锁定请求将前端设备的受控信息更改为锁定状态,并拒绝其他用户对该前端设备的控制请求。
10.一种对前端设备进行控制的系统,包括客户端、管理服务器和前端设备,所述前端设备与所述管理服务器相连接,其特征在于,管理服务器,接收客户端发送的控制前端设备的请求消息,并根据请求消息中携带的前端设备的标识,获取该前端设备是否受控的受控信息,根据该受控信息,判断是否允许所述客户端控制该前端设备,若是,则将成功响应消息发送给所述客户端,否则,将失败响应消息发送给所述客户端。
11.根据权利要求10所述的系统,其特征在于,该系统进一步包括数据中心,存储控制权限信息,该控制权限信息中至少包括一用户是否有权控制一前端设备的信息;所述管理服务器,进一步根据请求消息中携带的当前用户的标识从所述数据中心获取当前用户的控制权限信息,并根据该控制权限信息,判断是否允许所述客户端控制该前端设备。
12.根据权利要求11所述的系统,其特征在于,所述数据中心,进一步存储前端设备是否受控的受控信息;所述管理服务器,从所述数据中心获取前端设备是否受控的受控信息。
13.一种管理服务器,其特征在于,该管理服务器包括客户端接口单元和控制单元,其中,所述客户端接口单元,接收客户端发送的控制前端设备的请求消息,将控制单元发送的成功响应消息或失败响应消息转发给外部的客户端;所述控制单元,根据客户端接口单元所接收到请求消息中携带的前端设备的标识,获取该前端设备是否受控的受控信息,根据该受控信息,判断是否允许所述客户端控制该前端设备,若是,则将成功响应消息发送给客户端接口单元,否则,将失败响应消息发送给客户端接口单元。
14.根据权利要求13所述的管理服务器,其特征在于,所述控制单元,进一步根据所述请求消息中携带的当前用户的标识获取该用户的控制权限信息,根据所获取的控制权限信息判断是否允许所述客户端控制该前端设备。
15.根据权利要求14所述的管理服务器,其特征在于,所述控制单元包括查询子单元和判断子单元,其中,所述查询子单元,获取所述前端设备是否受控的受控信息和当前用户的控制权限信息,将所获取的受控信息和控制权限信息发送给所述判断子单元;所述判断子单元,根据所述受控信息和所述控制权限信息,判断是否允许所述客户端控制该前端设备。
16.根据权利要求15所述的管理服务器,其特征在于,所述查询子单元,从外部获取前端设备的受控信息;或者,所述控制单元进一步包括存储子单元,存储前端设备是否受控的受控信息,则所述查询子单元从所述存储子单元获取所述前端设备是否受控的受控信息。
全文摘要
本发明公开了一种对前端设备进行控制的方法,该前端设备与一管理服务器相连接,该方法包括管理服务器接收客户端发送的控制前端设备的请求消息,并根据请求消息中携带的前端设备的标识,获取该前端设备是否受控的受控信息;根据该受控信息,判断是否允许所述客户端控制该前端设备;根据判断结果执行对前端设备的控制。利用本发明,由前端设备所在区域的管理服务器统一管理用户对该前端设备的控制,并且在同一时间,只允许一个用户对前端设备进行控制,实现了前端设备控制权限、控制冲突的统一集中管理。本发明还公开了一种对前端设备进行控制的系统和管理服务器。
文档编号H04L12/24GK1968101SQ20061014487
公开日2007年5月23日 申请日期2006年11月23日 优先权日2006年11月23日
发明者蔡醒诗 申请人:杭州华为三康技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1