消息发送方法及设备与流程

文档序号:16633843发布日期:2019-01-16 06:49阅读:134来源:国知局
消息发送方法及设备与流程

本申请涉及通信技术领域,尤其涉及一种消息发送方法及设备。



背景技术:

物联网标准化组织onem2m致力于开发用于构造一个公共的机器对机器通信(machinetomachine,m2m)应用层的技术规范。目前,onem2m支持物联网(internetofthings,iot)场景下的群组管理,包括对群组资源的增删改查操作,以及通过分发(fanoutpoint)资源对群组成员的资源进行增删改查操作,onem2m支持利用底层网络的多播机制实现群组多播,但不支持周期性的向群组多播消息。此外,第三代合作伙伴计划(3rdgenerationpartnershipproject,3gpp)网络支持基于多媒体广播多播服务(multimediabroadcast/multicastservice,mbms)进行群组多播,并且支持通过业务能力开放功能(servicecapabilityexposurefunction,scef)开放群组多播能力,群组管理服务器或者应用服务器可以调用3gpp网络开放的接口进行mbms群组多播,然而,3gpp网络场景下不支持应用层的群组设置,无法实现周期性的向群组多播消息。

另外,物联网中存在大量的能力受限设备,如果内存或供电受限,这些能力受限设备会定期或不定期的进入休眠状态,无法正常接收消息或数据,为了保证这些设备能够接收到应用服务器发送的消息或数据,现有技术中或者采用应用服务器重发的方法,或者采用传输或通信网络缓存重发的方法,增加了应用服务器的性能消耗,占用了通信网络的传输资源,降低了消息发送效率。



技术实现要素:

本申请实施例公开了一种消息发送方法及设备,可以在指定的消息发送周期时段向终端发送消息,并确保终端在消息发送周期时段可以接收到消息。

本申请实施例第一方面公开了一种消息发送方法,包括:

群组管理服务器获取第一群组对应的消息发送周期时段,向多播群组的群组成员发送tmgi和消息发送周期时段,根据tmgi和消息发送周期时段的开始时间向通信网络申请通信资源,在消息发送周期时段内,接收到应用服务器发送的消息,并向通信网络发送tmgi和该消息,使得通信网络使用tmgi对应的通信资源向多播群组的群组成员发送该消息,可以实现周期性地多播消息。群组管理服务器将消息发送周期时段发送给群组成员,群组成员就可以提前做好准备,如从休眠状态中苏醒,在消息发送周期时段正常接收来自群组管理服务器的消息,避免消息发送失败,无需群组管理服务器或通信网络重发消息。需要说明的是,群组管理服务器可以在不同的消息中先后向群组成员发送tmgi和消息发送周期时段,也可以在同一个消息中同时向群组成员发送tmgi和消息发送周期时段。

可选的,所述群组管理服务器获取第一群组对应的消息发送周期时段,包括:

群组管理服务器接收应用服务器发送的第一群组创建请求,所述第一群组创建请求包括消息发送周期时段,响应所述第一群组创建请求创建第一群组,并将所述第一群组的消息发送时间设为所述消息发送周期时段。

或者,群组管理服务器接收应用服务器发送的第一群组创建请求,响应所述第一群组创建请求创建第一群组,接收所述应用服务器发送的第三消息,所述第三消息包括消息发送周期时段,将所述第一群组的消息发送时间设为所述消息发送周期时段。

可选的,所述群组管理服务器获取第一群组对应的消息发送周期时段,包括:

群组管理服务器接收应用服务器发送的第一群组创建请求,所述第一群组创建请求包括消息发送周期时段;或者,群组管理服务器接收应用服务器发送的第一群组创建请求,以及接收所述应用服务器发送的第三消息,所述第三消息包括消息发送周期时段。

所述群组管理服务器获取第一群组中群组成员的可接收消息的周期时段之间的交集,若所述消息发送周期时段为所述交集的子集,则所述群组管理服务器响应所述第一群组创建请求创建所述第一群组,并将所述第一群组的消息发送时间设为所述消息发送周期时段。

可选的,所述群组管理服务器还向所述多播群组的群组成员发送响应时间窗,所述群组管理服务器向所述通信网络发送第二消息之后,所述方法还包括:

所述群组管理服务器在所述响应时间窗期间,接收所述多播群组的群组成员根据所述响应时间窗发送的所述第一消息的响应。

可选的,所述方法还包括:

所述群组管理服务器在所述消息发送周期时段外,接收到所述应用服务器发送的所述第一消息,所述第一消息包括操作执行时间和请求过期时间戳,若所述操作执行时间和所述请求过期时间戳在所述消息发送周期时段内,则所述群组管理服务器缓存所述第一消息。

所述群组管理服务器在所述消息发送周期时段的开始时间到达时,向所述通信网络发送所述第二消息,所述第二消息包括所述tmgi和所述第一消息,所述tmgi用于指示所述通信网络使用所述tmgi对应的通信资源向所述多播群组的群组成员发送所述第一消息。

可选的,所述群组管理服务器向通信网络发送申请通信资源的请求之前,所述方法还包括:

所述群组管理服务器判断所述tmgi的过期时间是否早于距离当前时间最近的所述消息发送周期时段的开始时间,若是,则所述群组管理服务器向所述通信网络发送所述tmgi的过期时间更新请求,接收所述通信网络发送的所述tmgi的过期时间更新请求的响应,所述tmgi的过期时间更新请求的响应包括更新后的所述tmgi的过期时间。这样,就确保了在消息发送周期时段内tmgi的有效性,通信网络在消息发送周期时段可以为该tmgi正常分配通信资源。否则在消息发送之前,群组管理服务器还需要首先向通信网络更新或申请tmgi,降低了消息发送的实时性和效率。

