法律状态公告日
法律状态信息
法律状态
2008-12-10
授权
授权
2006-12-20
实质审查的生效
实质审查的生效
2006-10-25
公开
公开
技术领域
本发明涉及通信领域的设备管理技术,尤其涉及一种在设备管理中监控和升级软件的方法及装置。
背景技术
随着移动网络的发展和移动网与互联网的融合,越来越多的增值业务可以提供给移动网用户。用户希望能够从任何终端,如:PDA、laptop、移动电话、PC、游戏控制器和TV等,随意访问各种丰富的信息,享受各种移动增值服务。但是,用户又不希望太麻烦,不希望手工完成下载软件,设置参数等繁琐的工作。设备管理正是为了满足这种需求而产生的新技术,通过设备管理(DeviceManagement)协议,设备管理服务器(DM Server)可以通过空中下载(OTA)方式为用户提供终端固件更新、设备诊断、参数配置、软件自动下载和安装等一系列服务,从而使用户从这些繁琐的工作中解脱出来。
OMA设备管理提供了DM Server对终端设备进行管理的机制,DM Server对终端进行的管理操作包括终端设备参数设置、固件更新、软件安装和升级、应用设置、设备的错误和事件信息的收集和处理等。DM终端管理机制如图1所示:
步骤1:首先外部系统将管理操作发送到DM Server。外部系统可以是管理DM Server的移动运营商,也可以是第三方软件/服务提供商。
步骤2:DM Server与终端设备建立连接。
步骤3:DM Server向终端发送管理操作。
步骤4:终端执行操作后返回操作状态。
步骤5:如果DM Server还有其他管理操作,则发送到终端。如果没有,则返回确认信息。
步骤6:如果收到DM Server的管理操作,则执行,并返回操作状态。否则,结束会话。
步骤7:DM Server返回操作结果到外部系统。
现在的设备管理规范中,包括软件组件的管理,即DM Server通过OTA方式远程在终端设备上安装和升级软件等功能。软件组件管理在终端上设置了管理对象,用于对终端软件的管理。该管理对象如图2所示,图中节点Inventory表示现在位于终端设备上的软件,Inventory\Deployed节点表示已经安装的软件,记录了软件的名称、版本、将要执行的操作(激活、反激活、删除)等信息。Inventory\Delivered节点(其下的子节点未示出)表示已经下载到终端但没有安装的软件,记录了软件的名称、版本、将要执行的操作(升级、安装并激活、升级并激活)等信息。节点Download(其下的子节点未示出)表示终端准备到DM Server或其他指定的服务器取的软件信息,包括软件名、版本、下载位置的URI、要执行的操作(下载、下载并安装、下载并安装并激活、下载并更新)等信息。
对于软件升级,其升级方法是:
步骤1:服务提供商通过DM Server发送软件升级命令到设备终端。
步骤2:设备终端提示用户是否安装更新包。
步骤3:用户做出选择后,终端设备返回结果给DM Server。
步骤4:DM Server发起软件下载、更新和执行操作。
步骤5:终端设备执行完后返回确认信息到DM Server。
在现有的设备管理中,不对终端设备上的软件使用情况进行监控,设备管理服务器无法获知终端设备上软件的使用频率;而且在软件升级过程中也没有区别对待,可以想象,很多用户开始安装了某个软件,但因为种种原因后来很少甚至从不使用该软件,而对于长期不使用某软件的用户也进行升级,这会带来几方面的问题:
(1)增加了不必要的网络负担。因为移动网络带宽相对较小,而下载固件、软件等内容会消耗较多的带宽。
(2)降低用户体验。因为在终端设备上的软件种类会很多,对于用户不使用的软件,如果经常提示用户是否升级,会降低用户体验。
(3)消耗不必要的终端设备资源。对于用户不使用的软件进行升级,会浪费终端设备的存储资源,因为终端设备的存储容量有限。
发明内容
本发明提供一种在在设备管理中监控软件使用频率的方法,以解决现有设备管理中设备管理服务器无法获知终端设备上软件的使用频率的问题。
本发明提供一种在设备管理中升级软件的方法及装置,以解决现有技术升级软件时不对用户使用软件情况进行区分而且存在造成不必要的网络资源和终端资源消耗,以及影响用户体验的问题。
本发明提供以下技术方案:
一种在设备管理中监控软件使用频率的方法,包括如下步骤:
在终端设备上监控软件的使用频率并记录软件的使用频率信息;以及
向设备管理服务器提供所述软件的使用频率信息。
其中:
所述使用频率信息由终端设备定时上报设备管理服务器;或者,由管理服务器从终端设备获取所述使用频率信息。
终端设备上的软件启动时通知监控程序,由该监控程序更新该软件的使用频率信息;或者,终端设备的监控程序定期遍历正在运行的应用程序,检测到软件发生一次新的运行时更新该软件的使用频率信息。
在终端设备的管理树上增加节点存储使用频率信息;或者,由管理服务器向终端设备下发包含需要监控的软件的监控列表,终端设备将所述软件的使用频率信息存储在所述监控列表中。
所述使用频率信息包括使用次数和/或最近使用时间。
一种在设备管理中升级软件的方法,包括如下步骤:
在终端设备上监控软件的使用频率,并向设备管理服务器提供相应的使用频率信息;
设备管理服务器利用需要升级的软件的使用频率信息确定该软件是否满足升级条件,若是,则向终端设备下发相应的操作以升级软件;否则,放弃软件升级。
其中:
所述使用频率信息由终端设备定时上报设备管理服务器;或者,由管理服务器在需要升级软件时从终端设备获取所述使用频率信息。
终端设备上的软件启动时通知监控程序,由该监控程序更新该软件的使用频率信息;或者,终端设备的监控程序定期遍历正在运行的应用程序,检测到软件发生一次新的运行时更新该软件的使用频率信息。
在终端设备的管理树上增加节点存储使用频率信息;或者,由管理服务器向终端设备下发包含需要监控的软件的监控列表,终端设备将所述软件的使用频率信息存储在所述监控列表中。
所述使用频率信息包括使用次数和/或最近使用时间。
设备管理服务器将软件的使用次数或/和最近使用时间与预定的值进行比较确定是否满足升级条件。
在管理服务器上按软件使用频率将软件升级服务划分为多个级别,管理服务器利用软件的使用频率信息更新软件的级别;并根据升级策略和软件当前的级别确定是否满足升级条件。
一种终端设备,包括:
设备管理代理模块,用于与设备管理服务器通信;
监控模块,用于监控终端设备上软件的使用频率;
储存模块,用于存储所述监控模块提供的使用频率信息。
所述监控模块和所述存储模块设置在所述设备管理代理模块中。
一种设备管理服务器,包括:
通信模块,用于与终端设备通信;
判断模块,利用终端设备提供的软件使用频率信息判断该软件是否满足升级条件;
升级模块,在所述判断模块确定软件满足升级条件时,控制终端设备进行软件升级。
本发明中,设备管理服务器根据终端设备上可升级软件的使用频率信息来决定是否对软件进行升级,从而可以避免对用户不使用或极少使用的软件进行不必要的升级,从而可以有效节省网络资源和终端资源,提高用户体验,也有利于运营商和服务提供商统计其服务的用户满意度、市场占有率等信息。
附图说明
图1为现有技术中设备管理服务器对终端设备进行管理的流程图;
图2为现有技术中终端设备上管理对象的结构示意图;
图3为本发明中管理设备升级终端软件的流程图;
图4为本发明中终端设备的结构示意图;
图5为本发明中管理树上增加保存使用频率信息的节点的示意图;
图6为本发明中设备管理服务器的结构示意图。
具体实施方式
在设备管理中,为了使设备管理服务器能够了解终端设备上软件的使用情况,本发明在终端设备通过监控程序上对软件的使用频率进行监控,并将软件的使用频率信息提供给设备管理服务器。
进一步的,设备管理服务器在准备对终端设备上的软件进行升级时,利用需要升级的软件的使用频率信息确定该软件是否满足升级条件,如果满足条件,则向终端设备下发相应的操作以升级软件;否则,放弃软件升级。
参阅图3所示,设备管理服务器升级终端软件的主要流程如下:
步骤1:由终端上的设备管理代理模块(DM Agent)监控终端上软件的使用频率信息并保存下来。
步骤2:设备管理服务器按照收集策略从终端获得软件使用频率。
步骤3:终端设备向设备管理服务器返回软件使用频率。
收集策略可以是定期从终端收集,需要时从终端取,终端定期上报或运营商/SP设定的其他策略。
当采用DM Server定期和需要时从终端收集这两种策略,DM Server按现有DM协议,建立与终端的会话连接,并通过GET命令获得存储于终端管理树或文件上使用频率信息。
当采用用户定期上报策略时,终端设备的DM Agent建立与DM Server的会话连接后,可以通过Generic Alert命令上报。
步骤4:当DM Server准备对某终端设备的软件进行升级前,根据已经获得的软件使用频率和升级策略,确定是否对该终端软件升级。
步骤5:当DM Server决定不对该终端软件升级时,结束后续流程。当决定升级后,则按现有软件升级的方法进行升级包下载、更新及执行,然后由终端返回状态结果。
如图4所示,本发明中的终端设备除了具有现有的操作系统,设备管理代理(DM Agent)模块,被监控的其他应用程序模块外,如应用程序模块一、应用程序模块二、应用程序模块三,还包括监控模块和存储模块。其中:
操作系统用于管理所有应用程序模块,包括DM Agent模块和其他所有应用程序模块。
DM Agent用于与设备管理服务器通信,向设备管理服务器上报信息和接收设备管理器下发的信息。
监控模块用于监控终端设备上软件的使用频率。
储存模块用于存储所述监控模块得到的使用频率信息,该使用频率信息包括使用次数和最新使用时间;当监控模块检测到某应用程序发生一次新的运行时,对该应用程序的使用次数和最新使用时间进行更新。
较佳的方式是,所述监控模块和所述存储模块设置在所述设备管理代理模块中。
监控模块可以采用以下方式监控程序使用频率信息:
(1)监控模块以一定的周期循环查询正在运行的应用程序列表,查询方法根据不同的操作系统而不同。
如:Symbian操作系统为应用程序提供了TFindProcess接口,该接口的作用是遍历正在运行的进程,并且以进程名为查询条件判断该进程是否在运行。监控模块以一定的间隔循环调用该接口,就可以获得目前正在运行的程序名;如多次检测到同一进程运行时,可以通过该进程的启动时间来区别是否为同一次启动后的运行过程。
(2)在被监控的程序运行时,由系统通知监控程序。
对程序使用频率信息可以采用管理对象法和诊断列表法进行保存。
采用管理对象法保存使用频率信息时,首先在软件组件的管理对象上增加记录软件使用频率的节点,可以命名为UseFreq,该节点可以包括两个节点,可以命名为UseNum和UseLastedDate,其中UseNum节点记录软件使用的次数,UseLastedDate记录软件的最新使用日期。增加节点后的管理对象如图5所示,图中:节点Inventory表示现在位于终端设备上的软件;节点Inventory\Deployed表示已经安装的软件;节点Inventory\Delivered(其下的子节点未示出)表示已经下载到终端但没有安装的软件。本发明因为监控已安装软件的运行频率,所以在Inventory\Deployed节点下,增加记录软件使用频率的节点。本实施例中,该节点为UseFreq,该节点下面包括UseNum和LastedUseDate两个节点。在实际应用时,用什么样的节点能够最好的表示软件使用频率信息可以不相同。
采用诊断列表法保存使用频率信息时,DM Server预先下发的监控列表文件,监控列表为DM Server希望DM Agent监控的终端事件。当该列表中包括终端软件使用频率时,DM Agent实时监测软件的运行,当检测到软件的运行时,增加列表中使用频率一项的使用次数,并复写最新使用时间。一个监控列表的示例如下表所示:
其中,终端设备可将使用频率信息写入Item栏后面的空格中。
相应的,设备管理服务器的结构如图5所示,其包括通信模块、判断模块和升级模块(其中完成现有功能其他功能模块图中未示出)。其中:
通信模块用于与终端设备通信,如接收终端上报的信息和下发操作命令及相关信息等。
判断模块与所通信模块具有逻辑上的连接关系,该判断模块利用终端设备提供的软件使用频率信息判断该软件是否满足升级条件。
所述升级模块与判断模块和通信模块具有逻辑上的连接关系,该升级模块在所述判断模块确定软件满足升级条件时,通知终端设备进行软件升级。
DM Server预先设定有收集策略和升级策略,策略设定后可以为所有软件升级所用。DM Server上的收集策略可以是定期从终端收集,需要时从终端取,或运营商/SP设定的其他策略。
升级策略可以使用终端设备上报的使用次数与相应的预定值比较以确定是否升级软件;或者,根据使用次数计算出频率并与相应的预定值比较以确定是否升级软件;或者,利用最近使用时间与预定值比较确定是否升级软件;或者将次数/频率与最近使用时间结合确定是否升级软件。
升级策略的一种较佳方式是将软件升级服务划分为多个级别,如级别1,级别2,级别3等,级别个数可以根据运营商策略设定和修改;将级别与软件的使用频率相关联,即终端软件ID、软件使用频率信息及服务级别三者的对应关系存储于相关数据库或文件;DM Server获得某终端软件的使用频率信息后,根据使用频率的高低修改终端软件升级服务的级别,当准备实施与该终端软件相关的服务时,根据针对该软件的服务级别决定是否升级以及提供哪些额外服务。DM Server采用这种获得终端软件的使用频率后,根据升级策略决定是否为该终端软件进行升级的方式使得策略的制定和修改更为灵活。
本发明根据用户使用软件的统计情况,有选择的对终端软件升级,从而可以节省网络资源和终端设备的资源,并提高用户体验。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若对本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
机译: 设备管理中软件监控升级的方法及装置
机译: 设备管理中软件监控升级的方法及装置
机译: 在设备管理中获取软件使用频率和升级软件的方法和设备