发明内容
鉴于上述现有技术所存在的问题,本发明的目的是提供一种在集群系统中实现实时发言的方法及系统,以满足用户在集群通话过程中能够实时插话的需求,有效提高了集群用户的用户体验。
本发明的目的是通过以下技术方案实现的:
本发明提供了一种集群系统中实现实时发言的方法,包括:
当集群系统中用户正在发言时,集群系统中其他希望发言的用户通过向网络侧发送发言权申请获得发言权,并进行发言。
本发明所述的方法具体包括:
A、当集群系统中的一个用户正在发言时,若另一集群系统中的用户希望发言,则该用户向网络侧发送发言权申请;
B、网络侧根据申请发言权的用户的信息及正在发言的用户的信息,以及服务器的本地策略信息确定可以授予相应用户的发言权;
C、希望发言的用户获得发言权后进行发言。
本发明中,步骤B所述的用户的信息及服务器的本地策略信息可以根据需要进行更新处理。
所述的本地策略包括:
在一次会话过程中允许用户申请发言权的次数信息、允许申请发言权用户发言的时间长信息和/或允许申请发言权的用户信息。
所述的步骤B包括:
B1、网络侧将申请发言权的用户的优先级与正在发言的用户的优先级信息进行比较,如果申请发言权的用户的优先级高于正在发言的用户的优先级,则授予该用户发言权,否则,执行步骤B2;
B2、拒绝申请发言权的用户的申请。
所述的步骤B2具体包括:
B21、网络侧向正在发言的用户发送临时发言权申请;
B22、正在发言的用户接收到所述申请后,将是否允许相应用户发言的信息返回给网络侧;
B23、网络侧根据正在发言的用户返回的信息确定是否向申请临时发言权的用户授予临时发言权。
所述的步骤B21还包括:
当系统是无用户优先级系统时,则网络侧向正在发言的用户发送发言权申请。
所述的步骤B23还包括:
当正在发言的用户向网络侧返回不允许该用户发言的信息,则向申请发言权的用户发送拒绝发言权申请的消息,同时,将该用户加入发言请求队列中。
本发明所述的方法还包括:
C、申请临时发言权的用户发言完毕后向网络侧发送释放临时发言权消息,并由网络侧将当前的发言权交给原正在发言的集群用户。
所述的步骤C包括:
网络侧通过授予原正在发言的集群用户的临时发言权的消息将当前发言权交给原正在发言的集群用户。
所述的发言权申请包括:
发言权请求消息或在发言权请求消息中增加临时发言权标志信息的临时发言权请求消息。
本发明所述的方法还包括:
申请发言权的用户正在发言过程中,不再允许其他集群用户再次申请发言权。
本发明所述的方法还包括:
所述的申请发言权的用户为符合预定的优先级要求的集群用户。
本发明所述的方法还包括:
当前正在发言的用户可以在自身的用户终端设备上设置禁止其他用户申请发言权的信息,或者,在网络侧设置当前正在发言的用户禁止其他用户申请发言权。
本发明还提供了一种集群系统中实现实时发言的用户终端装置,包括:
临时发言权申请按键:当集群系统中有正在发言的用户,且本用户终端希望发言时,则操作该按键,触发临时发言权申请消息构造模块;
临时发言权申请消息构造模块:在临时发言权申请按键的触发下,构造临时发言权申请消息,并向网络侧发送。
所述的临时发言权申请按键与即按即讲PTT按键采用同一操作按键。
本发明还提供了一种集群系统中实现实时发言的用户终端装置,包括:
临时发言权转让处理模块:用于根据接收到转让临时发言权请求后,确定是否转让临时发言权,并将确定结果返回给网络侧。
本发明还提供了一种集群系统中实现实时发言的网络设备,包括:
临时发言权处理模块:用于接收集群用户发来的临时发言权申请消息,并根据消息中承载的信息和本地策略信息确定是否授予该用户临时发言权,然后,将确定的结果返回给相应的用户。
所述的设备还包括:
临时发言权申请模块:用于与集群系统中正在发言的用户进行交互,为申请临时发言权的用户向正在发言的用户申请临时发言权,并根据申请结果确定是否授予该用户临时发言权,然后,将确定的结果返回给相应的用户。
所述的设备还包括:
发言权返还模块:根据申请发言的用户在发言结束后发来的释放发言权消息及和原正在发言用户的信息,向原正在发言用户发送授予临时发言权消息,将发言权返回给原正在发言用户。
本发明还提供了一种在集群系统中实现实时发言的系统,包括集群系统中实现实时发言的用户终端装置、集群系统中实现实时发言的网络设备和正在发言的用户终端,所述的集群系统中实现实时发言的用户终端装置通过与集群系统中实现实时发言的网络设备交互通信获得临时发言权,并在发言完毕后,通过集群系统中实现实时发言的网络设备将临时发言权交回给正在发言的用户终端。
由上述本发明提供的技术方案可以看出,本发明实现了在集群系统中存在正在发言的用户的情况下,其他用户仍然可以通过申请临时发言权的方式申请发言,而不再如现有技术描述的那样,只能等到正在发言的用户发言完毕才可以发言。因此,本发明可以满足用户在集群通话过程中,如PoC通话中临时插话的需求,从而使得集群会话,如PoC会话更接近实际的会话场景,提高了用户体验。
具体实施方式
本发明的核心是提供一种在集群系统,如PoC系统中实现实时插话(即发言)的方法,使听话人可以根据自己的需要实时打断并插入发言,发言完后,还将发言权交由被打断方控制,使集群呼叫更接近日常会话习惯,有利于提升用户对集群通信的满意程度。
本发明提出了一种在集群系统中实现实时打断当前发言人的发言,并进行插话的方法。本发明具体是通过集群服务器向会话参与人提供一种转让临时发言权的机制来实现的。例如,在一个PoC会话中,假设当前说话人是Alice,听话人Bob对Alice的发言有疑问,希望马上插话问一下。那么Bob可以向服务器发送一条请求临时发言权的消息,申请临时发言权,服务器根据Bob/Alice的权限和Alice的意愿进行裁决,可以将临时发言权授予Bob,使得Bob具有临时发言权,从而Bob能够插话。
本发明在具体实现过程中具体包括以下几种处理情况,其中,假设A在说话,为正在发言的用户,B希望获取A的临时发言权进行发言,则相应的几种处理情况分别为:
(1)如果B的权限高于A,系统就直接把A的临时发言权给B,B发言完成后,又通过系统把发言权还给A;
(2)如果B的权限低于或者等于A,系统就把B的“请求临时发言权”转给A,由A确定是否把临时发言权出让给B,分成下面两种情况:
(21)如果A同意把临时发言权给B,系统就把临时发言权授予B;B发言完成后,通过系统把临时发言权还给A;
(22)如果A不同意把临时发言权给B,系统向B返回“A不同意转让发言权”的提示,A还是继续正常发言。
下面将结合附图对本发明所述的方法的几种具体实现方式进行说明。
首先,假设用户Bob向网络侧请求临时发言权,且用户Bob的权限大于用户Alice,即用户Bob的优先级高于用户Alice,此时,本发明所述的处理过程如图2所示,具体包括:
步骤21:用户Bob发起请求临时发言权的申请;
该消息对应于原有的发言请求Talk Bust Request消息,只是在消息参数中带上临时发言权的标志,表明是一次临时发言权申请,而非普通发言权申请;
步骤22:PoC服务器收到后,根据TBCP的临时发言权标志,判断这是一次临时发言权申请,再根据Bob和Alice的权限判断是Bob的优先级高,则决定授予Bob临时发言权;
该步骤中,也可以根据其他运营商策略检查信息判断Bob和Alice的权限,所述的运营商策略检查信息(即运营商本地策略信息)可以根据运营商限制删除或者修改,即可以通过运营商对相应的运营商策略检查信息进行更新,所述的本地策略信息包括但不限于:允许临时申请发言权的用户信息、允许其他用户申请发言权的次数,允许申请发言权用户发言的时长,等等;
步骤23:决定授予Bob临时发言权之后,首先,PoC服务器需要向Alice发送收回临时发言权的通知消息;
步骤24:Alice收到收回临时发言权的通知消息后,向PoC服务器回送确认信息。
步骤25:当在执行步骤22中确定授予Bob临时发言权时,则PoC服务器还需要向Bob发送授予临时发言权消息;
授予临时发言权消息也是通过在“Talk Bust Granted”中增加临时发言权标志构成。
步骤26:Bob收到提示后开始讲话。
步骤27:Bob发言完毕,松开PTT键,向PoC服务器发送释放临时发言权消息,向服务器释放发言权;
同样,释放临时发言权消息也是通过在原来的“Talk Bust Release”中增加临时发言权标志构成。
步骤28:PoC服务器向Alice发送授予临时发言权消息,将发言权归还给Alice;
步骤29:Alice收到提示后,按PTT键,向PoC服务器回送确认信息,同时开始讲话,此后会话又进入普通模式。
第二种情况为:仍然是用户Bob向网络侧申请临时发言权,且假设用户Bob权限(即优先级)小于等于用户Alice,且用户Alice同意转让临时发言权给用户Bob,此时,相应的处理过程如图3所示,具体包括:
步骤31:用户Bob发起请求临时发言权申请,即向PoC服务器发送临时发言权申请消息;
步骤32:PoC服务器收到所述消息后,根据消息中承载的临时发言权标志,判断这是一次临时发言权申请,则根据用户Bob和Alice的权限判断是Alice的优先级高或者相等,或者是在一个不支持优先级的系统中,需要向Alice转发临时发言权请求;
步骤33:PoC服务器向Alice发送临时发言权申请消息;
该步骤中的服务器向客户端发送的“Talk Bust Request”消息的结构与Client(客户端)到Server(PoC服务器)的“Talk Bust Request”消息一致,而且,相应消息中增加有临时发言权标志;
当然,也可以采用其他格式的消息进行临时发言权申请;
步骤34:Alice收到请求后,决定临时转让发言权,在某确定的时间范围(如,两秒,这个系统可以设置)内,向PoC服务器回送释放临时发言权的通知,该消息也是通过在原有的“Talk Bust Release”消息,中增加临时发言权标志实现;
步骤35:PoC服务器向Bob发送授予临时发言权消息;
步骤36:Bob收到提示后开始讲话,即开始发言;
步骤37:Bob发言完毕,向PoC服务器发送释放临时发言权的通知消息,向服务器释放发言权;
步骤38:PoC服务器向Alice发送授予临时发言权消息,将发言权归还给Alice;
步骤39:用户Alice接收到所述的授予临时发言权消息后,向PoC服务器回送确认信息;
步骤310:用户Alice开始讲话。此后会话又进入普通模式。
第三种情况为:用户Bob向网络侧请求临时发言权,但用户Bob权限(即优先级)小于等于用于Alice,或者相等,或者是在一个不支持优先级的系统中,且用户Alice不同意转让其临时发言权,此时,相应的处理过程如图4所示,具体包括:
步骤41:用户Bob发起请求临时发言权申请;
步骤42:PoC服务器收到后,根据临时发言权标志,判断这是一次临时发言权申请,根据配置的用户Bob和Alice的权限判断是Alice的优先级高,需要向Alice转发临时发言权申请消息;
步骤43:PoC服务器向用户Alice发送临时发言权申请消息;
步骤44:用户Alice收到请求后,决定不转让临时发言权,此时用户Alice的客户端设备会向PoC服务器回送拒绝临时发言请求消息;
该步骤中客户端向服务器发送拒绝临时发言权请求“Talk Bust Deny”消息的结构与Server(服务器)侧到Client(客户端)侧的“Talk BustDeny”一致,同时增加临时发言权标志;
另外,当确定用户Alice不同间转让临时发言权时,若系统不支持优先级,则还可以将用户Bob放入发言请求队列中,等待发言机会,当其可以发言时,再向其发送授予发言权的通知;
步骤45:PoC服务器向用户Bob发送拒绝临时发言请求,该消息也是通过在原有的“Talk Bust Deny”消息,中增加临时发言权标志实现;
步骤46:用户Alice继续讲话,会话还是普通模式。
本发明所述的方法在具体实现过程中还可以采用另一种方案实现。在该方案中,在集群系统中希望插话的用户可以通过现有的发言权请求消息向网络侧申请发言权,之后,由网络侧进行处理并确定是否授予相应的发言权。
这一实现方案的具体的处理过程包括三种具体可能的处理情况,下面将结合附图分别说明。
第一种情况如图5所示,具体包括以下处理过程:
步骤51:集群系统中用户Alice正在发言,此时,另一用户Bob希望申请临时发言方法送一个普通的发言权请求消息;
步骤52:集群服务器接收到所述的发言权请求消息后,根据服务保存的本地策略信息决定是否向当前发言方发送要求其临时释放发言权的通知消息;
所述的判断条件可以是:请求用户是否有权进行临时插话;如果用户具有权限分级,看请求用户的级别是否比当前说话用户的权限高,等等;
这些本地策略信息可以由管理员在集群服务器上进行设置;
如果集群服务器根据当前条件判断该申请发言权的用户权限比当前发言的用户的优先级高,则执行步骤53和步骤54;
步骤53:一方面直接收回当前发言人的发言权,即直接向正在发言的用户发送临时收回发言权的通知消息;
步骤54:另一方面还向希望发言的申请用户授予发言权;
步骤55:用户Bob开始发言;
步骤56:发言结束后,向集群服务器Poc Server发送释放发言权的消息,以释放发言权;
步骤57:当申请人发言结束后,集群服务器收到其发来的释放发言权的消息后,将发言权继续授予被临时收回发言权的用户Alice;
步骤58:集群服务器还需要向用户Bob发送发言权已被抢占的通知消息,又恢复到Alice正在发言的状态。
在上述步骤52的处理过程中,如果集群服务器根据当前条件判断该申请发言权的用户无权打断当前用户,就把他的发言请求作为普通的发言请求处理。例如,如果支持发言请求队列,就把他的请求放入请求队列中;如果不支持发言请求队列,就直接拒绝其请求。
在上述步骤52的处理过程中,如果集群服务器根据当前条件判断需要为该申请发言权的用户向当前正在发言的用户申请临时发言权,则相应的处理过程如图6所示,具体包括:
步骤61:集群服务器向当前正在发言的用户发送释放临时发言权请求的通知;
步骤62:正在发言的用户根据情况决定释放发言权,则向集群服务器发送一条“释放临时发言权”的消息;
步骤63:集群服务器收到该消息,则将当前用户的发言权转移给希望发言的申请用户,该用户获得发言权,进行发言;
步骤64:用户发言结束后,向服务器发送“释放发言权”的消息;
步骤65:服务器接收到所述消息后,又通过授予临时发言权消息将发言权转移给原正在发言的用户,原正在发言的用户继续发言。
在执行上述步骤61之后,如果当前发言人决定不临时释放发言权,则相应的处理过程如图7所示,具体包括:
步骤71:客户端Alice向集群服务器发送“拒绝释放临时发言权”的消息,表示其不同意将发言权转让给Bob,且Alice继续发言;
步骤72:集群服务器向申请发言的用户Bob发送拒绝发言权的消息。
本发明在具体实现过程中还需要注意以下几方面的处理:
1、从其他正在发言的用户申请获得发言权的用户正在发言过程中,不再允许其他集群用户再次申请发言权,例如,Bob从Alice处获得发言权后,不再允许第三方用户打断其发言再次进行发言权的申请。
2、本发明中,申请发言权的用户需要为符合预定的优先级要求的集群用户,如果不符合预定的优先级要求,则不允许向Poc服务器发送临时发言权申请消息,如果发送了,服务器也会拒绝请求,同时向其反馈权限不够的信息。
3、另外,为防止用户在发言过程中不停地被打扰,当前正在发言的用户可以在自身的用户终端设备上设置禁止接收其他用户的申请发言权的信息,或者,在网络侧设置当前正在发言的用户禁止接收其他用户的申请发言权;例如,用户Alice可以通过服务器或者终端设置禁止其他用户向她发送申请发言权进行插话,以保证其在发言过程中不被频繁打扰。
本发明还提供了一种在集群系统中实现实时发言的系统,如图8所示,具体包括集群系统中实现实时发言的用户终端装置、集群系统中实现实时发言的网络设备和正在发言的用户终端,所述的集群系统中实现实时发言的用户终端装置通过与集群系统中实现实时发言的网络设备交互通信获得临时发言权,并在发言完毕后,通过集群系统中实现实时发言的网络设备将临时发言权交回给原正在发言的用户终端。
其中,所述的集群系统中实现实时发言的用户终端装置仍如图5所示,具体包括:
临时发言权申请按键:当集群系统中有正在发言的用户,且本用户终端希望发言时,则操作该按键,触发临时发言权申请消息构造模块;该按键可以采用现有的PTT按键实现,此时,在用户终端装置中需要根据当前的集群系统中的状态确定本次PTT按键操作需要向集群系统发送的消息格式;
临时发言权申请消息构造模块:在临时发言权申请按键的触发下,构造临时发言权申请消息,并向网络侧发送;
临时发言权转让处理模块:用于根据接收到转让临时发言权请求后,确定是否转让临时发言权,并将确定结果返回给网络侧。
当用户终端通过现有的发言权请求消息申请临时发言时,则用户终端装置中仅增加设置相应的临时发言权转让处理模块即可。
所述的集群系统中实现实时发言的网络设备如图5所示,具体包括:
临时发言权处理模块:用于接收集群用户发来的临时发言权申请消息,并根据消息中承载的信息确定是否授予该用户临时发言权,然后,将确定的结果返回给相应的用户;
临时发言权申请模块:用于与集群系统中正在发言的用户进行交互,为申请临时发言权的用户向正在发言的用户申请临时发言权,并根据申请结果确定是否授予该用户临时发言权,然后,将确定的结果返回给相应的用户;
发言权返还模块:根据申请发言的用户在发言结束后发来的释放发言权消息及和原正在发言用户的信息,向原正在发言用户发送授予临时发言权消息,将发言权返回给原正在发言用户。
综上所述,本发明可以满足用户在集群通话过程中,如PoC通话中临时插话的需求,从而使得集群会话,如PoC会话更接近实际的会话场景,提高了用户体验。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。