可选的,所述群组管理服务器向多播群组的群组成员发送所述多播群组对应的临时移动群组标识tmgi和所述消息发送周期时段之前,所述方法还包括:

所述群组管理服务器获取所述第一群组包括的群组成员中支持mbms且位于mbms覆盖区域范围内的目标群组成员,创建多播群组,所述多播群组的群组成员为所述目标群组成员。

可选的,所述群组成员为用户设备ue。

可选的,所述群组管理服务器记录的所述多播群组的信息包括所述tmgi、所述tmgi的过期时间和响应时间窗中的一种或多种。

本申请实施例第二方面公开了一种消息发送方法,包括:

第一群组成员接收群组管理服务器发送的tmgi和消息发送周期时段,该第一群组成员为所述群组管理服务器预先创建的第一群组中支持mbms的群组成员,在消息发送周期时段内,接收通信网络向该tmgi对应群组的群组成员发送的消息,可以实现周期性地多播消息。

可选的,所述消息发送周期时段包括开始时间和结束时间,所述第一群组成员在所述消息发送周期时段内,接收所述通信网络向所述tmgi对应群组的群组成员发送的消息之前,所述方法还包括:

在所述消息发送周期时段的开始时间到达时,若所述第一群组成员处于省电模式,则所述第一群组成员退出所述省电模式。确保在消息发送周期时段内可以正常接收消息。

可选的,所述第一群组成员还接收所述群组管理服务器发送的响应时间窗,所述第一群组成员在所述消息发送周期时段内,接收所述通信网络向所述tmgi对应群组的群组成员发送的消息之后,所述方法还包括:

所述第一群组成员从所述响应时间窗中随机选取响应时间,并按照所述随机选取的响应时间向所述群组管理服务器发送所述消息的响应。

可选的,所述第一群组成员记录的所述tmgi对应群组的信息包括所述tmgi、所述消息发送周期时段和响应时间窗中的一种或多种。

本申请实施例第三方面公开了一种群组管理服务器,包括:

获取模块,用于获取第一群组对应的消息发送周期时段,所述消息发送周期时段包括开始时间和结束时间。

发送模块,用于向多播群组的群组成员发送所述多播群组对应的tmgi和所述消息发送周期时段,所述多播群组的群组成员为所述第一群组中支持mbms的群组成员。

所述发送模块,还用于向通信网络发送申请通信资源的请求,所述申请通信资源的请求包括所述tmgi和所述消息发送周期时段的开始时间,所述tmgi为所述通信网络为所述多播群组分配的标识,所述申请通信资源的请求用于请求所述通信网络从所述开始时间起为所述多播群组的群组成员提供mbms所需的通信资源。

接收模块,用于接收应用服务器发送的第一消息。

所述发送模块,还用于在所述接收模块在所述消息发送周期时段内,接收到所述第一消息时,向所述通信网络发送第二消息,所述第二消息包括所述tmgi和所述第一消息,所述tmgi用于指示所述通信网络使用所述tmgi对应的通信资源向所述多播群组的群组成员发送所述第一消息。

可选的,所述获取模块,具体用于:

接收应用服务器发送的第一群组创建请求,所述第一群组创建请求包括消息发送周期时段。

响应所述第一群组创建请求创建第一群组,并将所述第一群组的消息发送时间设为所述消息发送周期时段。

或者,接收应用服务器发送的第一群组创建请求。

响应所述第一群组创建请求创建第一群组。

接收所述应用服务器发送的第三消息,所述第三消息包括消息发送周期时段。

将所述第一群组的消息发送时间设为所述消息发送周期时段。

可选的,所述获取模块,具体用于:

接收应用服务器发送的第一群组创建请求,所述第一群组创建请求包括消息发送周期时段;或者,接收应用服务器发送的第一群组创建请求,以及接收所述应用服务器发送的第三消息,所述第三消息包括消息发送周期时段。

获取第一群组中群组成员的可接收消息的周期时段之间的交集。

若所述消息发送周期时段为所述交集的子集,则响应所述第一群组创建请求创建所述第一群组,并将所述第一群组的消息发送时间设为所述消息发送周期时段。

可选的,所述发送模块,还用于向所述多播群组的群组成员发送响应时间窗。

所述接收模块,还用于在所述响应时间窗期间,接收所述多播群组的群组成员根据所述响应时间窗发送的所述第一消息的响应。

可选的,所述群组管理服务器还包括缓存模块,其中:

所述缓存模块,用于在所述接收模块在所述消息发送周期时段外,接收到所述第一消息,所述第一消息包括操作执行时间和请求过期时间戳,且所述操作执行时间和所述请求过期时间戳在所述消息发送周期时段内时,缓存所述第一消息。

所述发送模块,还用于在所述消息发送周期时段的开始时间到达时,向所述通信网络发送所述第二消息,所述第二消息包括所述tmgi和所述第一消息,所述tmgi用于指示所述通信网络使用所述tmgi对应的通信资源向所述多播群组的群组成员发送所述第一消息。

可选的,所述群组管理服务器还包括判断模块,其中:

所述判断模块,用于判断所述tmgi的过期时间是否早于距离当前时间最近的所述消息发送周期时段的开始时间。

所述发送模块,还用于在所述判断模块的判断结果为是时,向所述通信网络发送所述tmgi的过期时间更新请求。

所述接收模块,还用于接收所述通信网络发送的所述tmgi的过期时间更新请求的响应,所述tmgi的过期时间更新请求的响应包括更新后的所述tmgi的过期时间。

