專利名稱:一種媒體發送申請隊列的調整方法及控制系統的制作方法
技術領域:
本發明涉及移動通信技術,特別是涉及一種媒體發送申請隊列的調整方法及控制系統。
背景技術:
即按即講業務是集群通信的一種,指的是實時直連的“點到點”和“點到多點”語音通信業務,也可稱為PoC(Push to talk over Cellular)業務。即按即講業務使用半雙工通信方式,即在同一時間只允許一個人講話,而其他人只能接收該講話人的語音信息。使用即按即講業務,主叫方只需按一個按鍵而無需撥號和等待對方摘機就可以向群組中的其它成員發起呼叫,電話立即接通,迅速建立起談話組,非常便于團隊、工作組和其它群體之間的協同工作和交流,因此,已得到了廣泛的應用。
目前,即按即講業務支持“媒體發送申請隊列功能”,也就是說,集群服務器(或稱為PoC服務器)中設置有媒體發送申請隊列。當集群服務器同時接收到一個群組中的多個用戶(用戶通過PoC客戶端進行PoC通信)發來的媒體發送請求時,只批準其中一個用戶的媒體發送請求,允許該用戶發送媒體,其它用戶接收媒體信息,并將所接收到的其它用戶的媒體發送請求分發到媒體發送申請隊列中;或者,在群組中的一個用戶在發送媒體信息時,如果集群服務器接收到該群組中其它用戶發來的媒體發送請求時,也會將所接收到的其它用戶的媒體發送請求保存在媒體發送申請隊列中。這樣,在當前用戶的媒體發送結束后,集群服務器從媒體發送申請隊列中保存的各個媒體發送請求中選擇一個媒體發送請求,并將媒體發送權授予所選媒體發送請求對應的用戶,由該用戶進行媒體發送,開始新的媒體發送和接收過程。
上述提到的媒體可以是語音,視頻,圖片,文字等各類媒體形式,典型的是語音。因此如果PoC系統只支持語音時,“媒體發送申請隊列”又可以稱為“發言請求隊列”,“媒體發送請求”可以稱為“發言請求”,“媒體發送權”可以稱為“發言權”。
目前,在利用媒體發送申請隊列實現即按即講業務時,可以由用戶主動將之前發送的、保存在媒體發送申請隊列中對應于自身的發言請求刪除,其具體實現過程為在群組會話過程中,用戶將攜帶自身標識的刪除發言請求發送至集群服務器,集群服務器根據刪除發言請求中攜帶的用戶標識在媒體發送申請隊列中查找到該用戶之前發送的發言請求,并刪除所查找到的發言請求,然后,集群服務器向該用戶發送通知消息。
目前,在利用媒體發送申請隊列實現即按即講業務時,還可以由集群服務器在群組會話過程中,刪除媒體發送申請隊列中所保存的所有的發言權,并通知所刪除發言權對應的用戶,其發言請求已被刪除。
從以上描述可以看出,在現有技術中,對于媒體發送申請隊列中所保存的發言請求,只有發送該發言請求的用戶才能將其刪除,而群組中的其它用戶即使擁有對會話的控制權也無法刪除非自身對應的發言請求,并且也無法對發言請求進行其它的任何調整;另外,集群服務器也只能毫無選擇地將媒體發送申請隊列中保存的所有發言請求均刪除,而無法根據實際的業務需要來有策略地對媒體發送申請隊列中保存的發言請求進行有選擇的刪除或進行其它的調整。
由此可見,現有技術不支持授權用戶對媒體發送隊列進行廣泛的調整,包括增加、刪除其他用戶的發言請求、對隊列中的位置進行調整、對發言請求的屬性進行調整等;現有技術利用媒體發送申請隊列實現即按即講業務的方式不夠靈活,極大地降低了業務服務質量以及用戶的滿意度。
發明內容
有鑒于此,本發明的主要目的在于提供一種媒體發送申請隊列的調整方法及控制系統,以實現媒體發送申請隊列的靈活調整,從而提高即通信業務的靈活性。
本發明提供的一種媒體發送申請隊列的調整方法,當前通信中,服務器在媒體發送申請隊列中保存用戶發來的媒體發送請求,包括以下步驟A、隊列控制實體向服務器發送調整媒體發送申請隊列的指令;B、服務器根據收到的調整媒體發送申請隊列的指令調整所述媒體發送申請隊列中的用戶媒體發送請求。
可選的,所述隊列控制實體為位于服務器內或服務器外部的具有管理功能的實體,或為一用戶終端。
其中,所述隊列控制實體為位于服務器內或服務器外部的具有管理功能的實體時,所述調整媒體發送申請隊列的指令包括指示刪除或增加媒體發送申請隊列中某媒體發送請求,或指示調整某媒體發送請求在媒體發送申請隊列中的位置。
其中,所述調整媒體發送申請隊列的指令的發送是隊列控制實體根據其存儲的隊列管理策略觸發發送的。
其中,不同媒體發送請求有不同有效時間;所述隊列管理策略包括判斷媒體發送申請隊列中某媒體發送請求有效時間超時,發出調整媒體發送申請隊列的指令,該指令要求刪除該隊列中所述超時的媒體發送請求,或將所述超時的媒體發送請求移至該隊列尾部。
其中,所述隊列管理策略包括媒體發送申請隊列滿后,收到新的媒體發送請求時,發出調整媒體發送申請隊列的指令,該指令要求刪除該隊列中的低優先級的用戶媒體發送請求,且將所述新的媒體發送請求置入該隊列。
其中,所述隊列控制實體為一用戶終端時,所述調整媒體發送中請隊列的指令包括指示刪除或增加媒體發送申請隊列中其他用戶的媒體發送請求,或指示調整某用戶媒體發送請求在媒體發送申請隊列中的位置。
其中,所述調整媒體發送申請隊列的指令進一步包括指示調整某媒體發送請求的屬性信息。
其中,所述指示調整某媒體發送請求的屬性信息包括指示添加、刪除或修改所述媒體發送請求屬性信息中記錄的該媒體發送請求的有效時間或級別;或,指示修改所述媒體發送請求屬性信息中記錄的該媒體發送請求的申請媒體類型。
其中,所述指示添加所述媒體發送請求屬性信息中記錄的該媒體發送請求的有效時間或級別進一步包括根據不同類型的媒體請求、或/和不同媒體請求對應用戶的不同用戶權限添加不同的有效時間或級別。
其中,步驟B之前進一步包括檢測發送指令的隊列控制實體是否有控制權限,若是則繼續當前步驟。
其中,步驟B后進一步包括服務器向被操作的用戶發送通知消息通知其媒體請求被調整的事實和/或被調整的原因。
其中,進一步包括所述通知消息根據所述被操作用戶的預先設置有選擇地進行發送。
其中,被操作的用戶接收到所述通知消息后進一步包括所述用戶拒絕并取消服務器的所述操作。
本發明還提供了一種媒體發送申請隊列的控制系統,該系統包括隊列控制實體,用于發出調整媒體發送申請隊列的指令;服務器,存儲有用于記錄媒體發送請求的媒體發送申請隊列,并接收隊列控制實體發出的調整媒體發送申請隊列的指令,調整所述媒體發送申請隊列中的用戶媒體發送請求。
其中,所述的隊列控制實體可以為以下之一客戶端、位于所述服務器內部或外部的一個隊列控制實體。
可見,本發明媒體發送申請隊列的調整方法及控制系統,通過對媒體發送申請隊列可調整的實現,實現即按即講業務的靈活性。具體來說,集群會話中的會話控制人員或者其他授權人員或者其他隊列控制實體基于發言權控制的需要可以請求調整媒體發送申請隊列,服務器也可以根據不同的控制策略有選擇地刪除相關的用戶發言請求,增強了會話控制的靈活性,更加高效地控制整個會話過程。
圖1是服務器收到請求調整媒體發送申請隊列流程圖。
圖2是服務器自動調整媒體發送申請隊列流程圖。
圖3是RTCP APP頭域定義結構圖。
圖4是請求發言權的頭域定義結構圖。
圖5是發言權回收通知消息的頭域定義結構圖。
圖6是媒體發送申請隊列的控制系統結構圖。
具體實施例方式
本實施例中,以應用在集群系統中的PoC業務進行說明。本例中,以語音業務為例進行說明,因此,本例中“媒體發送申請隊列”稱為“發言請求隊列”,“媒體發送請求”稱為“發言請求”,“媒體發送權”稱為“發言權”。本發明中集群服務器可以根據隊列控制實體的請求,調整當前發言請求隊列,執行增加、刪除發言請求,調整發言請求在隊列中的位置,或者修改發言請求的屬性信息等操作。這里所述的隊列控制實體可以是一個有控制權限的的客戶端,也可以是在集群服務器內部或外部的一個有管理能力的控制實體。
下面對本發明進行詳細說明。
對于根據隊列控制實體的請求實現發言請求隊列的調整的情況,隊列控制實體可預先從集群服務器獲得當前發言請求隊列的信息,從而可以有針對的進行隊列調整,由于從集群服務器獲得發言請求隊列信息的實現過程為現有技術,此處不再贅述該過程。下面參見圖1對本發明第一實施例進行說明,在該實施例中,假定隊列控制實體A為一PoC客戶端,具有隊列控制的權限,客戶端B具有普通權限。該實施例包括以下步驟步驟101隊列控制實體A向集群服務器(或稱PoC服務器)發送調整請求消息。
所述調整包括隊列的調整,如對隊列中的發言請求進行刪除、增加或位置調整;還可包括對發言請求的屬性信息的調整,包括對發言請求的有效時間、級別、申請的媒體類型的修改,下面詳述這里的調整可以為在發言請求隊列中增加用戶C的發言請求。這個調整的效果相當于A為C向服務器申請了發言權;這里的調整可以為刪除發言請求隊列中用戶B的發言請求,此時,A發出的請求消息中包括的指令名稱表示為刪除指令,還要包括B的標識;這里的調整還可以為調整發言請求隊列中用戶B發言請求的位置,此時,A發出的請求消息中包括的指令名稱表示為位置調整,還要包括B的標識、位置調整的移動信息(如“+2”表示位置前移2位,“-2”表示位置后移2位)。
這里的調整還可以為在現有的用戶B的發言請求中插入有效時間。這個有效時間表示所述的發言請求在一定的時間內有效,超過了這個時間,則變為無效的請求,應該被刪除。
這里的調整還可以為修改現有的用戶B的發言請求中的有效時間。當A希望延長或者縮短B的發言請求的有效期,可以采用該調整請求。
這里的調整還可以為修改現有的用戶B的發言請求的級別,例如可以要求把普通級別改為特權級別,以縮短獲取發言權的時間。
這里的調整還可以為修改現有的用戶B的媒體發送請求的媒體類型,例如可以要求把視頻發送請求改為語音發送請求。服務器可根據策略將修改后的發送請求調整至該類型所在隊列。
這里的調整還可以為刪除隊列中滿足一定要求的所有發言請求,例如刪除隊列中所有超過有效期的發言請求。這個請求將導致在集群服務器中產生一個自動任務,該任務實時監視現有隊列中的發言請求,一旦發現有請求的發言時間已經超過有效期,就把它們刪除。
步驟102~103服務器收到隊列控制實體A的請求消息后,首先對隊列控制實體A進行鑒權,確認其隊列調整權限;然后響應隊列控制實體A的請求消息,根據請求信息的內容調整發言請求隊列。
步驟104服務器向受到上述調整影響的用戶B發送通知消息,通知其發言請求調整后的信息,包括被刪除或位置被調整或者發言級別被調整,或者發言請求有效時間被調整等等。這里也可以由被調整用戶預先配置是否在發言請求被調整后向其發送通知信息,可設置缺省為需要通知。
另外,用戶B收到通知消息后,還可以返回拒絕發言請求被調整的消息,取消服務器的操作。
服務器還可向隊列控制實體A發送響應消息,返回操作是否成功。
在當前會話結束后,服務器根據調整后的發言請求隊列選擇一個發言請求,進行下一輪的發言。
下面參見圖2示出的流程圖,對本發明另一實施例----隊列控制實體位于集群服務器中,實現調整當前發言請求隊列中的發言請求進行說明。包括以下步驟步驟201集群服務器中的隊列控制實體根據其隊列管理規則,觸發對發言請求隊列的調整。
隊列管理策略可以為發言請求消息有效時間超時,刪除發言請求隊列中超時的用戶發言請求。對于這種情況,可以對發言請求消息設置一個有效時間,該時間可以由服務器自動插入進行設置,并且有效時間的長短是可配置的,例如可以針對不同類型的媒體請求(本例中的類型是語音)插入不同的有效時間,例如對于語音請求可設置為3分鐘,對于視頻發送請求可設置為5分鐘;或者不同發言請求對應用戶的不同用戶權限插入不同的有效時間,例如管理員用戶可設置有效時間長度為5分鐘,普通用戶為2分鐘。所述有效時間也可以是用戶發送發言請求消息時攜帶一個有效時間,僅在有效時間內,發言請求隊列中保留該發言請求,超時則刪除。當然,也可以在有效時間超時后,將該發言請求移到隊列尾部,而不刪除。
隊列管理策略還可以為如果是不同優先級發言請求共用同一個發言請求隊列的情形下,發言請求隊列滿,之后又收到用戶發言請求時,并且該用戶優先級高于現有隊列中至少一個用戶,則刪除隊列中的低優先級用戶,排在其后的其他成員順序前移,將新來的用戶發言請求放入隊列尾部。
隊列管理策略還可以為定時調整發言請求隊列中用戶發言請求的位置,如將優先權高的用戶的發言請求向前調整。
當然,隊列管理策略還包括其他策略,由于管理策略非本發明重點,此處不再贅述。
步驟202根據所述隊列管理規則的要求,確定要執行的用戶標識,調整發言請求隊列,并通知服務器。
對應步驟201所述的管理策略,這里的調整可以是刪除某用戶的發言請求,并相應調整發言請求隊列;也可以是調整某用戶發言請求在發言請求隊列中的位置。
步驟203服務器根據所操作的用戶標識,向所操作的用戶發送通知消息,通知其會話請求已經被刪除或被調整。
在當前會話結束后,服務器根據調整后的發言請求隊列選擇一個發言請求,進行一輪的發言。
對于上面實施例的實現,需要新增會話控制客戶端發送給服務器的指令,以及服務器發言請求隊列調整后下發的通知消息。本實施例中通過擴展現有的發言控制協議(TBCP,Talk Burst Control Protocol)消息來實現,其中TBCP采用RTCP APP消息進行承載,RTCP APP頭域定義參見圖3,包括以下內容填充位P,設置為0;子類型subtype,用于填寫應用消息類型;
長度Length,用于填寫不算前32bits的包的32bits字節的長度;SSRC,用于填寫消息發送方的標識;name,填寫RTCP APP協議所應用的業務,在PoC業務中,可填寫為“PoC1”;用來表示當前的RTCP APP是用于PoC的通信中,1是表示PoC的版本為1;應用域,與具體的指令有關,對應subtype。應用數據如果不是4字節的倍數,應以0填充為四字節的倍數。
例如,當為請求發言權的消息時,該頭域的定義格式可參見圖4所示,其中,subtype值為00000,表示是請求發言權指令類型;SSRC為發送該消息的終端的標識;第一個Option域為搶權優先級;第二個Option域為搶權時戳。
Option域包括Option ID,符合RFC3550可選ID定義,為可選ID的值;Option Length為長度,不必是四的倍數;以及Option Value。
本發明上述實施例向服務器發送消息進行發言請求隊列調整時,所使用的指令可以在圖4格式的基礎上進行修改來實現,下面進行詳細說明對于向服務器請求刪除在發言請求隊列中的某個發言請求的指令本發明可以把subtype定義為10001或者其他未用的值,來表示是刪除指令;同時只保留一個Option域,在該Option域上填寫要被從發言請求隊列中刪除的用戶ID。這樣當服務器收到該指令后,識別出是刪除指令,并根據Option域中的用戶ID刪除發言請求隊列中的該用戶。
對于向服務器請求調整發言請求隊列中某個發言請求的位置的指令本發明可以把subtype定義為11001或者其他未用的值,來表示是位置移動指令,同時在第一個Option域中填寫要被調整的用戶ID,在第二個Option中填寫調整的位數,如“+2”表示往前調整2位,“-3”表示調后3位。這樣當服務器收到該指令后,識別出是位置移動指令,并根據第一Option域中的用戶ID,第二個Option中的調整位數,來調整發言請求隊列中該用戶請求的位置。
對于向服務器請求在發言請求隊列中增加某個發言請求的指令本發明可以把subtype定義為11101或者其他未用的值,來表示是增加指令,同時在第一個Option域中填寫要被增加的用戶ID即可。
對于向服務器請求在發言請求隊列中修改某個發言請求屬性的指令本發明可以把subtype定義為11111或者其他未用的值,來表示是對某用戶發言請求屬性調整指令,同時在第一個Option域中填寫要被調整的用戶ID,在Option Value中填寫對屬性操作的指令即可。
圖5示出的是現有的發言權回收通知消息的頭域的定義格式,下面進行說明subtype值為00110,表示是發言權回收通知指令;SSRC應為發送所述通知消息的服務器的標識;Reason域為回收原因碼域,符合RFC3550的域定義格式。
本發明上述實施例中服務器通知用戶的消息,可以在該發言權回收消息的基礎上修改得到,具體來說,為把subtype定義為11001或者其他未用的值來表示該指令是隊列調整原因消息;在Reason code中填入原因碼,具體可以根據需要預先定義,并可在additional information中填入相關原因信息。從而可以實現隊列調整的原因信息發送給被操作的用戶。
如圖6所示,是本發明相應的提供的媒體發送申請隊列的控制系統,包括隊列控制實體,用于發出調整媒體發送申請隊列的指令;服務器,存儲有用于記錄媒體發送請求的媒體發送申請隊列,并接收隊列控制實體發出的調整媒體發送申請隊列的指令,調整所述媒體發送申請隊列中的用戶媒體發送請求。其中,如圖6(A)中,隊列控制實體可以為客戶端或位于所述服務器外部的一個隊列控制實體;又如圖6(B)所示,隊列控制實體還可以是位于所述服務器內部的一個隊列控制實體通過上面實施例可以看出,本發明中,隊列控制實體或者人員(例如可以是運營商、授權用戶、群組管理員等等)基于發言權控制的需要可以請求調整等待發言請求隊列中的指定請求,調整現有發言請求隊列中的請求順序,服務器也可以根據不同的控制策略有選擇地刪除相關的用戶請求,增強了會話控制的靈活性,更加高效地控制整個會話過程。
總之,以上所述僅為本發明的較佳實施例而已,并非用于限定本發明的保護范圍。凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護范圍之內。
權利要求
1.一種媒體發送申請隊列的調整方法,當前通信中,服務器在媒體發送申請隊列中保存用戶發來的媒體發送請求,其特征在于,包括以下步驟A、隊列控制實體向服務器發送調整媒體發送申請隊列的指令;B、服務器根據收到的調整媒體發送申請隊列的指令調整所述媒體發送申請隊列中的用戶媒體發送請求。
2.根據權利要求1所述的方法,其特征在于,所述隊列控制實體為位于服務器內或服務器外部的具有管理功能的實體,或為一用戶終端。
3.根據權利要求2所述的方法,其特征在于,所述隊列控制實體為位于服務器內或服務器外部的具有管理功能的實體時,所述調整媒體發送申請隊列的指令包括指示刪除或增加媒體發送申請隊列中某媒體發送請求,或指示調整某媒體發送請求在媒體發送申請隊列中的位置。
4.根據權利要求3所述的方法,其特征在于,所述調整媒體發送申請隊列的指令的發送是隊列控制實體根據其存儲的隊列管理策略觸發發送的。
5.根據權利要求4所述的方法,其特征在于,不同媒體發送請求有不同有效時間;所述隊列管理策略包括判斷媒體發送申請隊列中某媒體發送請求有效時間超時,發出調整媒體發送申請隊列的指令,該指令要求刪除該隊列中所述超時的媒體發送請求,或將所述超時的媒體發送請求移至該隊列尾部。
6.根據權利要求4所述的方法,其特征在于,所述隊列管理策略包括媒體發送申請隊列滿后,收到新的媒體發送請求時,發出調整媒體發送申請隊列的指令,該指令要求刪除該隊列中的低優先級的用戶媒體發送請求,且將所述新的媒體發送請求置入該隊列。
7.根據權利要求2所述的方法,其特征在于,所述隊列控制實體為一用戶終端時,所述調整媒體發送申請隊列的指令包括指示刪除或增加媒體發送申請隊列中其他用戶的媒體發送請求,或指示調整某用戶媒體發送請求在媒體發送申請隊列中的位置。
8.根據權利要求1、3、7所述的方法,其特征在于,所述調整媒體發送申請隊列的指令進一步包括指示調整某媒體發送請求的屬性信息。
9.根據權利要求8所述的方法,其特征在于,所述指示調整某媒體發送請求的屬性信息包括指示添加、刪除或修改所述媒體發送請求屬性信息中記錄的該媒體發送請求的有效時間或級別;或,指示修改所述媒體發送請求屬性信息中記錄的該媒體發送請求的申請媒體類型。
10.根據權利要求9所述的方法,其特征在于,所述指示添加所述媒體發送請求屬性信息中記錄的該媒體發送請求的有效時間或級別進一步包括根據不同類型的媒體請求、或/和不同媒體請求對應用戶的不同用戶權限添加不同的有效時間或級別。
11.根據權利要求1所述的方法,其特征在于,步驟B之前進一步包括檢測發送指令的隊列控制實體是否有控制權限,若是則繼續當前步驟。
12.根據權利要求1所述的方法,其特征在于,步驟B后進一步包括服務器向被操作的用戶發送通知消息通知其媒體請求被調整的事實和/或被調整的原因。
13.根據權利要求12所述的方法,其特征在于,進一步包括所述通知消息根據所述被操作用戶的預先設置有選擇地進行發送。
14.根據權利要求12所述的方法,其特征在于,被操作的用戶接收到所述通知消息后進一步包括所述用戶拒絕并取消服務器的所述操作。
15.一種媒體發送申請隊列的控制系統,其特征在于,該系統包括隊列控制實體,用于發出調整媒體發送申請隊列的指令;服務器,存儲有用于記錄媒體發送請求的媒體發送申請隊列,并接收隊列控制實體發出的調整媒體發送申請隊列的指令,調整所述媒體發送申請隊列中的用戶媒體發送請求。
16.根據權利要求15所述的系統,其特征在于,所述的隊列控制實體可以為以下之一客戶端、位于所述服務器內部或外部的一個隊列控制實體。
全文摘要
本發明提供了一種媒體發送申請隊列的調整方法,當前通信中,服務器在媒體發送申請隊列中保存用戶發來的媒體發送請求,包括以下步驟A.隊列控制實體向服務器發送調整媒體發送申請隊列的指令;B.服務器根據收到的調整媒體發送申請隊列的指令調整所述媒體發送申請隊列中的用戶媒體發送請求。還相應提供了一種媒體發送申請隊列的控制系統,包括隊列控制實體,用于發出調整媒體發送申請隊列的指令;服務器,存儲有用于記錄媒體發送請求的媒體發送申請隊列,并接收隊列控制實體發出的調整媒體發送申請隊列的指令,調整所述媒體發送申請隊列中的用戶媒體發送請求。使用本發明,可實現媒體發送申請隊列的靈活調整,從而提高即通信業務的靈活性。
文檔編號H04Q7/28GK1933617SQ200510096879
公開日2007年3月21日 申請日期2005年9月12日 優先權日2005年9月12日
發明者章李銘 申請人:華為技術有限公司