专利名称:将队列变化信息通知给用户的方法
技术领域:
本发明涉及PoC技术领域,特别是指一种将存放发言请求消息队列的队列变化信息通知给用户的方法。
背景技术:
PTT(Push to Talk)是一种即按即说的语音业务,即通过按住功能键实现通信的一种半双工语音业务,目前该业务有很多种实现方式,如集成数字增强网络(iDEN)业务以及陆地中继无线电技术(Tetra)业务等。
PoC(PTT over Cellular)是开放移动联盟组织(OMA,open mobilealliance)定义的在分组网络上实现的PTT业务,其采用分组语音(VoIP)以及半双工的实现方式,能够低成本、高效率地满足用户实时通信的需求。PoC业务具有如下特点1)通话时不需要拨号,按住特殊键即可实现语音通信;2)能够实现组播功能,即一个用户说话时多个用户同时收听;3)组播业务的群组可以是预先定义的,也可以是临时定义的;4)在通话过程中采用半双工模式,被叫用户在接听时不能发言;5)用户一直在线,建立通话的时间短,其快于拨号;PoC业务引入了一种新的通信模式,是现有移动系统以及传统语音呼叫系统所无法提供的,PoC在满足实时呼叫的同时,能够较少地占用系统资源。
图1所示为PoC业务开展模式图。具有PoC能力终端的用户与PoC业务的供应商进行签约,以获得使用PoC业务的许可;PoC用户通过PoC服务器与其它PoC用户建立群组关系;PoC用户通过按功能键要求发言从而实现PoC业务。
由于PoC业务是半双工的,因此一个用户要发送媒体数据时,比如需要讲一段话,需要先向PoC服务器请求一个发言的权利。在一个PoC用户向PoC服务器发送请求发言的请求消息时,处于同一个群组内的其他PoC用户也可能希望发言,因此也会发送请求发言的消息给PoC服务器,如果PoC服务器接受了其中一个PoC用户的该请求,其他PoC用户就不能再被授权发言了。而其他PoC用户如果仍希望发言,那么其必须要重新发送请求发言的请求消息。为了避免其他PoC用户后续还得发送请求发言的请求消息对网络造成的负担,同时避免让用户使用PoC业务的感受不好,引入了媒体突发队列功能(Media Burst Queuing Function),其作用就是将当前不能被授权发言的PoC用户的请求消息放在一个队列中,然后根据某种机制,轮流给保留在队列中的发送过请求消息的PoC用户授权讲话。每个群组对应一个用于存在发言请求消息的队列。
上述Media Burst Queuing Function的应用可以实现诸多功能,比如通知某个PoC用户其发送的发言请求消息已在排队;对带优先级的请求消息的处理;某个PoC用户查询自己的请求消息在队列中的位置的处理等等。
后续,在PoC2.0中又增加了对这个用于存在发言请求消息的队列可以执行一些调整处理,如重置或清空当前用于存在发言请求消息队列中所有正在排队的请求消息。现有技术中规定,发起重置或清空请求的可以是一个具备该权限的PoC用户终端,也可以是PoC服务器。
但是,在某个PoC用户的发言请求消息已被放入与该群组所对应的用于存放发言请求消息的队列内的情况下,仍存在以下问题该用户终端必须主动向PoC服务器发起查询,才能获知自己当前所在队列的状态,以及自己当前在队列中的位置。而这种查询又是盲目的,因为用户终端并不知道当前的查询结果与上一次的查询结果是否会完全一样。如果每个用户都多次查询,必然大量占有网络资源,导致网络资源的浪费。
但是,如果用户终端不频繁地发起查询,在其所在队列发生较大变化时,其就不可能及时获知自己当前所在队列的状态,以及自己当前在队列中的位置。比如,由于某种原因某个用于存放发言请求消息的队列被清空,而该队列中的某个用户终端并没有及时主动发起查询请求,因而其对此毫不知情,这样该终端必然还在等待已发送的发言请求被处理并等待得到发言权。这种情况是用户和运营商都不希望的看到的,长此以往,必然使用户使用业务的感受非常差,不利用PoC业务的长远发展。
发明内容
有鉴于此,本发明的目的在于提供一种将队列变化信息通知给用户的方法,既保证用户终端能够及时得到队列变化的消息,还能节约网络资源,同时提升用户使用PoC业务的感受。
为达到上述目的,本发明的技术方案是这样实现的一种将队列变化信息通知给用户的方法,该方法还包括以下步骤a、PoC服务器接收到改变存放发言请求消息队列状态的操作请求后,对该队列执行调整操作;b、PoC服务器向该队列所对应群组内的PoC用户终端发送包含由步骤a所述调整操作导致的队列变化的通知信息。
较佳地,步骤a所述调整操作为重置操作、重新排序操作或清空操作;或者,所述调整操作为所述队列中减少了一个请求,或所述队列中增加了一个请求或所述队列中修改了一个请求的操作。
较佳地,步骤b所述PoC服务器发送通知信息的方法包括以下步骤PoC服务器根据调整操作确定被调整的发言请求消息后,构造通知消息,将所构造的通知消息同时发送给被调整消息所对应的用户终端,该通知消息中包含由调整操作导致的队列变化的通知信息。
较佳地,步骤b所述PoC服务器发送通知信息的方法包括以下步骤PoC服务器根据调整操作确定被调整的发言请求消息后,构造通知消息,按照预先设定的通知原则,将所构造的通知消息分批发送给被调整消息所对应的用户终端,该通知消息中包含由调整操作导致的队列变化的通知信息。
较佳地,步骤b所述PoC服务器发送通知信息的方法包括以下步骤PoC服务器根据调整操作确定被调整的发言请求消息,并且确定该被调整的队列当前为空或队列中存在还在等待但还未到发言时间的请求消息,且该队列所对应群组内当前没有任何一个PoC用户终端请求发言后,将由调整操作导致队列变化的通知信息包含在通知群组内用户终端当前没有任何一个用户终端请求发言的通知消息中下发给用户终端。
较佳地,步骤b所述PoC服务器发送通知信息的方法包括以下步骤PoC服务器根据调整操作确定被调整的发言请求消息后,等待接收该被调整队列所对应群组内的申请发言的请求消息;当PoC服务器接收到该群组内申请发言的请求消息后,给发送该发言请求的PoC用户终端发送授权发言的信息,给该群组内的除该请求发言的PoC用户终端之外的其他用户终端发送指示某个用户终端得到了发言权的通知消息,同时,在给被调整消息所对应的用户终端发送的授权发言的信息和/或通知消息中还携带由调整操作导致队列变化的通知信息;或者,在给授权发言的用户终端发送的授权发言的信息中、和发给除授权发言用户终端之外的其他所有用户终端的指示某个用户终端得到了发言权的通知消息中都包含由调整操作导致队列变化的通知信息。
较佳地,该方法进一步包括预设一通知定时器,在PoC服务器根据调整操作确定被调整的发言请求消息后,启动该通知定时器,如果在定时器超时之前,PoC服务器接收到该群组内申请发言的请求消息,则继续执行后续步骤;如果在定时器超时后,PoC服务器仍未接收到该群组内的申请发言的请求消息,则构造通知消息,将所构造的通知消息同时发送给被调整消息所对应的用户终端,该通知消息中包含由调整操作导致队列变化的通知信息;或者,根据预先设定的通知原则,将所构造的通知消息分批发送给被调整消息所对应的用户终端,该通知消息中包含由调整操作导致队列变化的通知信息;或者,确定该群组所对应的用于存放发言请求消息的队列为空或队列中存在还在等待但还未到发言时间的请求消息,且该群组内当前没有任何一个PoC用户终端申请发言后,在给该群组内所有用户终端下发的当前没有任何一个用户终端请求发言的通知消息中都包含由调整操作导致队列变化的通知信息;或者,只在受到队列调整影响的用户终端的通知消息中包含由调整操作导致队列变化的通知信息。
较佳地,所述PoC服务器等待接收的该被调整队列所对应群组内的申请发言的请求消息是由该群组内任一PoC用户发送的。
较佳地,所述通知原则为先通知高优先级用户终端,再通知低优先级用户终端;或者,所述通知原则为先通知等待时间最长的用户,再通知其他用户。
较佳地,进一步包括由PoC服务器或拥有调整所述队列权限的PoC用户终端,发出改变所述队列状态的操作请求。
本发明关键在于,当用于存放发言请求消息的队列被执行了调整操作,如重置、清空、重新排序、新增请求、请求被处理或者修改请求等操作时,PoC服务器能够及时通知该队列所对应群组内的用户终端。这样,既保证了用户终端能够及时得到队列变化的消息,还节约了网络资源,并且提升了用户使用PoC业务的感受,从而有利于PoC业务的长远发展。
图1所示为PoC业务开展模式图;图2所示为应用本发明实施例一的流程示意图。
图3所示为应用本发明实施例二的流程示意图。
图4所示为应用本发明实施例三的流程示意图。
图5所示为应用本发明实施例四的流程示意图。
具体实施例方式
本发明的思路是由于某种原因导致用于存放发言请求消息的队列被执行了调整操作,如重置、清空、重新排序、新增请求、请求被处理或者修改请求等,PoC服务器及时通知该队列所对应群组内的用户终端。使得用户根据这个通知,知道网络中的请求消息队列中发生了什么操作,该操作对自己的影响是什么,进一步的还可能知道该操作对自己所在群组的影响是什么,进一步的还可能知道该操作对自己所在群组中其他PoC用户的影响是什么等等。根据这个通知消息提供的信息,PoC用户会执行后续的操作,比如重新发起请求发言的请求消息等。
下面结合附图及具体实施例对本发明再做进一步详细说明。
以下各个实施例中,PoC服务器已经将当前不能被授予发言权的PoC发言请求消息放入与该PoC用户终端所在群组对应的用于存放发言请求消息的队列内。并假设UE1和UE2属于同一PoC群组,且用于存放发言请求消息的队列中的两个媒体突发请求消息即发言请求消息分别是UE1和UE2发送上去的。
图2所示为应用本发明实施例一的流程示意图。
PoC服务器接收到改变存放发言请求消息队列状态的操作请求后,对该队列执行调整操作,该调整操作可以是重置操作、重新排序操作或清空操作。
在PoC服务器根据调整操作确定被调整的发言请求消息后,构造通知消息,将所构造通知消息同时发送给被调整消息所对应的用户终端,即UE1和UE2,该通知消息中包含由调整操作导致的队列发生变化的通知信息。
UE1和UE2接收到上述信息后,可以根据各自需要执行相应操作。具体执行什么操作都是现有技术,在此不做限定,以下同。
考虑到如果PoC服务器同时发送通知给所有受影响的用户终端,那么这些用户终端将在几乎相同的时间接收到这个通知,而且其中大部分用户终端可能会立刻再次请求发言,发送媒体突发请求消息即请求发言的请求消息给网络中的PoC服务器,这样在PoC服务器上将立刻需要重新建立一个用于存放发言请求消息的队列,这对于网络来说就是一次突发的高峰。为了避免这种峰值业务量对网络的冲击,可以考虑分批通知被影响的PoC用户终端,这样,可以避免网络由于大业务量冲击可能导致的丢包和额外时延。图3便是基于这种考虑的实施例。
图3所示为应用本发明实施例二的流程示意图。在本实施例中,预先设定了通知原则——按照优先级的高低来实现先后通知。且假设UE1的优先级高于UE2的优先级。
PoC服务器接收到改变存放发言请求消息队列状态的操作请求后,对该队列执行调整操作,该调整操作可以是重置操作、重新排序操作或清空操作。
在PoC服务器根据调整操作确定被调整的发言请求消息后,构造通知消息,根据预先设定的通知原则确定UE1的优先级高于UE2的优先级后,将所构造通知消息分批发送给被调整消息所对应的用户终端,该通知消息中包含由调整操作导致队列变化的通知信息,即PoC服务器首先向UE1发送包含由调整操作导致队列发生变化的通知信息;然后再向UE2发送包含由调整操作导致队列发生变化的通知信息。
UE1和UE2接收到上述信息后,可以根据各自需要执行相应操作。
这样高优先级用户可以根据通知消息先执行后续操作,不但体现出了高优先级PoC用户和普通PoC用户之间的区别,还避免网络中由于大业务量冲击可能导致的丢包和额外时延。
上述实施例中的通知原则是先通知高优先级用户终端,再通知低优先级用户终端。在实际应用中,通知原则并不限于此,比如还可以是先通知等待时间最长的用户,再通知其他用户等等,只要能够实现分批通知即可。
上述两个实施例的特点是PoC服务器利用新构造的通知消息给受影响的PoC用户终端发通知,当然,PoC服务器也可以利用现有的消息,将待通知的信息下发下去。实施例三、四就是利用现有消息实现通知的两种实施例。
图4所示为应用本发明实施例三的流程示意图。
PoC服务器接收到改变存放发言请求消息队列状态的操作请求后,对该队列执行调整操作,该调整操作为重置操作、重新排序操作或清空操作。
在PoC服务器根据调整操作确定被调整的发言请求消息,并且确定该群组所对应的用于存放发言请求消息的队列为空或队列中存在还在等待但还未到发言时间的请求消息,且该群组内当前没有任何一个PoC用户终端请求发言后,将由调整操作导致队列变化的通知信息包含在通知群组内用户终端当前没有任何一个用户终端请求发言的通知消息中下发给用户终端。这样,该群组内所有的用户终端都可接收到用于存放发言请求消息的队列发生变化的信息。除了可以发送给该群组内的所有用户终端,这个由调整操作导致队列变化的通知信息也可以只包含在发送给受影响的用户终端的当前没有任何一个用户终端请求发言的通知消息中,即只通知调整操作影响到的那些用户终端。
UE1和UE2接收到上述信息后,可以根据各自需要执行相应操作。
图5所示为应用本发明实施例四的流程示意图。
PoC服务器接收到改变存放发言请求消息队列状态的操作请求后,对该队列执行调整操作,该调整操作为重置操作、重新排序操作或清空操作。
在PoC服务器确定调整的发言请求消息后,等待接收该被调整队列所对应群组内的申请发言的请求消息;在本实施例中,PoC服务器接收到来自UE1的发言请求,此时,PoC服务器给UE1发送授权发言的信息,如Floor Granted消息,给UE2发送UE1得到了发言权的通知消息,如Floor Notify消息,并且,该通知消息中包含由调整操作导致队列变化的通知信息;当然,如果该群组中还包括除UE1和UE2之外的其他用户终端,那么PoC服务器也会给其他用户终端发送UE1得到了发言权的通知消息,此时,这些通知消息中可以包括也可以不包括由调整操作导致队列变化的通知信息。再有,如果发言的用户也是受队列调整影响的用户,那么在给该发言用户终端所发送的通知授权发言的信息中也需要携带由调整操作导致队列变化的通知信息,针对上述实施例,也就是在Floor Granted消息中还包含由调整操作导致队列变化的通知信息。总之,既可以通知该群组内的所有用户终端,也可以仅仅通知哪些受到队列调整操作影响的用户终端。
UE1和UE2接收到上述信息后,可以根据各自需要执行相应操作。
上述实施例中,发起发言请求消息的PoC用户终端可以是来自同一个群组的任何一个PoC用户终端,也就是说,既可能是在用于存放发言请求队列被清空的情况下来自群组中没有将请求消息进行排队的那些PoC用户终端,或一个曾经排队的PoC用户终端又发了一次请求,还可能是在队列被重置或重新排序的情况下,PoC服务器从当前用于存放发言请求队列内获取的发言请求消息所对应的用户终端。
上述实施例中,是由某个PoC用户终端发起的请求发言的请求消息触发了PoC服务器向群组中的每个PoC用户终端发送信息,在实际应用中,还可以是任何来自同一个群组中的某个PoC用户终端发起的其他消息,只要该消息会触发PoC服务器向群组中的每个PoC用户终端发送信息,那么队列发生变化的通知信息就可以随着这个消息一起发送下去。
在实际应用中,对于实施例四,可能存在很长一段时间内都没有请求发言的消息,而需要发言的用户都以为自身已在排队,为了避免这一情况,可增设一通知定时器。这样,在PoC服务器根据调整操作确定被调整的发言请求消息后,启动该通知定时器,如果在定时器超时之前,PoC服务器接收到该群组内申请发言的请求消息,则按照实施例四继续执行后续步骤;如果在定时器超时后,PoC服务器仍未接收到该群组内申请发言的请求消息,则可以按照实施例一或二中的任何一种方式进行实施;当然如果在定时器超时后,PoC服务器仍未接收到该群组内申请发言的请求消息,并且确定该群组所对应的用于存放发言请求消息的队列为空或队列中存在还在等待但还未到发言时间的请求消息,且该群组内当前没有任何一个PoC用户发言后,还可以按照实施例三的方式进行实施。
上述各实施例中,是将重置操作、重新排序操作或清空操作等较大动作的操作,作为存放发言请求消息队列的调整操作,当然,该队列的调整操作并不限于此,而且还可以是调整幅度较小的操作,比如,队列中的某个请求被正常执行后,其他请求消息的顺序自然会前移一位,此时,也可看作队列被调整;再比如,又有新的请求加入到队列中,或队列中的某个请求的内容被修改等操作,均可认为该队列被调整,总之,该队列的任何变化都可看作该队列被调整。根据需要,这些调整操作均需通知用户终端。
上述各实施例中,可以由PoC服务器或拥有调整队列权限的PoC用户终端,发出改变存放发言请求消息队列状态的操作请求。
上述各实施例中,被调整消息所对应的用户终端是指已将发言请求消息放入与该群组所对应的用于存放发言请求消息的队列内的用户终端。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种将队列变化信息通知给用户的方法,其特征在于,该方法还包括以下步骤a、PoC服务器接收到改变存放发言请求消息队列状态的操作请求后,对该队列执行调整操作;b、PoC服务器向该队列所对应群组内的PoC用户终端发送包含由步骤a所述调整操作导致的队列变化的通知信息。
2.根据权利要求1所述的方法,其特征在于,步骤a所述调整操作为重置操作、重新排序操作或清空操作;或者,所述调整操作为所述队列中减少了一个请求,或所述队列中增加了一个请求或所述队列中修改了一个请求的操作。
3.根据权利要求1所述的方法,其特征在于,步骤b所述PoC服务器发送通知信息的方法包括以下步骤PoC服务器根据调整操作确定被调整的发言请求消息后,构造通知消息,将所构造的通知消息同时发送给被调整消息所对应的用户终端,该通知消息中包含由调整操作导致的队列变化的通知信息。
4.根据权利要求1所述的方法,其特征在于,步骤b所述PoC服务器发送通知信息的方法包括以下步骤PoC服务器根据调整操作确定被调整的发言请求消息后,构造通知消息,按照预先设定的通知原则,将所构造的通知消息分批发送给被调整消息所对应的用户终端,该通知消息中包含由调整操作导致的队列变化的通知信息。
5.根据权利要求1所述的方法,其特征在于,步骤b所述PoC服务器发送通知信息的方法包括以下步骤PoC服务器根据调整操作确定被调整的发言请求消息,并且确定该被调整的队列当前为空或队列中存在还在等待但还未到发言时间的请求消息,且该队列所对应群组内当前没有任何一个PoC用户终端请求发言后,在给该群组内所有用户终端下发的当前没有任何一个用户终端请求发言的通知消息中都包含由调整操作导致队列变化的通知信息;或者,只在受到队列调整影响的用户终端的通知消息中包含由调整操作导致队列变化的通知信息。
6.根据权利要求1所述的方法,其特征在于,步骤b所述PoC服务器发送通知信息的方法包括以下步骤PoC服务器根据调整操作确定被调整的发言请求消息后,等待接收该被调整队列所对应群组内的申请发言的请求消息;当PoC服务器接收到该群组内申请发言的请求消息后,给发送该发言请求的PoC用户终端发送授权发言的信息,给该群组内的除该请求发言的PoC用户终端之外的其他用户终端发送指示某个用户终端得到了发言权的通知消息,同时,在给被调整消息所对应的用户终端发送的授权发言的信息和/或通知消息中还携带由调整操作导致队列变化的通知信息;或者,在给授权发言的用户终端发送的授权发言的信息中、和发给除授权发言用户终端之外的其他所有用户终端的指示某个用户终端得到了发言权的通知消息中都包含由调整操作导致队列变化的通知信息。
7.根据权利要求6所述的方法,其特征在于,该方法进一步包括预设一通知定时器,在PoC服务器根据调整操作确定被调整的发言请求消息后,启动该通知定时器,如果在定时器超时之前,PoC服务器接收到该群组内申请发言的请求消息,则继续执行后续步骤;如果在定时器超时后,PoC服务器仍未接收到该群组内的申请发言的请求消息,则构造通知消息,将所构造的通知消息同时发送给被调整消息所对应的用户终端,该通知消息中包含由调整操作导致队列变化的通知信息;或者,根据预先设定的通知原则,将所构造的通知消息分批发送给被调整消息所对应的用户终端,该通知消息中包含由调整操作导致队列变化的通知信息;或者,确定该群组所对应的用于存放发言请求消息的队列为空或队列中存在还在等待但还未到发言时间的请求消息,且该群组内当前没有任何一个PoC用户终端申请发言后,在给该群组内所有用户终端下发的当前没有任何一个用户终端请求发言的通知消息中都包含由调整操作导致队列变化的通知信息;或者,只在受到队列调整影响的用户终端的通知消息中包含由调整操作导致队列变化的通知信息。
8.根据权利要求6或7所述的方法,其特征在于,所述PoC服务器等待接收的该被调整队列所对应群组内的申请发言的请求消息是由该群组内任一PoC用户发送的。
9.根据权利要求4或7所述的方法,其特征在于,所述通知原则为先通知高优先级用户终端,再通知低优先级用户终端;或者,所述通知原则为先通知等待时间最长的用户,再通知其他用户。
10.根据权利要求1所述的方法,其特征在于,进一步包括由PoC服务器或拥有调整所述队列权限的PoC用户终端,发出改变所述队列状态的操作请求。
全文摘要
本发明公开了一种将队列变化信息通知给用户的方法,适用于PoC系统,且PoC服务器已将当前不能被授予发言权的PoC发言请求消息放入与该PoC用户终端所在群组对应的用于存放发言请求消息的队列内,其关键在于,当用于存放发言请求消息的队列被执行了调整操作,如重置、清空、重新排序等操作时,PoC服务器能够及时通知该队列所对应群组内的用户终端。这样,既保证了用户终端能够及时得到队列变化的消息,还节约了网络资源,并且提升了用户使用PoC业务的感受,从而有利于PoC业务的长远发展。
文档编号H04Q7/28GK1941945SQ200510105069
公开日2007年4月4日 申请日期2005年9月26日 优先权日2005年9月26日
发明者武亚娟 申请人:华为技术有限公司