可选的,所述群组管理服务器还包括创建模块,其中:

所述获取模块,还用于获取所述第一群组包括的群组成员中支持mbms且位于mbms覆盖区域范围内的目标群组成员。

所述创建模块,用于创建多播群组,所述多播群组的群组成员为所述目标群组成员。

可选的,所述群组成员为ue。

可选的,所述群组管理服务器记录的所述多播群组的信息包括所述tmgi、所述tmgi的过期时间和响应时间窗中的一种或多种。

本申请实施例第四方面公开了一种终端,包括:处理器、通信接口和存储器,所述存储器存储指令,所述通信接口受所述处理器的控制用于收发消息,所述处理器用于调用所述指令,执行上述第二方面所述的消息发送方法。

本申请实施例第五方面提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面或第二方面所述的消息发送方法。

本申请实施例中,群组管理服务器获取第一群组对应的消息发送周期时段,向多播群组的群组成员发送临时移动群组标识tmgi和消息发送周期时段,根据tmgi和消息发送周期时段的开始时间向通信网络申请通信资源,在消息发送周期时段内,接收到应用服务器发送的消息,并向通信网络发送tmgi和该消息,使得通信网络使用tmgi对应的通信资源向多播群组的群组成员发送该消息,从而可以实现周期性地多播消息。

需要说明的是,如上第一方面和第二方面所述的群组管理服务器向群组成员发送消息发送周期时段,并在消息发送周期时段内发送消息的方法,不仅可以适用于第一群组中多播群组的群组成员,还可以适用于第一群组中的任何群组成员。对于第一群组中不支持mbms的群组成员,群组管理服务器同样可以发送消息发送周期时段给第一群组中不支持mbms的群组成员,在收到应用服务器的第一消息后,群组管理服务器在消息发送周期时段内,向第一群组中不支持mbms的群组成员发送第一消息,其中,所述第一消息可以通过通信网络转发。相比第一方面和第二方面中所述群组管理服务器向第一群组中多播群组的群组成员发送消息的方法,对于第一群组中不支持mbms的群组成员,群组管理服务器无需向通信网络申请tmgi和mbms所需的资源。附图说明

为了更清楚地说明本申请实施例或背景技术中的技术方案,下面将对本申请实施例或背景技术中所需要使用的附图进行说明。

图1是本申请实施例公开的一种消息发送系统的架构示意图;

图2是本申请实施例公开的一种消息发送方法的流程示意图;

图2a是本申请实施例公开的另一种消息发送方法的流程示意图;

图2b是本申请实施例公开的又一种消息发送方法的流程示意图;

图3是本申请实施例公开的一种创建群组的流程示意图;

图3a是本申请实施例公开的一种创建消息发送周期时段的流程示意图;

图4是本申请实施例公开的一种申请通信资源的流程示意图;

图5是本申请实施例公开的一种发送消息的流程示意图;

图6是本申请实施例公开的一种群组管理服务器的结构示意图;

图7是本申请实施例公开的一种终端的结构示意图;

图8是本申请实施例公开的另一种群组管理服务器的结构示意图;

图9是本申请实施例公开的另一种终端的结构示意图。

具体实施方式

下面结合本申请实施例中的附图对本申请实施例进行描述。

请参阅图1,为本申请实施例提供的一种消息发送系统的架构示意图。本实施例中所描述的消息发送系统,包括:

应用服务器,具体可以是应用实体(applicationentity,ae)等,位于应用层,可实现一个m2m应用服务逻辑,用于通过群组管理服务器和通信网络向群组成员下发消息。

群组管理服务器,具体可以是业务能力服务器(servicecapabilityserver,scs)等,用于实现群组的创建和维护工作,通过通信网络向群组成员转发应用服务器下发的消息。

通信网络,具体可以是3gpp网络,也可以是互联网协议(internetprotocol,ip)网络,用于向群组管理服务器向群组成员转发消息提供通信资源。

群组成员,具体可以是用户设备(userequipment,ue)等,用于接收应用服务器通过群组管理服务器和通信网络下发的消息,并执行该消息指示的动作。

目前,onem2m支持利用底层网络的多播机制实现群组多播,3gpp网络也支持基于mbms进行群组多播,并且支持通过scef开放群组多播能力,但应用服务器利用底层网络的多播机制或者3gpp网络基于mbms的群组多播能力均无法周期性的向群组多播消息。

本申请实施例公开了一种消息发送方法及设备,可以实现周期性地多播消息。以下分别进行详细说明。

请参阅图2,为本申请实施例基于图1所示的消息发送系统的架构提供的一种消息发送方法的流程示意图。本实施例中所描述的消息发送方法,包括:

201、群组管理服务器获取第一群组对应的消息发送周期时段。

其中,消息发送周期时段是指向群组发送消息的时间,具体包括开始时间(startime)和结束时间(endtime),即在每一个周期的开始时间和结束时间对应的时段内向群组发送消息。消息发送周期时段可以包括一个或者多个时段,例如,消息发送周期时段包括两个时段,即每周二的晚上10:00~12:00,以及每周四的晚上10:00~12:00,可以通过在该消息发送周期时段内向群组发送消息,实现对群组成员进行周期性的管理维护等,包括对群组成员进行系统升级、检查电池电量等。该消息发送周期时段可以是由应用服务器根据实际需求设置并发送给群组管理服务器的。

具体实现中,群组管理服务器可以接收应用服务器发送的第一群组创建请求,第一群组创建请求包括消息发送周期时段以及第一群组包括的群组成员的标识信息,即应用服务器可以通过该第一群组创建请求实现向群组管理服务器发送该消息发送周期时段。

