群組對話框排序方法及終端與流程
2023-09-10 17:12:20 1

本發明涉及計算機通信技術領域,具體地,涉及一種群組對話框排序方法及終端。
背景技術:
「即時通信」產品是一種關係型即時通信產品,滿足用戶在移動網際網路時代的整合溝通、娛樂需求,「即時通信」產品例如微信、手機QQ等。根據實際調研顯示,目前的即時通信產品人均保存有50個左右的群組對話框,可見,群組聊天已經成為高頻率聊天。
群組對話框的建立場景多樣化,有可能是根據工作內容建立的群組,有可能是根據家庭建立的群組,還有可能是根據學習經歷建立的群組,更有可能根據個人喜好建立的群組。群組對話框的建立場景多樣化說明了群組對話框具有比單人對話框更複雜的特性。而且,由於參與群組對話框的人數眾多,本地成員(即通信產品的使用者)在群組對話框中扮演的角色可能是活躍參與者,也可能是一般參與者,群組聊天對話框中發布的消息,可能對用戶非常重要,也可能僅僅只是用戶用來娛樂消遣的消息。
在即時通訊領域,用戶需要聯繫的群組對話框出現在首屏位置(群組對話框位於聊天列表中第1-7位),則視為用戶體驗好,用戶需要聯繫的群組對話框出現在次屏位置(群組對話框位於聊天列表中第8-14位),則視為用戶體驗一般,用戶需要聯繫的群組對話框出現在首屏次屏以外的位置,則視為用戶體驗不好。在這種情況下,目前的群組對話框排序不可避免地存在以下問題:
目前群組對話框排序的方式僅按照通信時間的先後順序進行排列,排序規則過於簡單,而且不常聯繫的對話框往往因偶爾的一次通信而佔據聊天列表的首屏位置,而常聯繫的對話框則被排列在首屏之外,這往往造成用戶經常翻屏查找,徒增用戶的動作頻率,不能夠很好的貼近用戶需求,降低了用戶體驗。
技術實現要素:
本發明旨在至少解決現有技術中存在的技術問題之一,提出了一種群組對話框排序方法及終端,其可以減少用戶的動作頻率,提升了用戶體驗。
為實現本發明的目的而提供一種群組對話框排序方法,每個群組對話框包括至少兩個群組成員和一個本地成員,包括:
獲取每個群組對話框的友好度權重和通信時間權重;所述友好度權重是指每個群組對話框中,所述群組成員與本地成員互為好友的個數佔比的權重;
基於所述每個群組對話框的友好度權重和通信時間權重,對各個群組對話框進行排序,並根據排序結果生成聊天列表。
可選的,所述基於所述每個群組對話框的友好度權重和通信時間權重,對各個群組對話框進行排序,包括:
將所述每個群組對話框的友好度權重和通信時間權重代入預先構建的排序公式進行計算,獲得每個群組對話框的排序值;
按照各個群組對話框的排序值由大到小的順序對各個群組對話框進行排序。
可選的,所述排序公式為:
s(i)=p[i]×t[i]
其中,s(i)為第i個群組對話框的排序值;p[i]為第i個群組對話框的友好度權重;t[i]為第i個群組對話框的通信時間權重;i=1,2,...m,m為群組對話框的總數。
可選的,所述獲取每個群組對話框的友好度權重包括:
獲取以下參數:群組對話框的總數、每個群組對話框擁有的所述群組成員和本地成員的總數以及每個群組對話框中的所述群組成員與本地成員互為好友的個數;
將所述參數代入預先構建的友好度權重公式進行計算,獲得所述友好度權重;
所述友好度權重公式為:
<![CDATA[ p i = x i n i ( Σ i = 1 m x i n i ) / m ]]>
其中,p[i]為第i個群組對話框的友好度權重;i=1,2,...m,m為群組對話框的總數;ni為第i個群組對話框擁有的所述群組成員和本地成員的總數;xi為第i個群組對話框中,所述群組成員與本地成員互為好友的個數。
可選的,所述獲取每個群組對話框的通信時間權重包括:
獲取以下參數:每個群組對話框擁有的所述群組成員和本地成員的總數、每個群組對話框完成對話的時刻以及參考時刻;
將所述參數代入預先構建的通信時間權重公式進行計算,獲得所述通信時間權重;
所述通信時間公式為:
<![CDATA[ t i = y i ( Σ i m y i ) / m ; ]]>
yi=T[i]-T0
其中,t[i]為第i個群組對話框的通信時間權重;yi為第i個群組對話框完成對話的時刻與參考時刻之間的差值;T[i]為第i個群組對話框完成對話的時刻;T0為參考時刻;i=1,2,...m,m為群組對話框的總數。
作為另一個技術方案,本發明還提供一種終端,包括:
獲取單元,用於獲取每個群組對話框的友好度權重和通信時間權重;所述友好度權重是指每個群組對話框中,所述群組成員與本地成員互為好友的個數佔比的權重;
生成單元,用於基於所述每個群組對話框的友好度權重和通信時間權重,對各個群組對話框進行排序,並根據排序結果生成聊天列表。
可選的,所述生成單元包括:
計算模塊,用於將所述每個群組對話框的友好度權重和通信時間權重代入預先構建的排序公式進行計算,獲得每個群組對話框的排序值;
排序模塊,用於按照各個群組對話框的排序值由大到小的順序對各個群組對話框進行排序;
生成模塊,用於根據排序結果生成聊天列表。
可選的,所述排序公式為:
s(i)=p[i]×t[i]
其中,s(i)為第i個群組對話框的排序值;p[i]為第i個群組對話框的友好度權重;t[i]為第i個群組對話框的通信時間權重;i=1,2,...m,m為群組對話框的總數。
可選的,所述獲取單元獲取每個群組對話框的友好度權重包括:
獲取以下參數:群組對話框的總數、每個群組對話框擁有的所述群組成員和本地成員的總數以及每個群組對話框中的所述群組成員與本地成員互為好友的個數;
將所述參數代入預先構建的友好度權重公式進行計算,獲得所述友好度權重;
所述友好度權重公式為:
<![CDATA[ p i = x i n i ( Σ i = 1 m x i n i ) / m ]]>
其中,p[i]為第i個群組對話框的友好度權重;i=1,2,...m,m為群組對話框的總數;ni為第i個群組對話框擁有的所述群組成員和本地成員的總數;xi為第i個群組對話框中,所述群組成員與本地成員互為好友的個數。
可選的,所述獲取單元獲取每個群組對話框的通信時間權重包括:
獲取以下參數:每個群組對話框擁有的所述群組成員和本地成員的總數、每個群組對話框完成對話的時刻以及參考時刻;
將所述參數代入預先構建的通信時間權重公式進行計算,獲得所述通信時間權重;
所述通信時間公式為:
<![CDATA[ t i = y i ( Σ i m y i ) / m ; ]]>
yi=T[i]-T0
其中,t[i]為第i個群組對話框的通信時間權重;yi為第i個群組對話框完成對話的時刻與參考時刻之間的差值;T[i]為第i個群組對話框完成對話的時刻;T0為參考時刻;i=1,2,...m,m為群組對話框的總數。
本發明具有以下有益效果:
本發明提供的群組對話框排序方法及終端的技術方案中,通過獲取每個群組對話框的友好度權重和通信時間權重;基於每個群組對話框的友好度權重和通信時間權重,對各個群組對話框進行排序,並根據排序結果生成聊天列表,可以在考慮通信時間的同時,考慮每個群組對話框中的群組成員與本地成員互為好友的個數佔比,從而可以避免對用戶並不重要的群組對話框佔據聊天列表首屏位置,進而可以減少用戶的動作頻率,提升了用戶體驗。
附圖說明
圖1為本發明第一實施例提供的群組對話框排序方法的流程框圖;
圖2為本發明第二實施例提供的群組對話框排序方法的流程框圖;
圖3為本發明第三實施例提供的終端的流程框圖;以及
圖4為本發明第四實施例提供的終端的流程框圖。
具體實施方式
為使本領域的技術人員更好地理解本發明的技術方案,下面結合附圖來對本發明提供的群組對話框排序方法及終端進行詳細描述。
圖1為本發明第一實施例提供的群組對話框排序方法的流程框圖。請參閱圖1,群組對話框為群體聊天的對話框,每個群組對話框包括至少兩個群組成員和一個本地成員,本地成員即為本地客戶端用戶;群組成員為本地客戶端用戶的聯繫對象。群組對話框至少有三個人參與(包括本地客戶端用戶本人)。
群組對話框排序方法包括:
步驟101、獲取每個群組對話框的友好度權重和通信時間權重;該友好度權重是指每個群組對話框中,群組成員與本地成員互為好友的個數佔比的權重,該個數佔比是指群組成員與本地成員互為好友的個數與群組成員和本地成員的總個數的比值。
步驟102、基於每個群組對話框的友好度權重和通信時間權重,對各個群組對話框進行排序,並根據排序結果生成聊天列表。
本發明提供的群組對話框排序方法,不僅考慮每個群組對話框的通信時間的相對重要程度,還考慮每個群組對話框的友好度的相對重要程度,某一群組對話框中群組成員與本地成員互為好友的個數越多,越有可能是用戶聯繫越多的對話框,從而可以在一定程度上避免常聯繫的對話框被排列在首屏之外,而對用戶並不重要的群組對話框佔據聊天列表首屏位置,進而可以減少用戶的動作頻率,提升了用戶體驗。
圖2為本發明第二實施例提供的群組對話框排序方法的流程框圖。請參閱圖2,群組對話框排序方法包括:
步驟201、獲取每個群組對話框的友好度權重和通信時間權重;
獲取每個群組對話框的友好度權重包括:
獲取以下參數:群組對話框的總數、每個群組對話框擁有的群組成員和本地成員的總數以及每個群組對話框中的所述群組成員與本地成員互為好友的個數;
將該參數代入預先構建的友好度權重公式進行計算,獲得友好度權重。該友好度權重公式為:
<![CDATA[ p i = x i n i ( Σ i = 1 m x i n i ) / m ]]>
其中,p[i]為第i個群組對話框的友好度權重;i=1,2,...m,m為群組對話框的總數;ni為第i個群組對話框擁有的群組成員和本地成員的總數,ni為大於2的整數;xi為第i個群組對話框中,群組成員與本地成員互為好友的個數。
獲取每個群組對話框的通信時間權重包括:
獲取以下參數:每個群組對話框擁有的群組成員和本地成員的總數、每個群組對話框完成對話的時刻以及參考時刻;
將該參數代入預先構建的通信時間權重公式進行計算,獲得通信時間權重。該通信時間公式為:
<![CDATA[ t i = y i ( Σ i = 1 m y i ) / m ; ]]>
yi=T[i]-T0
其中,t[i]為第i個群組對話框的通信時間權重;yi為第i個群組對話框完成對話的時刻與參考時刻之間的差值,該差值越大,表示該群組對話框對話的完成時間距離當前時間越近,即剛剛完成的對話;T[i]為第i個群組對話框完成對話的時刻;T0為參考時刻,其可以由本地客戶端選擇;i=1,2,...m,m為群組對話框的總數。
步驟202、將每個群組對話框的友好度權重和通信時間權重代入預先構建的排序公式進行計算,獲得每個群組對話框的排序值;
上述排序公式為預先構建的函數,而上述友好度權重和通信時間權重即為該排序公式的自變量。具體地,排序公式為:
s(i)=p[i]×t[i]
其中,s(i)為第i個群組對話框的排序值;p[i]為第i個群組對話框的友好度權重;t[i]為第i個群組對話框的通信時間權重;i=1,2,...m,m為群組對話框的總數。
步驟203、按照各個群組對話框的排序值由大到小的順序對各個群組對話框進行排序;
在完成步驟202之後,可以獲得m個群組對話框的m個排序值。然後,在步驟203中,按m個排序值由大到小的順序依次排列m個群組對話框,即獲得排序結果。
步驟204、根據該排序結果生成聊天列表。
作為另一個技術方案,本發明還提供一種終端,圖3為本發明第三實施例提供的終端的流程框圖。請參閱圖3,終端包括:
獲取單元1,用於獲取每個群組對話框的友好度權重和通信時間權重。
生成單元2,用於基於每個群組對話框的友好度權重和通信時間權重,對各個群組對話框進行排序,並根據排序結果生成聊天列表。
本發明提供的終端,其藉助獲取單元1和生成單元2,可以在一定程度上避免常聯繫的對話框被排列在首屏之外,而對用戶並不重要的群組對話框佔據聊天列表首屏位置,進而可以減少用戶的動作頻率,提升了用戶體驗。
圖4為本發明第四實施例提供的終端的流程框圖。請參閱圖4,生成單元2進一步包括:
計算模塊21,用於將每個群組對話框的友好度權重和通信時間權重代入預先構建的排序公式進行計算,獲得每個群組對話框的排序值。
排序模塊22,用於按照各個群組對話框的排序值由大到小的順序對各個群組對話框進行排序。
生成模塊23,用於根據排序結果生成聊天列表。
上述排序公式為:
s(i)=p[i]×t[i]
其中,s(i)為第i個群組對話框的排序值;p[i]為第i個群組對話框的友好度權重;t[i]為第i個群組對話框的通信時間權重;i=1,2,...m,m為群組對話框的總數。
獲取單元1獲取每個群組對話框的友好度權重包括:
獲取以下參數:群組對話框的總數、每個群組對話框擁有的所述群組成員和本地成員的總數以及每個群組對話框中的群組成員與本地成員互為好友的個數。
將參數代入預先構建的友好度權重公式進行計算,獲得友好度權重。該友好度權重公式為:
<![CDATA[ p i = x i n i ( Σ i = 1 m x i n i ) / m ]]>
其中,p[i]為第i個群組對話框的友好度權重;i=1,2,...m,m為群組對話框的總數;ni為第i個群組對話框擁有的群組成員和本地成員的總數;xi為第i個群組對話框中,群組成員與本地成員互為好友的個數。
獲取單元1獲取每個群組對話框的通信時間權重包括:
獲取以下參數:每個群組對話框擁有的所述群組成員和本地成員的總數、每個群組對話框完成對話的時刻以及參考時刻;
將該參數代入預先構建的通信時間權重公式進行計算,獲得通信時間權重。該通信時間公式為:
<![CDATA[ t i = y i ( Σ i m y i ) / m ; ]]>
yi=T[i]-T0
其中,t[i]為第i個群組對話框的通信時間權重;yi為第i個群組對話框完成對話的時刻與參考時刻之間的差值;T[i]為第i個群組對話框完成對話的時刻;T0為參考時刻;i=1,2,...m,m為群組對話框的總數。
可以理解的是,以上實施方式僅僅是為了說明本發明的原理而採用的示例性實施方式,然而本發明並不局限於此。對於本領域內的普通技術人員而言,在不脫離本發明的精神和實質的情況下,可以做出各種變型和改進,這些變型和改進也視為本發明的保護範圍。