具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例一提供的一种终端设备的管理方法的流程图,本实施例的执行主体为网关设备,如图1所示,该方法可以包括:
步骤101,接收设备管理服务器发送的管理对象实例,该管理对象实例包含至少两个终端设备的设备参考信息和设备管理信息。
需要说明的是,管理对象实例可以由设备管理服务器预先配置,管理对象实例可以包括至少两个终端设备的设备参考信息和设备管理信息。
本实施例中,终端设备可以为机器对机器(Machine to Machine;以下简称:M2M)设备、移动终端设备或者计算机设备。
步骤102,根据该设备参考信息确定出需要进行管理的终端设备。
本实施例中,可以根据管理对象实例中的设备参考信息确定出需要进行管理的终端设备;
该需要进行管理的终端设备为符合该设备参考信息的终端设备。
步骤103,根据设备管理信息对需要进行管理的终端设备执行管理操作。
举例来说,本发明实施例中,该管理操作可以包括:升级操作、软件管理操作、硬件管理操作或者参数配置管理操作。
本实施例中,网关设备接收到设备管理服务器发送的管理对象实例之后,可以根据该管理对象实例中的设备参考信息确定出需要进行管理的终端设备,然后网关设备可以根据该管理对象实例中的设备管理信息对需要进行管理的终端设备执行管理操作。本实施例中,设备管理服务器仅需配置一个管理对象实例,无需为每个终端设备单独配置管理对象实例,从而降低了设备管理服务器的操作量。
图2a为本发明实施例二提供的一种终端设备的管理方法的流程图,如图2a所示,该方法可以包括:
步骤201,网关设备接收设备管理服务器发送的管理对象实例,该管理对象实例包含至少两个终端设备的设备参考信息和设备管理信息。
图2b为本发明实施例中管理对象实例的结构示意图,如图2b所示,本实施例中,管理对象实例的结构为设备管理树,也就是说本实施例中的管理对象实例以设备管理树的形式进行描述。该设备管理树包括多个节点。图2b中的设备管理树仅为一种示例,而不应成为对本发明实施例的限制。需要说明的是,根据实际操作的需要,可以对图2b中的“现有技术的FUMO”进行更改。
步骤202,网关设备根据上述设备参考信息确定出需要进行管理的终端设备。
如图2b所示,设备管理树包括多个设备参考信息节点,该设备参考信息节点可以存储设备参考信息。本实施例中,设备参考信息可以包括生产厂家信息和/或型号信息等。
例如:设备参考信息节点可位于“./M2MFUMO”节点下。其中,“./M2MFUMO”节点下存储了网关设备下的终端设备的FUMO信息。
则本实施例中,设备参考信息节点可包括如下节点:
“./M2MFUMO/<x>”节点:该节点用于区分不同的实例,每一个实例存储一类终端设备所需要的FUMO信息,其中一类终端设备是指具有同一个设备型号的终端设备,但不同的设备型号也可能使用相同的FUMO,例如同一个厂家的不同型号的产品。
“./M2MFUMO/<x>/DevRef”节点:该节点下可以存储设备参考信息,即用于表明该实例下的FUMO信息是适用于哪些设备的。
“./M2MFUMO/<x>/DevRef/Man”节点:该节点的节点值为终端设备的生产厂家信息,该生产厂家信息可以为生产厂家标识或者统一资源标识符(Uniform Resource Identifier;以下简称:URI)。其中,URI可指向设备管理树中的某个节点,从指向的节点可以判断出生产厂家标识,例如:指向的节点可以为“./DevInfo/1/Man”节点。
“./M2MFUMO/<x>/DevRef/Mod”节点:该节点的节点值为终端设备的型号信息,该终端设备的型号信息可以为设备型号标识或者URI。其中,URI可指向设备管理树中的某个节点,从指向的节点可以判断出设备型号标识,例如:指向的节点可以为“./DevInfo/1/Mod/1/ModName”节点。
其中,如果某个厂家生产的多个型号的终端设备都使用相同的固件,则需要给出多个设备型号标识。此时可以进一步扩展一些节点。例如:“./M2MFUMO/<x>/DevRef/ModRef/<x>/Mod”节点,其中“ModRef/<x>”节点可用于区分多个实例,“ModRef/<x>/Mod”节点可用于存储型号信息。
进一步地,若管理对象实例中还包括位置信息,则步骤202具体还可以为:网关设备根据设备参考信息和位置信息确定出需要进行管理的终端设备。具体地,网关设备在对设备参考信息进行查找后还可以对位置信息进行查找,以确定出需要进行管理的终端设备。
如图2b所示,位置信息可以位于“./M2MFUMO/<x>/FUMO/<x>/ApplyList”节点下。举例来说,本实施例中,位置信息可以包括位置名称或者经纬度区域信息等。具体地:
“./M2MFUMO/<x>/FUMO/<x>/ApplyList”节点:该节点下存储的信息用于表示某个FUMO实例(例如:“./M2MFUMO/1/FUMO/2”)应用于哪些终端设备,即当执行管理操作时,对哪些设备进行管理,这些终端设备可以是“./M2MFUMO/<x>/DevRef”节点所表示的设备或其子集。
“./M2MFUMO/<x>/FUMO/<x>/ApplyList/Group/<x>”节点:该节点用于区分不同的实例,每个实例存储一组终端设备的信息。
“./M2MFUMO/<x>/FUMO/<x>/ApplyList/Group/<x>/Loc/LocName”节点:该节点用于指示某组终端设备的位置信息,该组终端设备的位置信息可以为一个位置名称。该位置名称的取值可以与“./DevInfo/<x>/Mod/<x>/DevList/<x>/LocName”节点的取值相同,或者为“./DevInfo/<x>/Mod/<x>/DevList/<x>/LocName”节点的取值的一部分,例如:“./DevInfo/<x>/Mod/<x>/DevList/<x>/LocName”节点的取值的非数字部分,这样就代表某个地名下的所有终端设备。或者该组终端设备的位置信息还可以是一个URI,该URI指向设备管理树中的某个节点,从指向的节点可以判断出终端设备的位置名称,例如:该指向的节点可以为“./DevInfo/1/Mod/2/DevList/3/LocName”节点。
“./M2MFUMO/<x>/FUMO/<x>/ApplyList/Group/<x>/Loc/LocRange”节点:该节点用于指示某组终端设备的位置信息,该组终端设备的位置信息可以是一个经纬度区域信息,例如:该经纬度区域信息可以是使用两个点确定的一个矩形区域或者使用三个点确定的一个三角形区域。设置了该节点后需要先根据“./M2MFUMO/<x>/DevRef”节点下的信息确定所属的FUMO实例适用于哪些终端设备,然后再根据经纬度区域信息在所确定的终端设备中查找属于该经纬度区域的终端设备,具体是判断“./DevInfo/<x>/Mod/<x>/DevList/<x>/LocDetail”节点下的位置是否处于该经纬度区域中。
上述节点相当于是用位置信息定义了一个组。此外,本实施例中还可以直接指定设备标识或设备参考的方式定义组。例如:在“Group/<x>”节点下设置“DevRef/<x>/DevId”节点,该节点的节点值为设备标识或URI,其中URI指向设备管理树上存储设备标识的位置;或者设置节点“DevRef/Man”和“DevRef/Mod”表明该组包含哪个厂家的哪个或哪些型号的终端设备。进一步地还可以为该组设置一个标识节点,例如:“Group/<x>/GroupId”节点。
如图2b所示,进一步地,设备管理树包括设备信息节点(“./DevInfo”节点),设备信息可以位于“./DevInfo”节点下。举例来说,本实施例中,设备信息可以包括终端设备的生产厂家的标识、终端设备的设备型号标识、终端设备标识、终端设备目前所处的位置、终端设备所处位置的名称、终端设备所处的更精确的位置信息和/或某一型号的所有终端设备的数量值等。具体地:
“./DevInfo”节点:“./DevInfo”节点下存储了与该网关设备相连接的终端设备的设备信息。
“./DevInfo/<x>”节点:“./DevInfo/<x>”节点用于区分不同的实例,每个实例用于存储一个厂家所生产的终端设备的设备信息。需要说明的是:由于在设备管理树中还需要存储网关设备自身的设备信息,所以设备管理服务器需要能够从设备管理树中存储的设备信息中区分出网关设备自身的设备信息和终端设备的设备信息。本实施例中可以通过“./DevInfo”节点中是否存在<x>节点来区分出网关设备自身的设备信息和终端设备的设备信息。若不存在<x>节点,则表明“./DevInfo”节点下不区分实例,而是在“./DevInfo”节点下直接存储设备信息,则该存储的设备信息为网关设备的设备信息。或者本实施例中还可以通过将网关设备的设备信息存储在“./DevInfoGW”节点下,该“./DevInfoGW”节点下可以仅存储网关设备的设备信息。或者本实施例中还可以在“./DevInfo”节点下增加一个“./DevInfo/Type”节点,当该“./DevInfo/Type”节点的节点值为GW时表明存储的设备信息为网关设备的设备信息,当该“./DevInfo/Type”节点的节点值为LANDevice时表明存储的设备信息为局域设备的设备信息。
“./DevInfo/<x>/Man”节点:“./DevInfo/<x>/Man”节点的节点值为终端设备的生产厂家的标识。
“./DevInfo/<x>/Mod/<x>”节点:“./DevInfo/<x>/Mod/<x>”节点用于区分不同的实例,每个实例用于存储同一个型号的终端设备的设备信息。
“./DevInfo/<x>/Mod/<x>/ModName”节点:该节点的节点值为终端设备的设备型号标识,该设备型号标识可以由生产厂商制订。
“./DevInfo/<x>/Mod/<x>/DevList/<x>”节点:该节点用于区分不同的实例,每个实例存储一个终端设备的设备信息,该节点存储的终端设备的设备信息包括终端设备标识和/或终端设备目前所处的位置等。
“./DevInfo/<x>/Mod/<x>/DevList/<x>/DevId”节点:该节点的节点值为终端设备标识。
“./DevInfo/<x>/Mod/<x>/DevList/<x>/LocName”节点:该节点的节点值为终端设备所处位置的名称。终端设备所处位置的名称可以由终端设备的管理方指定,例如该管理方可以为运营商或行业用户。该终端设备所处位置的名称具体可以是该终端设备所处的街区、路段等地名,进一步地该终端设备所处位置的名称还可以包括设置在具体的地名之后的用于精确表示位置的衔接序号,例如衔接序号可用于表示终端设备是该位置上第几排第几个设备。需要说明的是:与其它节点不同,该节点是在确定终端设备的安装位置后才设置在设备管理树中的,而如果终端设备的位置发生变更则需要更改该节点的节点值。
“./DevInfo/<x>/Mod/<x>/DevList/<x>/LocDetail”节点:该节点的节点值为终端设备所处的更精确的位置信息。该终端设备所处的更精确的位置信息具体可以是经纬度信息或者是距离某个参考点的定位信息等。经纬度信息可以由终端设备的GPS模块获得后上报给网关设备的,网关设备将该经纬度信息记录在该终端设备对应的“LocDetail”节点中。或者该经纬度信息也可以是由管理方来设置。
“./DevInfo/<x>/Mod/<x>/num”节点:该节点的节点值为某一型号的所有终端设备的数量值。该数量值可以由网关设备统计生成,也可以由管理方设置。
步骤203,网关设备对需要进行管理的终端设备执行管理操作。
本实施例中,当管理对象实例包括定时信息时,步骤203具体为网关设备根据定时信息对需要进行管理的终端设备执行管理操作。如图2b所示,设备管理树包括多个定时信息节点,该定时信息节点存储有定时信息。例如:定时信息节点可包括如下节点:
“./M2MFUMO/<x>/FUMO/<x>/ApplyList/Group/<x>/Schedule”节点:该节点下存储了对某个组的终端设备进行升级的定时信息。
“./M2MFUMO/<x>/FUMO/<x>/ApplyList/Group/<x>/Schedule/ToSchedRef”节点:该节点的节点值可以为一个URI,该URI可指向设备管理树上的某个提供定时信息的MO,例如该MO可以为某个Scheduling MO实例或其它自定义实例,实例中指明了开始执行升级的时间或者条件。该节点值也可以直接存储一个开始时间或开始条件。
“./M2MFUMO/<x>/FUMO/<x>/ApplyList/Group/<x>/Schedule/TimeLimit”节点:该节点的节点值用于指示一个时间长度、时间点、结束条件等。该节点表示了管理操作可以执行的时间范围或需要结束管理操作的条件。如果该节点值是时间长度时,则例如该时间长度可以为10分钟或者10小时等,即TimeLimit节点指定的是开始时间后的10分钟或10小时;如果该节点值是时间点,则该时间点可以为需要结束管理操作的时间。进一步地,该节点的节点值也可以是指向某个提供上述定时信息的MO实例,例如MO实例可以为某个Scheduling MO实例或其它自定义实例。
本实施例中,当管理对象实例包括优先级信息时,步骤203具体为网关设备根据优先级信息对指定的终端设备进行管理操作。如图2b所示,设备管理树包括优先级信息节点,该优先级信息节点存储有优先级信息。例如:优先级信息节点可包括如下节点:
“./M2MFUMO/<x>/FUMO/<x>/ApplyList/Group/<x>/Priority”节点:该节点用于指示该组终端设备执行管理操作的优先级,具体可用数字表示,例如1、2、3,或用Critical、Important、Minor等表示。则网关设备可根据优先级对需要进行管理操作的终端设备进行排序,如对优先级高的该组终端设备先执行管理操作。
本实施例中,当管理对象实例包括顺序模式信息时,步骤203具体为网关设备根据顺序模式信息对需要进行管理的终端设备之行管理操作,该顺序模式信息可包括顺序管理模式或者并行管理模式。如图2b所示,设备管理树包括顺序模式信息节点,该顺序模式信息节点存储有管理模式信息。例如:顺序模式信息节点可包括如下节点:
“./M2MFUMO/<x>/FUMO/<x>/ApplyList/Group/<x>/UpdMode”节点:该节点存储有顺序模式信息,该节点可用于指示该组终端设备执行管理操作的模式。若顺序模式信息为顺序管理模式时,该节点可用于指示该组终端设备执行顺序管理操作;若顺序模式信息为并行管理模式时,该节点可用于指示该组终端设备执行并行管理操作。若网关设备对终端设备执行的管理操作为升级操作时,则其中,顺序管理模式是指对该组终端设备逐个进行升级操作,例如:当网关设备接收到其中某个终端设备升级完成的回复消息后再升级下一个终端设备;并行管理模式是指对该组终端设备同时进行升级,例如网关设备可以同时向该组终端设备发送升级包,并发送升级命令对该组终端设备进行升级。顺序模式信息还可以是顺序管理模式和并行管理模式的组合模式,例如该组终端设备又分为小组,对每个小组的终端设备进行并行管理操作,小组间执行顺序管理操作等。设置顺序模式信息的目的是可以让某些终端设备暂停其它业务而先进行管理操作,而让某些终端设备仍然保持其它业务的运行。
步骤204,网关设备对需要进行管理的终端设备在管理操作中所处的状态信息进行记录。
本实施例中,如图2b所示,设备管理树包括状态信息节点,该状态信息节点存储有终端设备所处的状态信息。换言之,网关设备可以将需要进行管理终端设备在管理操作中所处的状态信息记录在状态信息节点中。例如:状态信息节点可包括如下节点:
“./M2MFUMO/<x>/FUMO/<x>/ApplyList/Group/<x>/Status”节点:该节点存储有对某组终端设备进行管理操作中终端设备所处的状态信息,该终端设备所处的状态信息可以用整数值表示。当网关设备对终端设备执行的管理操作为升级操作时,例如:终端设备所处的状态信息采用10表示该组终端设备的升级还未开始,采用20表示该组终端设备升级已经开始,采用30表示某些终端设备正在进行重复尝试,采用40表示某些终端设备正在进行复位,采用50表示正在收集升级结果信息,采用60表示已经结束。
步骤205,网关设备根据失败重试策略对管理操作失败的终端设备重新进行管理操作。
本实施例中,管理对象实例中的设备管理信息包括失败重试策略,如图2b所示,设备管理树包括失败重试策略节点,该失败重试策略节点存储有失败重试策略。例如:失败重试策略节点可包括如下节点:
“./M2MFUMO/<x>/FUMO/<x>/ApplyList/Group/<x>/EventAndPolicy”:该节点下存储了事件触发机制信息和/或策略信息,使网关设备可以对管理操作中遇到的问题进行策略控制;
“./M2MFUMO/<x>/FUMO/<x>/ApplyList/Group/<x>/EventAndPolicy/RetryPolicy”节点:该节点存储了失败重试策略,该节点的节点值可以为整数或其它类型数值。例如该节点的节点值为1时表示若该组终端设备内某个终端设备管理操作失败则尝试重新进行管理操作1次,该节点的节点值为2时表示若该组终端设备内某个终端设备管理操作失败则尝试重新进行管理操作2次,该节点的节点值为10000时表示直到管理操作成功为止;或者该节点可存储有更详细的策略,例如该节点的节点值为10时表示其它终端设备管理操作完成之后再进行重试管理操作,该节点的节点值为20时表示管理操作失败后立即进行重试管理操作;还可以用其它值或者设置多个节点表示上述情况的组合。
步骤206,网关设备根据复位策略对管理操作失败的终端设备进行复位操作。
本实施例中,具体地,当设备管理信息包括复位策略信息时,网关设备可以根据该复位策略信息对管理操作失败的终端设备执行复位操作。如图2b所示,设备管理树包括复位策略节点,该复位策略节点存储有复位策略。例如:复位策略可包括如下节点:
“./M2MFUMO/<x>/FUMO/<x>/ApplyList/Group/<x>/EventAndPolicy/ResetPolicy”节点:该节点存储有复位策略,即在执行管理操作失败或者重试管理操作仍然失败后,需要对终端设备进行重启或者复位,以保证终端设备虽未成功进行管理操作但仍然可以正常运行。该节点的节点值可以是Boolean类型的值,例如:若该节点的节点值为True时表示终端设备要复位,若节点的节点值为False时表示终端设备不复位。其中,复位操作的结果信息可以上报给设备管理服务器或存储在某个节点中以供设备管理服务器查询。
步骤207,网关设备对上述需要进行管理的终端设备的管理操作结果进行记录。
本实施例中,如图2b所示,设备管理树包括管理操作结果节点,该管理操作结果节点存储有管理操作结果。换言之,网关设备可以将管理操作结果记录在管理操作节点中,该管理操作结果可以为升级结果。例如:管理操作结果可包括如下节点:
“./M2MFUMO/<x>/FUMO/<x>/ApplyList/Group/<x>/Result/<x>”节点:该节点用于区分实例,每个实例下存储某个或某些终端设备的管理操作结果;
“./M2MFUMO/<x>/FUMO/<x>/ApplyList/Group/<x>/Result/<x>/DevId”节点:该节点值可以为某个终端设备的标识或者为URI。其中URI可指向某个终端设备的标识。
“./M2MFUMO/<x>/FUMO/<x>/ApplyList/Group/<x>/Result/<x>/ResultCode”节点:该节点存储有对某个终端设备进行管理操作的结果代码,例如:若结果代码为200时表示成功,若结果代码为400时表示失败。或者该节点还可以存储管理操作结果的描述信息。
管理操作结果还可以有其它存储方式,例如以组为单位来存放,这时需要存储组标识及对组内终端设备进行管理操作的结果代码或结果描述信息;另外还可以只在“Result”节点下存储管理操作失败的终端设备的结果描述信息。存储管理操作结果的主要目的是设备管理服务器可以在任何时候查询某次管理操作的结果或中间结果。
步骤208,网关设备向设备管理服务器发送管理操作结果。
具体地,当管理对象实例中的设备管理信息包括回复策略信息时,网关设备可以根据该回复策略信息向设备管理服务器发送管理操作结果;或者,网关设备可以根据设备管理服务器发送的管理操作结果获取请求,将管理操作结果发送给设备管理服务器。
本实施例中,如图2b所示,设备管理树包括回复策略节点,该回复策略节点存储有回复策略信息。例如:回复策略节点可包括如下节点:
“./M2MFUMO/<x>/FUMO/<x>/RprtCriterion”节点:该节点下存储了网关设备向设备管理服务器回复的回复策略信息。
“./M2MFUMO/<x>/FUMO/<x/RprtCriterion/Frequency”节点:该节点存储有回复频度,该回复频度用于指示网关设备向设备管理服务器回复管理操作结果的频度。该回复频度可以用整数值表示。例如:回复频度可以为数值,若回复频度为10,表示每接收到10个终端设备的管理操作结果向设备管理服务器回复一次管理操作结果。或者回复频度还可以为其它类型的值,例如:若回复频度为OnlyFail,表示终端设备只上报管理操作失败的管理操作结果;或者若回复频度为Group,表示某个组的终端设备管理操作完成之后向设备管理服务器回复该组的终端设备的管理操作结果;或者若回复频度为Single,表示ApplyList/Single中的单个终端设备管理操作完成之后向设备管理服务器回复管理操作结果;或者若回复频度为1min,表示网关设备每隔1分钟向设备管理服务器回复一次管理操作结果;或者回复频度还可以为上述各种情况的任意组合。
步骤209,网关设备接收设备管理服务器根据管理操作结果发送的中断管理操作命令,根据该中断管理操作命令中断对需要进行管理的终端设备的管理操作。
本实施例中,如图2b所示,设备管理树包括中断管理操作节点。例如:中断管理操作节点可包括如下节点:
“./M2MFUMO/<x>/FUMO/<x>/Break”节点:该节点是一个可执行节点,用于在已经启动管理操作以后再中断管理操作,其中启动管理操作是指已经执行了某个FUMO实例中的Update节点,这时根据管理操作策略或顺序的设置,某些终端设备的管理操作可能已经开始,某些终端设备尚未开始,执行该节点后对于未开始的终端设备不再进行管理操作,对于已经开始的可以任其执行或者命令其停止。
“./M2MFUMO/<x>/FUMO/<x>/ApplyList/Group/<x>/Break”:该节点是一个可执行节点,用于在已经启动管理操作以后再中断管理操作,其中启动管理操作是指已经执行了某个FUMO实例中的Update节点,这时根据管理操作策略或顺序的设置,针对某个组的终端设备的管理操作可能已经开始或者还未开始。
步骤210,网关设备根据标志位信息对管理操作失败或者未进行管理操作的需要进行管理的终端设备执行管理操作。
具体地,当管理对象实例中的设备管理信息包括标志位信息时,网关设备可以根据该标志位信息对管理操作失败或者未进行管理操作的需要进行管理的终端设备进行管理操作;该标志位信息可用于标识是否对管理操作失败或者未进行管理操作的指定的终端设备进行管理操作。
本实施例中,如图2b所示,设备管理树包括标志位节点,该标志位节点存储有标志位信息。例如:标志位节点可包括如下节点:
“./M2MFUMO/<x>/FUMO/<x>/ApplyToAll”节点:该节点存储有标志位信息,该节点用于指示是否对所有DevRef节点中指定的终端设备进行管理操作。该节点的节点值可以用Boolean类型表示,若节点值为True时表示是,若节点值为False时表示否。或者,网关设备可以进一步判断在ApplyList下的Flag信息以确定需要执行管理操作的终端设备。当然,也可以采用该节点的节点值为主,而忽略ApplyList下的Flag信息。
“./M2MFUMO/<x>/FUMO/<x>/ApplyToFailed”节点:该节点存储有标志位信息。该节点用于指示是否对所有DevRef节点中指定的终端设备中管理操作失败的终端设备进行管理操作。该节点的节点值可以用Boolean类型表示,若节点值为True时表示是,若节点值为False时表示否。或者,网关设备可以进一步判断在ApplyList下的Flag信息以确定需要执行管理操作的终端设备。当然,也可以采用该节点的节点值为主,而忽略ApplyList下的Flag信息。
或者,还可以设置ApplyToUnfinish节点:该节点可以使网关设备在中断某次管理操作后对所有未进行管理操作的终端设备进行管理操作。
“./M2MFUMO/<x>/FUMO/<x>/ApplyList/Group/<x>/Flag”节点:该节点下存储了指示该组终端设备是否进行管理操作的标志位信息,使用上述标志位信息可以灵活控制对哪些组的终端设备执行管理操作以及对哪些组的终端设备不执行管理操作,或者控制对组内的哪些终端设备进行管理操作以及对哪些终端设备不不执行管理操作。这样即使在“ApplyList”中配置了该组终端设备的相关信息也暂时不对某些终端设备进行管理操作。
“./M2MFUMO/<x>/FUMO/<x>/ApplyList/Group/<x>/Flag/All”节点:该节点用于指示是否对所有该组终端设备都进行管理操作,该节点的节点值可以是Boolean类型,若该节点值为True时表示对所有该组终端设备都进行管理操作,若该节点值为False时表示对所有该组终端设备都不进行管理操作。
“./M2MFUMO/<x>/FUMO/<x>/ApplyList/Group/<x>/Flag/OnlyFailed”节点:该节点用于指示是否仅对管理操作失败的终端设备进行管理操作,该节点的节点值可以是Boolean类型,若节点值为True时表示仅对管理操作失败的终端设备进行管理操作,若节点值为False时表示不是仅对管理操作失败的终端设备进行管理操作。若要使用该节点,需要网关设备记录下已经管理操作失败的终端设备,之后再次对管理操作失败的终端设备执行管理操作时,设置该节点的节点值为True,这样则只对上次该组终端设备中管理操作失败的终端设备进行管理操作。
进一步地上述两个标志位信息“All”和“OnlyFailed”可以合并成一个标志位信息,具体地可以用不同的节点值表示是否对某组终端设备进行管理操作或者是否仅对管理操作失败的终端设备进行管理操作等。
进一步地,本实施例中,设备管理树还包括以下节点:
“./M2MFUMO/<x>/FUMO/<x>/ApplyList/Group/<x>/EventAndPolicy/ToTrapRef”:该节点用于设置一个URI指向某个Trap MO实例,以在管理中遇上失败或某种情况时触发网关设备向设备管理服务器报告或者触发某个内部的操作;
“./M2MFUMO/<x>/FUMO/<x>/ApplyList/Single/<x>”:该节点用于区分实例,每个实例存储了一个终端设备的信息,所存储的终端设备的信息可以与Group/<x>下存储的终端设备的信息完全相同,除了UpdMode节点没有必要以外,其余不再赘述。这样既可以指定一组终端设备进行管理操作也可以指定单个终端设备进行管理操作,比较灵活。
本实施例中,在ApplyList/Group/<x>或ApplyList/Single/<x>中设置的信息也可以设置在FUMO/<x>节点下,这时这些设置的信息适用于所有DevRef中指定的终端设备,不再赘述,但此时Priority节点中的信息则不适用,而Loc节点则指定了要对DevRef节点中哪些位置的终端设备进行管理操作。)
本实施例中各步骤的执行顺序仅为一种举例,在实际应用中可根据需要变更各步骤的执行顺序。
本实施例中的管理操作可以包括:升级操作、软件管理操作、硬件管理操作或者参数配置管理操作。
本实施例中,网关设备接收到设备管理服务器发送的管理对象实例之后,可以根据该管理对象实例中的设备参考信息确定出需要进行管理的终端设备,然后网关设备可以根据该管理对象实例中的设备管理信息对需要进行管理的终端设备执行管理操作。本实施例中,设备管理服务器仅需配置一个管理对象实例,无需为每个终端设备单独配置管理对象实例,从而降低了设备管理服务器的操作量。
下面通过一个具体的实施例对上述实施例二中的终端设备的管理方法进行详细描述。本实施例三中管理操作以升级操作为例。图3为本发明实施例三提供的一种终端设备的管理方法的流程图,如图3所示,该方法包括:
步骤301,网关设备接收设备管理服务器发送的管理对象实例,该管理对象实例包括终端设备的设备参考信息和设备管理信息。
本实施例中,管理对象实例的结构可以为设备管理树。对设备管理树和该设备管理树中各节点的具体描述可参见上述实施例二,此处不再赘述。其中本实施例和上述实施例二的区别在于:本实施例中管理操作为升级操作。相应地,例如:管理操作结果为升级操作结果,管理操作结果获取请求为升级操作结果获取请求。
换言之,本步骤中设备管理服务器在网关设备上设置管理对象实例。
进一步地,设备管理服务器还可以启动网关设备上的固件升级操作,例如:使用Exec命令触发执行DownloadAndUpdate节点,之后网关设备下载固件升级包。通过下载一次固件升级包就可以对相同型号的批量终端设备进行升级操作。
步骤302,网关设备根据设备参考信息确定出需要进行升级的终端设备。
本步骤中,网关设备对管理对象实例中的设备参考信息进行分析以确定出需要进行升级的终端设备。具体地,网关设备可以对DevRef节点下的信息进行分析,以查找到固件管理对象实例适合于哪个厂家的哪些型号的终端设备,进一步地,若存在ApplyList节点,则还要对该ApplyList节点下的信息进行分析,以确定出适合的终端设备中需要进行升级的终端设备。
网关设备还可以直接对设备管理实例中的设备参考信息(例如:/M2MFUMO/<x>/FUMO/<x>/DevRef)进行分析以查找到要升级的指定的终端设备。其中,在查找过程中,若涉及到位置信息,则利用位置信息在DevInfo节点下查找到符合该位置信息的终端设备,例如:可利用ApplyList/Group/<x>/Loc/LocName节点的节点值,在DevInfo节点下查找到所有DevList/<x>/LocName等于该节点值的终端设备。
步骤303,网关设备对需要进行升级的终端设备执行升级操作。
本步骤中,若管理对象实例包括定时信息,则网关设备根据定时信息对指定的终端设备进行升级操作。具体地,网关设备可通过定时信息分析出对指定的终端设备进行升级操作的时间或者进行升级操作的条件,并根据分析出的进行升级操作的时间或者进行升级操作的条件对指定的终端设备进行升级操作。例如:升级操作的时间可以包括开始时间和结束时间,升级操作的条件可以包括开始条件和结束条件。
本步骤中,若设备管理信息包括优先级信息,则网关设备可以根据优先级信息对需要进行升级的终端设备执行升级操作。具体地,网关设备可通过优先级信息分析出哪些终端设备需要先进行升级操作、哪些终端设备可以后进行升级操作,并根据分析出的结果对指定的终端设备进行升级操作。
本步骤中,若设备管理信息包括顺序模式信息,则网关设备可以根据顺序模式信息对需要进行升级的终端设备执行升级操作。具体地,网关设备通过顺序模式信息分析出要升级的终端设备是顺序升级、并行升级或者是顺序升级和并行升级二者的结合。
本步骤中,网关设备在对需要进行升级的终端设备执行升级操作的过程中,若满足结束条件或者结束时间,则网关设备会停止对上述终端设备的升级操作,例如:网关设备可对未完成升级操作的终端设备进行中断、停止或者恢复等操作。另外,网关设备不再对未升级的终端设备发起升级操作。
步骤304,网关设备对需要进行升级的终端设备在升级操作中所处的状态信息进行记录。
本步骤中,对终端设备所处的状态信息的描述可参见上述实施例二中的描述,此处不再赘述。
步骤305,网关设备根据失败重试策略对升级操作失败的终端设备重新执行管理操作。
具体地,当设备管理信息包括失败重试策略信息时,网关设备可以根据该失败重试策略信息对升级操作失败的终端设备重新执行管理操作。
步骤306,网关设备根据复位策略对升级操作失败的终端设备执行复位操作。
具体地,当设备管理信息包括复位策略信息时,网关设备可以根据该复位策略信息对升级操作失败的终端设备执行复位操作。
步骤307,网关设备对上述需要进行升级操作的终端设备的升级操作结果进行记录。
本步骤中,对升级操作结果的描述可参见上述实施例二中的描述,此处不再赘述。
步骤308,网关设备向设备管理服务器发送升级操作结果。
具体地,当设备管理信息包括回复策略信息时,网关设备可以根据该回复策略信息向设备管理服务器发送升级操作结果;或者,网关设备可以根据设备管理服务器发送的升级操作结果获取请求,将上述升级操作结果发送给设备管理服务器。
步骤309,网关设备接收设备管理服务器根据升级操作结果发送的中断管理操作命令,根据该中断管理操作命令中断对需要进行升级的终端设备的升级操作。
本实施例中,网关设备在中断对需要进行升级的终端设备的升级操作之后,可以执行对终端设备的诊断任务或者执行调整升级策略等。
步骤310,网关设备根据标志位信息对升级操作失败或者未进行升级操作的需要进行升级的终端设备进行升级操作。
本实施例中,当管理对象实例中的设备管理信息包括该标志位信息时,表明设备管理服务器告知网关设备重新开始对升级操作失败或者未进行升级操作的需要进行升级的终端设备进行升级操作。
本实施例中各步骤的执行顺序仅为一种举例,在实际应用中可根据需要变更各步骤的执行顺序。
本实施例中,网关设备接收到设备管理服务器发送的管理对象实例之后,可以根据该管理对象实例中的设备参考信息确定出需要进行升级的终端设备,然后网关设备可以根据该管理对象实例中的设备管理信息对需要进行升级的终端设备执行升级操作。本实施例中,设备管理服务器仅需配置一个管理对象实例,无需为每个终端设备单独配置管理对象实例,从而降低了设备管理服务器的操作量。
本发明实施例三是以网关设备对终端设备进行升级操作为例进行说明,但本发明不局限于对终端设备进行升级操作,还可适用于对终端设备进行软件管理操作、硬件管理操作或者参数配置管理操作等。例如:对终端设备进行参数配置管理操作时,则把图2b中的“现有技术的FUMO”替换为参数管理对象实例即可,其它部分保持不变,操作流程也与实施例三中相似,只是此时对终端设备进行的参数管配置理操作而已。
另外,本发明实施例也不限定适用于M2M设备、移动终端设备或者计算机设备,只要是适合于批量管理的设备均可。例如某公司所有员工的设备需要接受管理操作,于是设备管理服务器借助一个公司的网关设备对批量的员工设备进行管理操作。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
图4为本发明实施例四提供的一种网关设备的结构示意图,如图4所示,该网关设备包括:接收模块41、确定模块42和处理模块43。
接收模块41,用于接收设备管理服务器发送的管理对象实例,该管理对象实例包含至少两个终端设备的设备参考信息和设备管理信息;
确定模块42,用于根据上述设备参考信息确定出需要进行管理的终端设备;
处理模块43,用于根据上述设备管理信息对需要进行管理的终端设备执行管理操作。
本实施例提供的网关设备可用于执行上述实施例一提供的终端设备的管理方法。
上述网关设备中,接收模块41接收到设备管理服务器发送的管理对象实例之后,确定模块42可以根据该管理对象实例中的设备参考信息确定出需要进行管理的终端设备,然后处理模块43可以根据该管理对象实例中的设备管理信息对需要进行管理的终端设备执行管理操作。本实施例中,设备管理服务器仅需配置一个管理对象实例,无需为每个终端设备单独配置管理对象实例,从而降低了设备管理服务器的操作量。
图5为本发明实施例五提供的一种网关设备的结构示意图,如图5所示,本实施例在上述实施例四的基础上,上述管理对象实例还可以包括位置信息,则确定模块42具体可用于根据上述设备参考信息和上述位置信息确定出需要进行管理的终端设备。
进一步地,当设备管理信息包括定时信息时,处理模块43具体可用于根据该定时信息对上述需要进行管理的终端设备进行管理操作。
进一步地,当设备管理信息包括优先级信息时,处理模块43具体可用于根据该优先级信息对上述需要进行管理的终端设备进行管理操作。
进一步地,当设备管理信息包括顺序模式信息时,处理模块43具体可用于根据该顺序模式信息对上述需要进行管理的终端设备进行升级操作。
进一步地,该网关设备可包括:第一记录模块44,用于对需要进行管理的终端设备在管理操作中所处的状态信息进行记录。
进一步地,本实施例中,该网关设备还可以包括以下至少一种模块:
第一操作模块45,用于当设备管理信息包括标志位信息时,在处理模块43根据设备管理信息对需要进行管理的终端设备执行管理操作之后,根据该标志位信息对管理操作失败或者未进行管理操作的需要进行管理的终端设备进行管理操作;
第二操作模块46,用于当设备管理信息包括失败重试策略信息时,在处理模块43根据设备管理信息对需要进行管理的终端设备执行管理操作之后,根据该失败重试策略信息对管理操作失败的终端设备重新执行管理操作;
第三操作模块47,用于当设备管理信息包括复位策略信息时,在处理模块43根据设备管理信息对需要进行管理的终端设备执行管理操作之后,根据该复位策略信息对管理操作失败的终端设备执行复位操作;
第四操作模块48,用于当设备管理信息包括回复策略信息时,在处理模块43根据设备管理信息对需要进行管理的终端设备执行管理操作之后,根据该回复策略信息向设备管理服务器发送管理操作结果。
进一步地,该网关设备还可包括:记录模块49,用于对需要进行管理的终端设备的管理操作结果进行记录。
进一步地,该网关设备还可包括:发送模块410,用于当接收到设备管理服务器发送的获取请求时,向该设备管理服务器发送管理操作结果。
进一步地,该网关设备还可包括:中断模块411,用于当接收到设备管理服务器根据上述管理操作结果发送的中断管理操作命令时,中断对需要进行管理的终端设备的管理操作。
本实施例提供的网关设备可用于执行上述实施例二或者实施例三提供的终端设备的管理方法。
上述网关设备中,接收模块41接收到设备管理服务器发送的管理对象实例之后,确定模块42可以根据该管理对象实例中的设备参考信息确定出需要进行管理的终端设备,然后处理模块43可以根据该管理对象实例中的设备管理信息对需要进行管理的终端设备执行管理操作。本实施例中,设备管理服务器仅需配置一个管理对象实例,无需为每个终端设备单独配置管理对象实例,从而降低了设备管理服务器的操作量。
图6为本发明实施例六提供的一种终端设备的管理系统的结构示意图,如图6所示,该系统包括:网关设备1和设备管理服务器2。
设备管理服务器2,用于向网关设备1发送管理对象实例,该管理对象实例包含至少两个终端设备的设备参考信息和设备管理信息;
网关设备1,用于接收设备管理服务器2发送的管理对象实例,根据设备参考信息确定出需要进行管理的终端设备,并根据设备管理信息对该需要进行管理的终端设备执行管理操作。
本实施例中网关设备1可通过上述实施例四或者实施例五中的网关设备实现,此处不再赘述。
本实施例提供的终端设备的管理系统,网关设备接收到设备管理服务器发送的管理对象实例之后,可以根据该管理对象实例中的设备参考信息确定出需要进行管理的终端设备,然后可以根据管理对象实例中的设备管理信息对上述需要进行管理的终端设备执行管理操作;本实施例中,设备管理服务器仅需配置一个管理对象实例,无需为每个终端设备单独配置管理对象实例,从而降低了设备管理服务器的操作量。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。