进一步的,群组管理服务器在响应第一群组创建请求创建第一群组之前,需判断群组成员的可接收消息的周期时段是否允许修改,具体实现流程如图3所示,可以包括以下步骤:

301~303:群组管理服务器接收应用服务器发送的第一群组创建请求,如果群组成员的可接收消息的周期时段允许修改,表明可以通过修改各个群组成员的可接收消息的周期时段,确保各个群组成员可以在同一时段内接收消息,则群组管理服务器可以响应第一群组创建请求,根据第一群组包括的群组成员的标识信息创建第一群组,并将第一群组的消息发送时间设为该消息发送周期时段,群组管理服务器还可以向应用服务器返回第一群组创建成功的消息。

304~305:如果群组成员的可接收消息的周期时段不允许修改,则群组管理服务器可以先获取各个群组成员的可接收消息的周期时段之间的交集,如果交集为空,则表明各个群组成员无法在同一时段内接收消息,群组管理服务器向应用服务器返回第一群组创建失败的消息。

306~307:如果群组成员的可接收消息的周期时段不允许修改,且各个群组成员的可接收消息的周期时段之间的交集不为空,但各个群组成员的可接收消息的周期时段之间的交集与该消息发送周期时段没有交集,或者,各个群组成员的可接收消息的周期时段之间的交集是该消息发送周期时段的子集,则表明群组成员无法在该消息发送周期时段内接收消息,或者,群组成员只能在该消息发送周期时段内的部分时间接收消息,群组管理服务器可以向应用服务器返回第一群组创建失败的消息,第一群组创建失败的消息可以包括各个群组成员的可接收消息的周期时段之间的交集,应用服务器可以根据各个群组成员的可接收消息的周期时段之间的交集调整该消息发送周期时段,使得调整后的该消息发送周期时段是各个群组成员的可接收消息的周期时段之间的交集的子集,并可以利用调整后的该消息发送周期时段再次向群组管理服务器发送第一群组创建请求。

308~309:如果群组成员的可接收消息的周期时段不允许修改,且各个群组成员的可接收消息的周期时段之间的交集不为空,且该消息发送周期时段是各个群组成员的可接收消息的周期时段之间的交集的子集,则表明群组成员可以在该消息发送周期时段内接收消息,群组管理服务器可以响应第一群组创建请求,根据第一群组包括的群组成员的标识信息创建第一群组,并将第一群组的消息发送时间设为该消息发送周期时段,群组管理服务器还可以向应用服务器返回第一群组创建成功的消息。

其中,可以将消息发送周期时段记为schedule,则群组管理服务器对第一群组的群组资源<group>新增子资源<schedule>。

需要说明的是,图3中所述的群组成员可以只包括多播群组的群组成员,即消息发送周期时段只对多播群组的群组成员有效;也可以包括第一群组所有的群组成员,即消息发送周期时段对第一群组中所有的群组成员有效。

202、所述群组管理服务器向多播群组的群组成员发送临时移动群组标识tmgi和所述消息发送周期时段。

相应的,所述多播群组的群组成员接收所述tmgi和所述消息发送周期时段。

在一种可能的实现方式中,在步骤202之前,所述的消息发送方法还可以包括如下创建多播群组的步骤:

群组管理服务器从第一群组中选取群组成员创建多播群组(multicastgroup),具体实现方式可以为:群组管理服务器获取第一群组包括的群组成员中支持多媒体广播多播服务(multimediabroadcast/multicastservice,mbms)的群组成员,获取提供mbms的覆盖区域范围,将支持mbms且位于mbms覆盖区域范围内的群组成员确定为目标群组成员,并以该目标群组成员为群组成员创建多播群组。其中,多播群组的群组成员即为应用服务器根据消息发送周期时段周期性发送消息的对象。

进一步的,群组管理服务器创建多播群组之后,所述的消息发送方法还可以包括如下申请临时移动群组标识(temporarymobilegroupidentity,tmgi)的步骤:

群组管理服务器向通信网络申请tmgi,具体实现方式可以为:群组管理服务器向通信网络发送申请tmgi的请求,申请tmgi的请求包括申请的tmgi数量(numberoftmgi),接收通信网络根据申请的tmgi数量发送的tmgi列表(list)和tmgi的过期时间(expiration),tmgi列表包括该申请的tmgi数量的tmgi,每一个tmgi对应有一个过期时间,一个tmgi对应一个多播群组。

其中,通信网络至少可以包括业务能力开放功能(servicecapabilityexposurefunction,scef)和广播多播服务中心(bm-sc,broadcast/multicastservicecenter)。

其中,群组管理服务器记录多播群组的信息,并在多播群组的信息multicastgroupinformation中新增属性tmgi和tmgi的过期时间,现有的属性多播类型(multicasttype)新增枚举值周期性3gpp多播群组,可记为periodic_3gpp_mbms_group,群组管理服务器将创建的上述多播群组的multicasttype设为periodic_3gpp_mbms_group。

具体实现中,群组管理服务器可以通过单播或多播或广播的方式向多播群组的群组成员发送tmgi和消息发送周期时段。

203、多播群组的群组成员创建本地多播群组。

具体实现中,多播群组的群组成员根据该tmgi,加入该tmgi对应的多播群组multicastgroup,并创建本地多播群组。

需要说明的是,本地多播群组是多播群组的群组成员在本地创建的记录或资源,作用是为了记录其所在多播群组(即tmgi对应的多播群组)的相关信息,多播群组的群组成员可以使用本地多播群组这样一个资源记录tmgi和消息发送周期时段,即可以在本地多播群组资源<localmulticastgroup>中新增属性tmgi,新增子资源<schedule>。当然,多播群组的群组成员也可以使用其它的方式记录所在的多播群组的相关信息。

进一步的,多播群组的群组成员创建本地多播群组后可以向群组管理服务器返回响应消息。

204、群组管理服务器向通信网络发送申请通信资源的请求。

相应的,所述通信网络接收所述申请通信资源的请求,并从所述开始时间起为所述多播群组的群组成员提供mbms所需的通信资源。

其中,申请通信资源的请求包括tmgi和消息发送周期时段的开始时间startime,tmgi为通信网络为多播群组的群组成员分配的标识。

在一种可能的实现方式中,在步骤204之前,所述的消息发送方法还可以包括步骤:

群组管理服务器判断tmgi是否过期,若是,则向通信网络申请续期,具体实现方式可以为:群组管理服务器判断tmgi的过期时间是否早于距离当前时间最近的消息发送周期时段的开始时间,例如当前时间为周一上午10:00,消息发送周期时段为每周二的晚上10:00~12:00,则距离当前时间最近的消息发送周期时段的开始时间为第二天(即周二)的晚上10:00,则群组管理服务器将tmgi的过期时间与周二的晚上10:00进行比较,如果tmgi的过期时间早于周二的晚上10:00,则群组管理服务器确定如果不更新tmgi的过期时间,当时间到达周二的晚上10:00时,tmgi已过期,群组管理服务器可以向通信网络发送tmgi的过期时间更新请求,通信网络对tmgi进行续期,向群组管理服务器发送tmgi的过期时间更新请求的响应,该tmgi的过期时间更新请求的响应包括更新后的tmgi的过期时间。

205、所述通信网络从所述消息发送周期时段的开始时间起为所述多播群组的群组成员提供mbms所需的通信资源。

具体实现中,群组管理服务器在消息发送周期时段的开始时间到达之前,向通信网络发送申请通信资源的请求,通信网络可以从消息发送周期时段的开始时间起为多播群组的群组成员提供mbms所需的通信资源,mbms所需的通信资源具体为tmgi对应的通信资源。

在一种可能的实现方式中,步骤204和205的具体实现流程如图4所示,可以包括以下步骤:

401~405:群组管理服务器向业务能力开放功能发送申请通信资源的请求,申请通信资源的请求可以包括tmgi和消息发送周期时段的开始时间startime,业务能力开放功能向广播多播服务中心转发申请通信资源的请求,广播多播服务中心可以从消息发送周期时段的开始时间startime起为多播群组的群组成员提供mbms所需的通信资源,并向业务能力开放功能发送申请通信资源的请求的响应,申请通信资源的请求的响应可以包括tmgi、服务描述servicedescription和广播多播服务中心的ip地址、端口port等,业务能力开放功能向群组管理服务器转发申请通信资源的请求的响应。

206、应用服务器在所述消息发送周期时段内,向群组管理服务器发送第一消息。

相应的,群组管理服务器接收应用服务器发送的第一消息。

具体实现中,应用服务器可以在消息发送周期时段内向群组管理服务器周期性地发送消息(记为第一消息),群组管理服务器接收该第一消息。

207、群组管理服务器向所述通信网络发送第二消息,所述第二消息包括所述tmgi和所述第一消息。

相应的,通信网络接收第二消息。

具体实现中,群组管理服务器接收到应用服务器在消息发送周期时段内发送的第一消息后,可以通过通信网络向多播群组的群组成员发送该第一消息,例如,群组管理服务器可以向通信网络发送第二消息,第二消息包括tmgi和该第一消息。

208、通信网络使用所述tmgi对应的通信资源向所述多播群组的群组成员发送所述第一消息。

相应的,多播群组的群组成员在所述消息发送周期时段内,接收所述第一消息。

具体实现中,通信网络接收到第二消息后,获取第二消息包括的tmgi,并利用tmgi对应的通信资源向多播群组的群组成员发送该第一消息,该多播群组的群组成员在该消息发送周期时段内监听tmgi对应的通信资源上承载的该第一消息,从而实现应用服务器周期性地向多播群组的群组成员发送消息。

在一种可能的实现方式中,在消息发送周期时段的开始时间到达时,多播群组的群组成员确定自身所处的工作模式,如果多播群组的群组成员处于省电模式(powersavemode,psm),则多播群组的群组成员退出省电模式后在该消息发送周期时段内监听tmgi对应的通信资源上承载的该第一消息,从而可以避免在消息到达时,因群组成员处于省电模式而无法接收消息导致的群组消息资源的浪费。

在一种可能的实现方式中,第一消息中可以包括响应统一资源标识符(responseuniformresourceidentifier,responseuri),并且responseuri指向群组管理服务器,从而多播群组的群组成员根据responseuri可以将接收到第一消息的响应发送给资源管理服务器。群组管理服务器还可以向多播群组的群组成员发送响应时间窗(responsetimewindow),响应时间窗可以由群组管理服务器设置,在群组管理服务器记录的多播群组的信息multicastgroupinformation中新增属性响应时间窗,在群组成员记录的本地多播群组资源<localmulticastgroup>中也新增属性响应时间窗。多播群组的群组成员在接收到该第一消息并完成该第一消息对应的操作之后,根据responseuri在向群组管理服务器发送该第一消息的响应时,可以从该响应时间窗中随机选取响应时间,并按照随机选取的响应时间向群组管理服务器发送第一消息的响应。相应的,群组管理服务器在该响应时间窗期间,接收多播群组的群组成员发送的该第一消息的响应,并将多播群组的群组成员发送的响应汇整后发送给应用服务器。

在一种可能的实现方式中,应用服务器也可以在消息发送周期时段外向多播群组的群组成员多播消息,具体实现流程如图5所示,可以包括以下步骤:

501~503:应用服务器在消息发送周期时段外,向群组管理服务器发送第一消息,群组管理服务器接收应用服务器发送的第一消息,获取第一消息包括的操作执行时间(operationexecutiontime)和请求过期时间戳(requestexpirationtimestamp),判断操作执行时间和请求过期时间戳是否在消息发送周期时段内,如果操作执行时间和请求过期时间戳不在消息发送周期时段内,则群组管理服务器可以拒绝向多播群组的群组成员发送该第一消息,并可以向应用服务器返回该第一消息发送失败的响应消息。

503~506:如果操作执行时间和请求过期时间戳在消息发送周期时段内,则群组管理服务器可以先缓存该第一消息,并在该消息发送周期时段的开始时间到达时,再通过通信网络向多播群组的群组成员发送该第一消息。

需要说明的是,本申请实施例是以通信网络是3gpp网络为例,本申请实施例提供的消息发送方法也可以适用于其它类型的通信网络,例如互联网协议(internetprotocol,ip)网络等。

本申请实施例中,群组管理服务器获取第一群组对应的消息发送周期时段,向多播群组的群组成员发送tmgi和消息发送周期时段,多播群组的群组成员加入该多播群组,并创建本地多播群组;群组管理服务器根据tmgi和该消息发送周期时段的开始时间向通信网络申请通信资源,通信网络从该开始时间起为多播群组的群组成员提供mbms所需的通信资源;群组管理服务器在该消息发送周期时段内,接收到应用服务器发送的第一消息,并向通信网络发送该tmgi和该第一消息,通信网络使用该tmgi对应的通信资源向多播群组的群组成员发送该第一消息,多播群组的群组成员在该消息发送周期时段内接收该第一消息,从而可以实现周期性地多播消息,提高多播消息时的灵活性。

在一种可能的实现方式中,消息发送周期时段也可以与第一群组创建请求分开发送,具体可以是:应用服务器向群组管理服务器发送第一群组创建请求,以及发送第三消息,第三消息包括该消息发送周期时段。第一群组创建与消息发送周期时段创建分离的流程图如图2a所示,其中,与图2中编号相同的消息或步骤请参见图2所述,此处不再赘述,图2a中新增编号或与图2中不同编号的消息或步骤,描述如下:

201a:群组管理服务器创建第一群组,群组管理服务器创建第一群组的触发方式本发明实施例不做限定,如群组管理服务器可以是根据应用服务器的请求创建的第一群组,应用服务器的请求中包括第一群组包括的群组成员的标识。

201b:当第一群组中包括支持mbms的群组成员时,群组服务器可以在第一群组中选取支持mbms的群组成员创建多播群组,创建多播群组的方法和步骤参见图2步骤202中创建多播群组的步骤描述;群组管理服务器还可以向通信网络申请tmgi,具体步骤参见图2步骤202中申请tmgi的步骤描述;群组管理服务器还可以通过单播或多播或广播的方式向多播群组的群组成员发送tmgi,多播群组的群组成员接收到tmgi之后的处理请参见图2中步骤203中的描述。

201c:群组管理服务器获取第一群组对应的消息发送周期时段。群组管理服务器获取第一群组对应的消息发送周期时段的方式,本发明实施例不做限定,如群组管理服务器可以是根据应用服务器的请求为第一群组创建对应的消息发送周期时段,应用服务器发送的请求消息中包括第一群组的标识和消息发送周期时段。需要说明的是,应用服务器可以获知群组服务器上创建的第一群组的信息(包括群组标识,消息发送周期时段等),如当群组管理服务器是根据应用服务器的请求创建的第一群组或消息发送周期时段,应用服务器在群组服务器发送的响应消息中可以获知第一群组的信息,如当群组管理服务器是根据操作维护指令创建的第一群组或消息发送周期时段,应用服务器也可以通过查询获知第一群组的信息。群组管理服务器为第一群组创建消息发送周期时段的具体流程图如3a所示,图3a中的步骤描述与图3中步骤描述基本相同,不同之处在于,301a所示的第三消息为请求创建消息发送周期时段的消息,302a,304a,306a和308a为第一群组已创建的前提下,群组管理服务器创建消息周期发送时段的处理和判断,对应的303a,305a,307a,309a为创建消息发送周期时段的成功或失败响应消息。

202a:第一群组的消息周期时段发送时段创建成功后,当第一群组中包括多播子群组时,群组管理服务器向多播群组的群组成员发送消息发送周期时段。群组管理服务器可以通过单播或多播或广播的方式向多播群组的群组成员发送消息发送周期时段。

203a:多播群组的群组成员记录其所在的多播群组对应的消息发送周期时段。多播群组的群组成员可以在本地多播群组资源<localmulticastgroup>中新增子资源<schedule>,也可以使用其它的方式记录所在的多播群组的相关信息。

图2和图2a描述了群组管理服务器创建第一群组对应的消息发送周期时段,通知第一群组中多播群组的群组成员,并在消息发送周期时段向多播群组的群组成员发送消息的流程和步骤。图2所述实施例中可能的实现方式和流程,如图4和图5中所述方法流程,同样适用于图2a所述实施例,此处不再赘述。

需要说明的是,当第一群组中不包含不支持mbms的群组成员,即第一群组的所有群组成员都属于多播群组时,图3a中所述的群组成员实际上多播群组的群组成员;当第一群组中还包括不支持mbms的群组成员,且图3a中所述的群组成员仅包含多播群组的群组成员时,消息发送周期时段仅对多播群组的群组成员有效;当第一群组中还包括不支持mbms的群组成员,且图3a中所述的群组成员为第一群组的所有群组成员时,消息发送周期时段应用于第一群组中所有的群组成员,在图2和图2a中,群组管理服务器在确定第一群组对应的消息发送周期时段后,群组管理服务器还要通知第一群组中其它不支持mbms的群组成员第一群组对应的消息发送周期时段,另外,在群组服务器接收到第一消息后,群组管理服务器还要在消息发送周期时段内,向第一群组中不支持mbms的群组成员发送第一消息。群组管理服务器向第一群组中不支持mbms的群组成员发送消息发送周期时段和第一消息的方式本发明实施例不做限定,可以单播,也可以通过ip多播或其它方式。另外,群组管理服务器为了能够在消息发送周期时段内,向第一群组中不支持mbms的群组成员发送第一消息,群组管理服务器在向第一群组中不支持mbms的群组成员发送第一消息之前,同样需要执行如502-504所述的步骤。

还需要说明的是,在图2a所描述的流程中,当第一群组中不包含支持mbms的群组成员时,创建第一群组对应的消息发送周期时段,与在消息发送周期时段内向第一群组成员发送消息的流程如图2b所示。与图2a相比,图2b中不包含与多播群组相关的流程和步骤,其它步骤与图2a相同。另外,由于第一群组的群组成员不支持mbms,因此在图2b中,群组管理服务器通过209消息向群组成员发送第一消息,发送209消息的方式可以是单播,也可以是ip多播或其它方式,本发明实施例不做限定。群组管理服务器为了能够在消息发送周期时段内,向第一群组中不支持mbms的群组成员发送第一消息,群组管理服务器在向消息发送周期时段内,向第一群组中不支持mbms的群组成员发送第一消息之前,同样需要执行如502-504所述的步骤。

请参阅图6,为本申请实施例提供的一种群组管理服务器的结构示意图,该群组管理服务器包括:

获取模块601,用于获取第一群组对应的消息发送周期时段,所述消息发送周期时段包括开始时间和结束时间;

发送模块602,用于向第一群组的群组成员多播群组的群组成员发送所述消息发送周期时段,还用于向所述第一群组中多播群组的群组成员发送tmgi,所述多播群组的群组成员为所述第一群组中支持mbms的群组成员;

所述发送模块602,还用于向通信网络发送申请通信资源的请求,所述申请通信资源的请求包括所述tmgi和所述消息发送周期时段的开始时间,所述tmgi为所述通信网络为所述多播群组分配的标识,所述申请通信资源的请求用于请求所述通信网络从所述开始时间起为所述多播群组的群组成员提供mbms所需的通信资源;

接收模块603,用于接收应用服务器发送的第一消息;

所述发送模块602,还用于在所述接收模块在所述消息发送周期时段内,接收到所述第一消息时,向所述通信网络发送第二消息,所述第二消息包括所述tmgi和所述第一消息,所述tmgi用于指示所述通信网络使用所述tmgi对应的通信资源向所述多播群组的群组成员发送所述第一消息。

可选的,所述获取模块601,具体用于:

接收应用服务器发送的第一群组创建请求,所述第一群组创建请求包括消息发送周期时段;

响应所述第一群组创建请求创建第一群组,并将所述第一群组的消息发送时间设为所述消息发送周期时段;

或者,

接收应用服务器发送的第一群组创建请求;

响应所述第一群组创建请求创建第一群组;

接收所述应用服务器发送的第三消息,所述第三消息包括消息发送周期时段;

将所述第一群组的消息发送时间设为所述消息发送周期时段。

可选的,所述发送模块602,还用于向所述多播群组的群组成员发送响应时间窗;

所述接收模块603,还用于在所述响应时间窗期间,接收所述多播群组的群组成员根据所述响应时间窗发送的所述第一消息的响应。

可选的,所述群组管理服务器还包括缓存模块604,其中:

所述缓存模块604,用于在所述接收模块在所述消息发送周期时段外,接收到所述第一消息,所述第一消息包括操作执行时间和请求过期时间戳,且所述操作执行时间和所述请求过期时间戳在所述消息发送周期时段内时,缓存所述第一消息;

所述发送模块602,还用于在所述消息发送周期时段的开始时间到达时,向所述通信网络发送所述第二消息,所述第二消息包括所述tmgi和所述第一消息,所述tmgi用于指示所述通信网络使用所述tmgi对应的通信资源向所述多播群组的群组成员发送所述第一消息。

可选的,所述群组管理服务器还包括判断模块605,其中:

所述判断模块605,用于判断所述tmgi的过期时间是否早于距离当前时间最近的所述消息发送周期时段的开始时间;

所述发送模块602,还用于在所述判断模块的判断结果为是时,向所述通信网络发送所述tmgi的过期时间更新请求;

所述接收模块603,还用于接收所述通信网络发送的所述tmgi的过期时间更新请求的响应,所述tmgi的过期时间更新请求的响应包括更新后的所述tmgi的过期时间。

可选的,所述群组管理服务器还包括创建模块606,其中:

所述获取模块601,还用于获取所述第一群组包括的群组成员中支持mbms且位于mbms覆盖区域范围内的目标群组成员;

所述创建模块606,用于创建多播群组,所述多播群组的群组成员为所述目标群组成员。

可选的,所述群组成员为ue。

可选的,所述群组管理服务器记录的所述多播群组的信息包括所述tmgi、所述tmgi的过期时间和响应时间窗中的一种或多种。

可以理解的是,本实施例的群组管理服务器的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。

本申请实施例中,获取模块601获取第一群组对应的消息发送周期时段,发送模块602向多播群组的群组成员发送临时移动群组标识tmgi和消息发送周期时段,发送模块602根据tmgi和消息发送周期时段的开始时间向通信网络申请通信资源,接收模块603在消息发送周期时段内,接收到应用服务器发送的消息,发送模块602向通信网络发送tmgi和该消息,使得通信网络使用tmgi对应的通信资源向多播群组的群组成员发送该消息,从而可以实现周期性地多播消息,提高多播消息时的灵活性。

请参阅图7,为本申请实施例提供的一种终端的结构示意图,该终端包括:

接收模块701,用于接收群组管理服务器发送的tmgi和消息发送周期时段,所述终端为所述群组管理服务器预先创建的第一群组中支持mbms的群组成员,所述tmgi为通信网络为所述第一群组中支持mbms的群组成员分配的群组标识;

所述接收模块701,还用于在所述消息发送周期时段内,接收所述通信网络向所述tmgi对应群组的群组成员发送的消息。

可选的,所述消息发送周期时段包括开始时间和结束时间,所述终端还包括:

控制模块702,用于在所述消息发送周期时段的开始时间到达时,若所述终端处于省电模式,则控制所述终端退出所述省电模式。

可选的,所述终端还包括选取模块703和发送模块704,其中:

所述接收模块701,还用于接收所述群组管理服务器发送的响应时间窗;

所述选取模块703,用于从所述响应时间窗中随机选取响应时间;

所述发送模块704,用于按照所述随机选取的响应时间向所述群组管理服务器发送所述消息的响应。

可选的,所述终端记录的所述tmgi对应群组的信息包括所述tmgi、所述消息发送周期时段和响应时间窗中的一种或多种。

可以理解的是,本实施例的终端的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。

本申请实施例中,接收模块701接收群组管理服务器发送的tmgi和消息发送周期时段,并在该消息发送周期时段内,接收通信网络向tmgi对应群组的群组成员发送的消息,从而可以实现周期性地多播消息,提高多播消息时的灵活性。

请参阅图8,为本申请实施例提供的另一种群组管理服务器的结构示意图,该群组管理服务器包括:处理器801、通信接口802及存储器803。其中,处理器801、收发器802及存储器803可通过总线或其他方式连接,本申请实施例以通过总线连接为例。

其中,处理器801(或称中央处理器(centralprocessingunit,cpu))是群组管理服务器的计算核心以及控制核心。通信接口802可选的可以包括标准的有线接口、无线接口(如wi-fi、移动通信接口等),受处理器801的控制用于收发数据。存储器803(memory)是群组管理服务器的记忆设备,用于存放程序和数据。可以理解的是,此处的存储器803可以是高速ram存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器801的存储装置。存储器803提供存储空间,该存储空间存储了群组管理服务器的操作系统和可执行程序代码,可包括但不限于:windows系统(一种操作系统)、linux(一种操作系统)系统等等,本申请对此并不作限定。

具体实现中,本申请实施例中所描述的处理器801、通信接口802及存储器803可执行本申请实施例图2~图5的流程中所描述的群组管理服务器的实现方式,也可执行本申请实施例图6提供的一种群组管理服务器中所描述的实现方式,在此不再赘述。

本申请实施例中,处理器801获取第一群组对应的消息发送周期时段,通信接口802向多播群组的群组成员发送临时移动群组标识tmgi和消息发送周期时段,通信接口802根据tmgi和消息发送周期时段的开始时间向通信网络申请通信资源,在消息发送周期时段内,接收到应用服务器发送的消息,处理器801向通信网络发送tmgi和该消息,使得通信网络使用tmgi对应的通信资源向多播群组的群组成员发送该消息,从而可以实现周期性地多播消息,提高多播消息时的灵活性。

请参阅图9,为本申请实施例提供的另一种终端的结构示意图,该终端包括:处理器901、通信接口902及存储器903。其中,处理器901、通信接口902及存储器903可通过总线或其他方式连接,本申请实施例以通过总线连接为例。

其中,处理器901(或称cpu)是终端的计算核心以及控制核心。通信接口902可选的可以包括标准的有线接口、无线接口(如wi-fi、移动通信接口等),受处理器901的控制用于收发数据。存储器903(memory)是终端的记忆设备,用于存放程序和数据。可以理解的是,此处的存储器903可以是高速ram存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器901的存储装置。存储器903提供存储空间,该存储空间存储了终端的操作系统和可执行程序代码,可包括但不限于:windows系统(一种操作系统)、linux(一种操作系统)、android系统(一种操作系统)、ios系统(一种操作系统)等等,本申请对此并不作限定。

具体实现中,本申请实施例中所描述的处理器901、通信接口902及存储器903可执行本申请实施例图2和图5的流程中所描述的终端的实现方式,也可执行本申请实施例图7提供的一种终端中所描述的实现方式,在此不再赘述。

本申请实施例中,通信接口902接收群组管理服务器发送的tmgi和消息发送周期时段,并在该消息发送周期时段内,接收通信网络向tmgi对应群组的群组成员发送的消息,从而可以实现周期性地多播消息,提高多播消息时的灵活性。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如软盘、硬盘、磁带)、光介质(例如dvd)、或者半导体介质(例如固态硬盘(solidstatedisk,ssd))等。

综上,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

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