專利名稱:一種即時通訊中的用戶搜索方法、系統(tǒng)、服務(wù)器及客戶端的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及互聯(lián)網(wǎng)領(lǐng)域,尤其涉及一種即時通訊中的用戶搜索方法、系 統(tǒng)、服務(wù)器及客戶端。
背景技術(shù):
網(wǎng)絡(luò)即時通訊(InstantMessenging, IM)發(fā)展到今天,已經(jīng)被大多數(shù)的 網(wǎng)民所接受,在IM用戶平時的休閑娛樂和工作中都得到了廣泛的使用,建立 好友關(guān)系是IM用戶之間進行溝通的基礎(chǔ)。在建立好友關(guān)系之前,IM用戶需要搜索好友添加對象,現(xiàn)有的IM用戶 以昵稱、IM用戶身份標(biāo)識(ID)等信息作為自身的屬性,區(qū)別于其它IM用 戶,因此,現(xiàn)有的IM用戶搜索方法主要以昵稱、IM用戶ID等屬性作為搜 索條件搜索IM用戶,搜索到滿足搜索條件的IM用戶后,即可從中選擇好 友添加對象,發(fā)送好友添加請求,若好友添加成功,IM用戶即可與添加的 好友進行溝通??梢姡F(xiàn)有的IM用戶屬性簡單,對IM用戶的興趣、愛好等情況反映 有限,因此,以現(xiàn)有IM用戶屬性作為搜索條件搜索IM用戶時,無法搜索 到反映自身真實情況的IM用戶。發(fā)明內(nèi)容有鑒于此,本發(fā)明實施例的目的在于提供一種即時通訊中的用戶搜索方 法、系統(tǒng)、服務(wù)器及客戶端,以搜索到反映自身真實情況的IM用戶。 為達到上述目的,本發(fā)明實施例的技術(shù)方案具體是這樣實現(xiàn)的 一種即時通訊中的用戶:^叟索方法,該方法包^t舌步驟IM服務(wù)器接收到攜帶有標(biāo)簽TAG屬性和目標(biāo)用戶身份標(biāo)識ID的TAG屬目標(biāo)用戶為好友關(guān)系,則在具有所述TAG屬性的用戶ID列表中記錄所述目標(biāo) 用戶的ID,在所述目標(biāo)用戶的用戶信息中記錄所述TAG屬性;IM服務(wù)器接收到攜帶有TAG屬性的搜索協(xié)議命令后,若搜索到該TAG屬 性已記錄,則確定具有所述TAG屬性的用戶,將已確定用戶的信息發(fā)給發(fā)送所 述搜索協(xié)議命令的IM客戶端。一種即時通訊中的用戶搜索系統(tǒng),該系統(tǒng)包括IM服務(wù)器和IM客戶端;所述IM服務(wù)器用于,接收到IM客戶端發(fā)來的攜帶有TAG屬性和目標(biāo)用 戶ID的TAG屬性設(shè)置協(xié)議命令后,若確定發(fā)送所述協(xié)議命令的用戶為所述目 標(biāo)用戶、或與所述目標(biāo)用戶為好友關(guān)系,則在具有所述TAG屬性的用戶ID列 表中記錄所述目標(biāo)用戶的ID,在所述目標(biāo)用戶的用戶信息中記錄所述TAG屬 性;接收到攜帶有TAG屬性的搜索協(xié)議命令后,若搜索到該TAG屬性已記錄, 則確定具有所述TAG屬性的用戶,將已確定用戶的信息發(fā)給IM客戶端;所述IM客戶端用于,向IM服務(wù)器發(fā)送攜帶有TAG屬性和目標(biāo)用戶ID的 TAG屬性設(shè)置協(xié)議命令,向IM服務(wù)器發(fā)送攜帶有TAG屬性的搜索協(xié)議命令, 接收IM服務(wù)器根據(jù)所述搜索協(xié)議命令返回的用戶信息。一種即時通訊中的服務(wù)器,該服務(wù)器包括TAG屬性設(shè)置單元和用戶搜索單元;所述TAG屬性設(shè)置單元用于,接收到IM客戶端發(fā)來的攜帶有TAG屬性 和目標(biāo)用戶ID的TAG屬性設(shè)置協(xié)議命令后,若確定發(fā)送所述協(xié)議命令的用戶 為所述目標(biāo)用戶、或與所述目標(biāo)用戶為好友關(guān)系,則在具有所述TAG屬性的用 戶ID列表中記錄所述目標(biāo)用戶的ID,在所述目標(biāo)用戶的用戶信息中記錄所述 TAG屬性;所述用戶搜索單元用于,接收到攜帶有TAG屬性的搜索協(xié)議命令后,若在 所述TAG屬性設(shè)置單元中搜索到該TAG屬性已記錄,則確定具有所述TAG 屬性的用戶,將已確定用戶的信息發(fā)給IM客戶端。一種即時通訊中的客戶端,所述客戶端包括TAG屬性輸入單元、TAG屬性設(shè)置單元和用戶搜索單元;所述TAG屬性輸入單元用于,若接收到TAG選定觸發(fā)及TAG屬性設(shè)置 單元發(fā)來的設(shè)置指示,則向TAG屬性設(shè)置單元發(fā)送確定指示,若接收到TAG 選定觸發(fā)及用戶搜索單元發(fā)來的搜索指示,則向用戶搜索單元發(fā)送確定指示;所述TAG屬性設(shè)置單元用于,向TAG屬性輸入單元發(fā)送設(shè)置指示,接收 到TAG屬性輸入單元發(fā)來的確定指示后,向IM服務(wù)器發(fā)送攜帶有TAG屬性 和目標(biāo)用戶ID的TAG屬性設(shè)置協(xié)議命令;所述用戶搜索單元用于,向TAG屬性輸入單元發(fā)送搜索指示,接收到TAG 屬性輸入單元發(fā)來的確定指示后,向IM服務(wù)器發(fā)送攜帶有TAG屬性的搜索協(xié) 議命令。由上述技術(shù)方案可見,本發(fā)明實施例所提供的技術(shù)方案,在IM用戶的屬 性中增加了 TAG屬性,以所述TAG屬性作為搜索條件搜索IM用戶,由于TAG 屬性是其自身或好友設(shè)置的,因此,該TAG屬性能夠反映IM用戶的真實情況, 以TAG屬性為搜索條件搜索IM用戶,可以搜索到反映自身真實情況的IM用 戶。
圖1為本發(fā)明方法實施例所提供的IM用戶搜索方法流程圖;圖2為IM服務(wù)器設(shè)置TAG屬性的流程圖;圖3為已設(shè)置了 TAG屬性的IM服務(wù)器搜索IM用戶的流程圖;圖4為設(shè)置了用戶信息管理服務(wù)器的IM系統(tǒng)以TAG屬性為搜索條件 搜索IM用戶、設(shè)置TAG屬性的方法流程圖;圖5為本發(fā)明系統(tǒng)實施例提供的支持以TAG為搜索條件搜索IM用戶 的IM系統(tǒng)結(jié)構(gòu)圖;圖6為本發(fā)明裝置實施例提供的IM服務(wù)器結(jié)構(gòu)圖;圖7為本發(fā)明裝置實施例提供的IM客戶端結(jié)構(gòu)圖。
具體實施方式
本發(fā)明實施例所提供的技術(shù)方案,在IM用戶的用戶信息中增加標(biāo)簽(TAG)屬性,以所述TAG屬性作為搜索條件搜索IM用戶。其中,TAG是 一種可由IM用戶自定義的屬性,通常為IM用戶根據(jù)與目標(biāo)用戶的溝通過程, 對目標(biāo)用戶的興趣、愛好、職業(yè)、性格等做出的描述,或者IM用戶對自身所 作出的描述。圖1為本發(fā)明方法實施例所提供的IM用戶搜索方法流程圖,如圖1所 示,該方法具體包括如下步驟步驟IOI, IM服務(wù)器記錄TAG屬性。IM服務(wù)器接收到攜帶有TAG屬性和目標(biāo)用戶ID的TAG屬性設(shè)置協(xié)議命 令后,若確定發(fā)送所述協(xié)議命令的用戶為所述目標(biāo)用戶、或與所述目標(biāo)用戶為 好友關(guān)系,則在所述目標(biāo)用戶的用戶信息中記錄所述TAG屬性,在具有所述 TAG屬性的用戶ID列表中記錄所述目標(biāo)用戶的ID。步驟102, IM服務(wù)器根據(jù)TAG屬性搜索IM用戶。IM服務(wù)器接收到攜帶有TAG屬性的搜索協(xié)議命令后,若搜索到該TAG 屬性已記錄,則確定具有所述TAG屬性的用戶,將已確定用戶的信息發(fā)給發(fā)送 所述搜索協(xié)議命令的IM客戶端。圖2為IM服務(wù)器設(shè)置TAG屬性的流程圖,如圖2所示,該方法具體 包括如下步驟步驟201,接收TAG屬性設(shè)置協(xié)議命令。IM服務(wù)器接收來自IM客戶端的TAG屬性設(shè)置協(xié)議命令,該TAG屬 性設(shè)置協(xié)議命令攜帶有TAG屬性和目標(biāo)用戶的ID。步驟202, IM服務(wù)器確認(rèn)發(fā)送所述協(xié)議命令的用戶是否為所述目標(biāo)用戶、 或所述目標(biāo)用戶與發(fā)送TAG屬性設(shè)置協(xié)議命令的用戶是否為好友關(guān)系,若 是,則執(zhí)行步驟203,否則執(zhí)行步驟205。步驟203,在具有所述TAG屬性的用戶ID列表中記錄所述目標(biāo)用戶。對應(yīng)每一個TAG屬性,IM服務(wù)器中都建立有用戶ID列表,記錄了具 有該TAG屬性的用戶ID。IM服務(wù)器接收到TAG屬性設(shè)置協(xié)議命令后,搜索對應(yīng)所述TAG屬性 設(shè)置協(xié)議命令攜帶的TAG屬性,是否已設(shè)置了用戶ID列表,若是,則在已 設(shè)置的用戶ID列表中搜索目標(biāo)用戶的ID,若否,則對應(yīng)所述TAG屬性, 建立具有所述TAG屬性的用戶ID列表,將該用戶ID列表初始化為該目標(biāo) 用戶的ID。在具有所述TAG屬性的用戶ID列表中遍歷搜索目標(biāo)用戶的ID后,若 搜索到,則根據(jù)目標(biāo)用戶ID獲取該目標(biāo)用戶的用戶信息,若未搜索到,則 在具有所述TAG屬性的用戶ID列表中添加該目標(biāo)用戶的ID,并根據(jù)目標(biāo) 用戶ID獲取該目標(biāo)用戶的用戶信息。步驟204,在目標(biāo)用戶的用戶信息中記錄所述TAG屬性,結(jié)束本流程。IM服務(wù)器搜索目標(biāo)用戶的用戶信息中是否已記錄了所述TAG屬性,若 未記錄,則在該目標(biāo)用戶的用戶信息中記錄該TAG屬性,并將所述目標(biāo)用 戶被設(shè)置為該TAG屬性的次數(shù)初始化為1,若已記錄,則將所述目標(biāo)用戶 被設(shè)置為該TAG屬性的次數(shù)加1 。步驟205 ,向發(fā)送TAG屬性設(shè)置協(xié)議命令的用戶返回?zé)o權(quán)設(shè)置的提示, 結(jié)束本流程。IM服務(wù)器還可以記錄TAG屬性的設(shè)置情況,包括該IM服務(wù)器已設(shè)置的TAG屬性,以及每一個TAG屬性的設(shè)置次數(shù),可通過建立已記錄TAG屬性列表記錄TAG屬性的設(shè)置情況。圖3為已設(shè)置了 TAG屬性的IM服務(wù)器搜索IM用戶的流程圖,如圖3所示,該方法具體包括如下步驟步驟301, IM服務(wù)器接收攜帶有TAG屬性的搜索協(xié)議命令。步驟302, IM服務(wù)器搜索所述TAG屬性是否已記錄。IM服務(wù)器可通過已記錄TAG屬性列表確定TAG屬性是否已記錄,或者搜索是否存在具有所述TAG屬性的IM用戶ID列表,若存在,則所述TAG屬性已記錄,否則所述TAG屬性未記錄。步驟303,確定具有所述TAG屬性的用戶,將已確定用戶的信息發(fā)給 IM客戶端。IM服務(wù)器可將具有所述TAG屬性的IM用戶ID列表中的所有用戶、 或滿足預(yù)訂條件的用戶設(shè)置為已確定用戶,通過IM用戶ID搜索到該IM用 戶的用戶信息,將所述用戶信息發(fā)給IM客戶端。例如,將TAG屬性的設(shè) 置次數(shù)在預(yù)訂次數(shù)(例如5次)以上的IM用戶、或TAG屬性設(shè)置次數(shù)最 高的前M (M為自然數(shù))個IM用戶(例如,M-20時,即為按IM用戶被 設(shè)置為所述TAG屬性的次數(shù)由高到低排列的前20個IM用戶),設(shè)置為已 確定用戶。已確定用戶的信息包括該已確定用戶的ID、系統(tǒng)頭^f象、具有的TAG屬 性等。圖2和圖3給出了在IM服務(wù)器中存儲IM用戶信息,直接由IM服務(wù)器 設(shè)置TAG屬性、或直接由IM服務(wù)器以TAG屬性為搜索條件,搜索IM用 戶的方法,實際應(yīng)用中,IM系統(tǒng)中可以進一步地設(shè)置用戶信息管理服務(wù)器, 用于管理IM用戶的用戶信息,這樣,IM服務(wù)器可以將TAG屬性設(shè)置的協(xié) 議命令轉(zhuǎn)給該用戶信息管理服務(wù)器,由該用戶信息管理服務(wù)器設(shè)置TAG屬性,也可以將TAG搜索協(xié)議命令轉(zhuǎn)給該用戶信息管理服務(wù)器,由該用戶信 息管理服務(wù)器根據(jù)TAG搜索協(xié)議命令搜索IM用戶,并將搜索結(jié)果發(fā)給IM 客戶端。當(dāng)在IM系統(tǒng)中設(shè)置用戶信息管理服務(wù)器時,用戶信息管理服務(wù)器進行 TAG屬性設(shè)置和IM用戶搜索的方法可參照圖2和圖3所示的方法。下面以設(shè)置了用戶信息管理服務(wù)器的IM系統(tǒng)為例,舉例介紹以TAG 屬性為搜索條件搜索IM用戶、設(shè)置TAG屬性的方法。圖4為設(shè)置了用戶信息管理服務(wù)器的IM系統(tǒng)以TAG屬性為搜索條件 搜索IM用戶、設(shè)置TAG屬性的方法流程圖,如圖4所示,該方法具體包 括如下步驟步驟401, IM用戶1登陸IM客戶端1。本步驟為現(xiàn)有技術(shù)。IM客戶端1接收IM用戶1輸入的IM用戶1的ID及密碼,組合所述ID及密碼到數(shù)據(jù)包中,將數(shù)據(jù)包進行加密處理后,攜帶驗證ID及密碼有效性的協(xié)議命令,通過與IM服務(wù)器的通道,發(fā)給IM服務(wù)器。IM服務(wù)器驗證所述ID及密碼是否有效,若有效,則IM用戶1登陸成功,否則登陸失敗,IM服務(wù)器向IM客戶端1發(fā)送提示IM用戶重新輸入ID及密碼的消息。步驟402, IM客戶端1接收到TAG搜索觸發(fā)后,向IM服務(wù)器發(fā)送TAG 搜索協(xié)議命令。IM服務(wù)器判斷接收到的協(xié)議命令為TAG搜索協(xié)議命令后, 將該TAG搜索協(xié)議命令轉(zhuǎn)發(fā)給用戶信息管理服務(wù)器。TAG搜索協(xié)議命令中攜帶有TAG屬性,該TAG屬性由IM用戶登錄IM 客戶端,并觸發(fā)TAG搜索后,輸入該IM客戶端。步驟403,用戶信息管理服務(wù)器搜索具有TAG屬性的用戶ID列表。用戶信息管理服務(wù)器針對每一個TAG屬性都建立有用戶ID列表,記錄 了具有該TAG屬性的用戶ID。用戶信息管理服務(wù)器接收到TAG搜索協(xié)議命令后,搜索對應(yīng)所述TAG 搜索協(xié)議命令攜帶的TAG屬性,是否存在用戶ID列表,若存在,則獲取用 戶ID列表中的用戶ID。步驟404,搜索步驟403中獲取的用戶ID對應(yīng)的用戶信息。每一個用戶ID對應(yīng)的用戶信息,除了包括IM用戶昵稱、系統(tǒng)頭像等 屬性外,還含有該用戶ID已被設(shè)置過的TAG屬性及其設(shè)置次數(shù)。步驟405,用戶信息管理服務(wù)器向IM客戶端1直接下發(fā)攜帶有所述TAG 屬性及其次數(shù)的用戶信息。步驟406, IM客戶端1顯示接收到的用戶信息,用于IM用戶l從中選 擇好友添加對象。IM客戶端1接收到IM用戶1的好友添加觸發(fā)后,向IM 服務(wù)器發(fā)送添加好友的協(xié)議命令,接收IM服務(wù)器返回的好友添加回復(fù)。IM客戶端接收到的用戶信息通常為用戶信息列表的形式,這時,IM客戶端可以采用如下方式顯示用戶信息IM客戶端創(chuàng)建windows列表控件, 分別裝載用戶信息列表中的每個用戶對應(yīng)的系統(tǒng)頭像、昵稱以及對應(yīng)的tag 及其設(shè)置次數(shù),并可按照TAG的次數(shù)進行排序,這樣IM用戶可以根據(jù)該 tag屬性的設(shè)置次數(shù)確定該tag屬性的真實度,從而選擇性地添加好友。 IM服務(wù)器對添加好友的協(xié)議命令的處理為現(xiàn)有技術(shù),此處不再贅述。 經(jīng)過步驟401~406,在支持TAG搜索的IM系統(tǒng)中,IM用戶可以TAG 為搜索條件,搜索到具有所述TAG屬性的IM用戶。由于TAG屬性能夠較 真實地反映IM用戶的興趣、愛好、性格等特征,因此,通過TAG搜索方 法,可以搜索到反映自身真實情況的IM用戶。步驟401~406以IM系統(tǒng)中已經(jīng)設(shè)置了 TAG屬性為前提,提供了實現(xiàn) TAG搜索的方法,下面的步驟407-413,提供了在IM系統(tǒng)中,為IM用戶 設(shè)置TAG屬性的方法。下面以IM用戶1成功登陸IM客戶端1為例,介紹步驟407~413 。 步驟407, IM用戶1選定設(shè)置TAG屬性的目標(biāo)用戶后,即可觸發(fā)TAG 屬性設(shè)置,則IM客戶端1向IM服務(wù)器發(fā)送獲取推薦TAG列表的協(xié)議命令。 步驟408, IM服務(wù)器判斷接收到的命令為獲取推薦TAG列表的協(xié)議命 令后,將該命令轉(zhuǎn)發(fā)給用戶信息管理服務(wù)器。步驟409,用戶信息管理服務(wù)器向IM客戶端l返回推薦的TAG列表。 通常,該推薦的TAG列表為用戶信息管理服務(wù)器中記錄的熱門TAG。 用戶信息管理服務(wù)器每設(shè)置一次TAG屬性,都將記錄該TAG (若已記錄, 則只需將該TAG的設(shè)置次數(shù)加1即可),及其在該用戶信息管理服務(wù)器中 的設(shè)置次數(shù),通常將設(shè)置次數(shù)最多的前N ( N為自然數(shù))個TAG記錄為熱 門TAG。步驟410, IM客戶端l獲取IM用戶1已設(shè)置的TAG屬性。 IM客戶端中設(shè)置TAG屬性管理模塊,用于記錄每一個IM用戶設(shè)置過 的TAG屬性,可通過建立IM用戶ID與其設(shè)置過的TAG屬性的對應(yīng)列表 這一方法進行記錄,這樣,IM客戶端通過查詢該對應(yīng)列表,即可獲得IM用戶已設(shè)置的TAG屬性。IM客戶端1將IM服務(wù)器返回的推薦TAG列表、IM用戶1已設(shè)置的 TAG屬性顯示給IM用戶1,供IM用戶1從中選擇為步驟407中的目標(biāo)用 戶設(shè)置的TAG屬性。IM客戶端1也可提供手動輸入TAG屬性的界面。IM客戶端1接收到設(shè)置TAG屬性的確認(rèn)操作后,即可向IM服務(wù)器發(fā) 送TAG屬性設(shè)置命令。TAG屬性設(shè)置命令中攜帶有目標(biāo)用戶的ID及IM用戶1確認(rèn)的TAG屬性。步驟411,此步驟為可選步驟。IM用戶1可在執(zhí)行完步驟410后,觸 發(fā)好友推薦,選擇欲將步驟407中的目標(biāo)用戶推薦給哪個IM用戶(記為IM 用戶2)。步驟412, IM服務(wù)器判斷接收到的命令為TAG屬性設(shè)置命令后,將該 命令轉(zhuǎn)發(fā)給用戶信息管理服務(wù)器。步驟413,用戶信息管理服務(wù)器根據(jù)TAG屬性設(shè)置命令設(shè)置TAG屬性, 具體方法請參見圖2相關(guān)說明。若用戶信息管理服務(wù)器確認(rèn)IM用戶1與所述目標(biāo)用戶為好友關(guān)系、或 IM用戶1即為所述目標(biāo)用戶,則在設(shè)置完TAG屬性后,向IM客戶端l返 回TAG設(shè)置成功的消息,否則,向IM客戶端1返回?zé)o權(quán)設(shè)置TAG的提示。步驟407 413,提供了在IM系統(tǒng)中,為IM用戶設(shè)置TAG屬性的方法。 由步驟407 413可知,IM用戶可為其自身或其好友設(shè)置TAG屬性。IM用戶可通過在用戶資料中設(shè)置TAG屬性等多種方式觸發(fā)自身的 TAG屬性設(shè)置。IM客戶端接收到IM用戶自身的TAG屬性設(shè)置觸發(fā)后,將 該IM用戶的ID作為目標(biāo)用戶的ID,攜帶在TAG屬性設(shè)置協(xié)議命令中發(fā)給 IM服務(wù)器。若IM用戶l執(zhí)行了步驟411,則通過再執(zhí)行步驟414-418,還可實現(xiàn) IM用戶1將其好友1 (以所述目標(biāo)用戶為例)推薦給好友2 (記為IM用戶 2)。下面對步驟414~418進行詳細介紹步驟414, IM客戶端1接收到TAG設(shè)置成功的消息后,向IM服務(wù)器 發(fā)送好友推薦的協(xié)議命令。該好友推薦協(xié)議命令中攜帶有IM用戶1的ID、目標(biāo)用戶的ID及TAG 屬性、IM用戶2的ID。步驟415, IM服務(wù)器判斷接收到的命令為好友推薦命令后,將該命令 轉(zhuǎn)發(fā)給用戶信息管理服務(wù)器。步驟416, IM服務(wù)器得知IM用戶2成功登陸IM客戶端(記為IM客 戶端2)后,向IM客戶端2發(fā)送好友推薦通知。所述好友推薦通知中攜帶有IM用戶1的ID、目標(biāo)用戶的ID及TAG屬性。IM客戶端2接收到好友推薦通知后,既可根據(jù)IM用戶2的觸發(fā),也可 根據(jù)IM客戶端2的設(shè)定,向IM服務(wù)器發(fā)送好友推薦的回復(fù)消息。步驟417,若IM服務(wù)器接收到的好友推薦回復(fù)消息為失敗消息,則向 IM用戶1發(fā)送好友推薦失敗消息,若IM服務(wù)器接收到的好友推薦回復(fù)消息 為接受消息,則向用戶信息管理服務(wù)器轉(zhuǎn)發(fā)好友推薦接受消息。該好友推薦接受消息中攜帶有IM用戶2的ID和目標(biāo)用戶的ID。步驟418,用戶信息管理服務(wù)器接收到好友推薦接受消息后,建立IM 用戶2與目標(biāo)用戶之間的好友關(guān)系。好友關(guān)系建立完成后,用戶信息管理服務(wù)器向IM用戶l發(fā)送好友推薦 成功的通知。通過執(zhí)行步驟411以及414~418,可實現(xiàn)IM用戶間的好友推薦功能, 且好友推薦的消息中攜帶有好友推薦對象的TAG屬性時,可以使接收好友 推薦的用戶對好友推薦對象的真實情況有更清晰的了解,從而有效擴大IM用戶的溝通面。實際應(yīng)用中,好友推薦功能并非必須在TAG屬性設(shè)置完成后馬上進行。 IM用戶可在其好友列表中選擇好友推薦對象、以及接收好友推薦的用戶, 確認(rèn)上述選擇后,觸發(fā)好友推薦,IM客戶端即可向IM服務(wù)器發(fā)送好友推薦命令。以上為本發(fā)明的方法實施例,下面給出支持以TAG為搜索條件搜索IM 用戶的系統(tǒng)及裝置實施例。圖5為本發(fā)明系統(tǒng)實施例提供的支持以TAG為搜索條件搜索IM用戶 的IM系統(tǒng)結(jié)構(gòu)圖,如圖5所示,該系統(tǒng)包括IM服務(wù)器501和IM客戶端502。IM服務(wù)器501用于,接收到IM客戶端502發(fā)來的攜帶有TAG屬性和目 標(biāo)用戶ID的TAG屬性設(shè)置協(xié)議命令后,若確定發(fā)送所述協(xié)議命令的用戶與所 述目標(biāo)用戶為好友關(guān)系,則在具有所述TAG屬性的用戶ID列表中記錄所述目 標(biāo)用戶的ID,在所述目標(biāo)用戶的用戶信息中記錄所述TAG屬性;接收到攜帶 有TAG屬性的搜索協(xié)議命令后,若搜索到該TAG屬性已記錄,則確定具有所 述TAG屬性的用戶,將已確定用戶的信息發(fā)給IM客戶端502。IM客戶端502用于,向IM服務(wù)器501發(fā)送攜帶有TAG屬性和目標(biāo)用戶 ID的TAG屬性設(shè)置協(xié)議命令,向IM服務(wù)器501發(fā)送攜帶有TAG屬性的搜索 協(xié)議命令,接收IM服務(wù)器501根據(jù)所述搜索協(xié)議命令返回的用戶信息。圖6為本發(fā)明裝置實施例提供的IM服務(wù)器結(jié)構(gòu)圖,如圖6所示,該IM 服務(wù)器包括TAG屬性設(shè)置單元601和用戶搜索單元602。TAG屬性設(shè)置單元601用于,接收到IM客戶端發(fā)來的攜帶有TAG屬性和 目標(biāo)用戶ID的TAG屬性設(shè)置協(xié)議命令后,若確定發(fā)送所述協(xié)議命令的用戶為 所述目標(biāo)用戶、或與所述目標(biāo)用戶為好友關(guān)系,則在具有所述TAG屬性的用戶 ID列表中記錄所述目標(biāo)用戶的ID,在所述目標(biāo)用戶的用戶信息中記錄所述TAG 屬性。用戶搜索單元602用于,接收到攜帶有TAG屬性的搜索協(xié)議命令后,若在 所述TAG屬性設(shè)置單元中搜索到該TAG屬性已記錄,則確定具有所述TAG 屬性的用戶,將已確定用戶的信息發(fā)給IM客戶端。所述IM服務(wù)器還可進一步包括推薦TAG列表獲取單元。 所述推薦TAG列表獲取單元用于,接收到獲取推薦TAG列表的協(xié)議命令 后,返回滿足預(yù)定條件的TAG。TAG屬性設(shè)置單元601進一步用于,記錄TAG的設(shè)置情況。 所述IM服務(wù)器還可進一步包括好友推薦單元。所述好友推薦單元用于,接收攜帶有好友推薦對象的用戶ID及TAG屬性、 接收好友推薦的用戶ID的好友推薦協(xié)議命令,確定所述接收好友推薦的用戶登 錄成功后,將觸發(fā)好友推薦的用戶ID、所述好友推薦對象的用戶ID及所述TAG 屬性發(fā)給所述接收好友推薦的用戶登錄的IM客戶端,接收到推薦接受消息后, 建立所述好友推薦對象和所述接收好友推薦的用戶的好友關(guān)系。圖7為本發(fā)明裝置實施例提供的IM客戶端結(jié)構(gòu)圖,如圖7所示,所述 IM客戶端包括TAG屬性輸入單元701 、 TAG屬性設(shè)置單元702和用戶搜索單 元703。TAG屬性輸入單元701用于,若接收到TAG選定觸發(fā)及TAG屬性設(shè)置單 元702發(fā)來的設(shè)置指示,則向TAG屬性設(shè)置單元702發(fā)送確定指示,若接收到 TAG選定觸發(fā)及用戶搜索單元703發(fā)來的搜索指示,則向用戶搜索單元703發(fā) 送確定指示。TAG屬性設(shè)置單元702用于,向TAG屬性輸入單元701發(fā)送設(shè)置指示, 接收到TAG屬性輸入單元701發(fā)來的確定指示后,向IM服務(wù)器發(fā)送攜帶有 TAG屬性和目標(biāo)用戶ID的TAG屬性設(shè)置協(xié)議命令。用戶搜索單元703用于,向TAG屬性輸入單元701發(fā)送搜索指示,接收到 TAG屬性輸入單元701發(fā)來的確定指示后,向IM服務(wù)器發(fā)送攜帶有TAG屬性 的搜索協(xié)議命令。TAG屬性輸入單元701可包括推薦TAG列表獲取模塊、已設(shè)置TAG管理 模塊和TAG錄入模塊。所述推薦TAG列表獲取模塊用于,向IM服務(wù)器發(fā)送獲取推薦TAG列表 的協(xié)議命令,接收IM服務(wù)器返回的推薦TAG列表,接收到TAG選定觸發(fā)后, 向TAG屬性設(shè)置單元702發(fā)送確定指示。所述已設(shè)置TAG管理模塊用于,存儲每一 IM用戶已設(shè)置的TAG,輸出發(fā) 送所述TAG屬性設(shè)置協(xié)議命令的IM用戶已設(shè)置的TAG,接收到TAG選定觸發(fā)后,向TAG屬性設(shè)置單元702發(fā)送確定指示。所述TAG錄入模塊用于,接收到錄入的TAG及TAG選定觸發(fā)后,向TAG 設(shè)置單元702發(fā)送確定指示。所述IM客戶端還可進一步包括好友推薦單元。所述好友推薦單元用于,向IM服務(wù)器發(fā)送攜帶有好友推薦對象的用戶ID 及TAG屬性、接收好友推薦的用戶ID的好友推薦協(xié)議命令,接收到攜帶有觸 發(fā)好友推薦的用戶ID、好友推薦對象的用戶ID及TAG屬性的好友推薦通知后, 向IM服務(wù)器回復(fù)推薦接受消息或推薦拒絕消息。由上述方案可見,本發(fā)明實施例所提供的技術(shù)方案,由于在IM用戶的屬性 中增加了由其自身或其好友設(shè)置的TAG屬性,因此,可通過該TAG屬性對IM用 戶的真實情況進行描述。在設(shè)置了TAG屬性的IM系統(tǒng)中,若以TAG屬性為搜索條件,則可以搜索到 具有所述TAG屬性的IM用戶,從而搜索到反映自身真實情況的1M用戶。若搜索到的IM用戶信息中攜帶有TAG的設(shè)置次數(shù),則可通過該TAG設(shè)置次 數(shù)反映TAG屬性的真實度。若在IM系統(tǒng)中進行好友推薦,則可以進一步擴大IM用戶的溝通面。以上所述,僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護 范圍,凡在本發(fā)明的精神和原則之內(nèi)所做的任何修改、等同替換、改進等, 均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1、一種即時通訊中的用戶搜索方法,其特征在于,該方法包括步驟即時通訊IM服務(wù)器接收到攜帶有標(biāo)簽TAG屬性和目標(biāo)用戶身份標(biāo)識ID的TAG屬性設(shè)置協(xié)議命令后,若確定發(fā)送所述協(xié)議命令的用戶為所述目標(biāo)用戶或與所述目標(biāo)用戶為好友關(guān)系,則在具有所述TAG屬性的用戶ID列表中記錄所述目標(biāo)用戶的ID,在所述目標(biāo)用戶的用戶信息中記錄所述TAG屬性;IM服務(wù)器接收到攜帶有TAG屬性的搜索協(xié)議命令后,若搜索到該TAG屬性已記錄,則確定具有所述TAG屬性的用戶,將已確定的用戶信息發(fā)給發(fā)送所述搜索協(xié)議命令的IM客戶端。
2、 如權(quán)利要求l所述的方法,其特征在于,在具有所述TAG屬性的用戶 ID列表中記錄所述目標(biāo)用戶的ID包括搜索是否存在具有所述TAG屬性的用戶ID列表,若不存在,則創(chuàng)建具有 所述TAG屬性的用戶ID列表,并初始化為所述目標(biāo)用戶的ID;若存在,則搜索具有所述TAG屬性的用戶ID列表中是否存在所述目標(biāo)用 戶的ID,若不存在,則添加所述目標(biāo)用戶ID;確定具有所述TAG屬性的用戶包括將具有所述TAG屬性的用戶ID列表中的用戶作為已確定用戶。
3、 如權(quán)利要求l所述的方法,其特征在于,在所述目標(biāo)用戶的用戶信息中 記錄所述TAG屬性包括搜索具有所述TAG屬性的用戶ID列表中是否包含所述目標(biāo)用戶的ID,若 未包含,則在所述目標(biāo)用戶的信息中添加所述TAG屬性,并設(shè)置TAG屬性次 數(shù)為l,若已包含,則將所述目標(biāo)用戶的信息中的TAG屬性次數(shù)加1。
4、 如權(quán)利要求3所述的方法,其特征在于,所述已確定用戶的信息攜帶有所述已確定用戶的TAG屬性及其次數(shù); 將已確定用戶的信息發(fā)給發(fā)送所述搜索協(xié)議命令的IM客戶端之后進一步 包括IM客戶端顯示所述已確定用戶的信息,接收到好友添加觸發(fā)后,向IM服 務(wù)器發(fā)送好友添加請求。
5、 如權(quán)利要求l所述的方法,其特征在于,IM服務(wù)器接收到攜帶有TAG 屬性和目標(biāo)用戶ID的TAG屬性設(shè)置協(xié)議命令之前進一步包括IM客戶端向IM服務(wù)器發(fā)送獲取推薦TAG列表的協(xié)議命令,輸出觸發(fā)TAG 屬性設(shè)置的用戶已設(shè)置的TAG屬性、IM服務(wù)器根據(jù)所述獲取推薦TAG列表的 協(xié)議命令返回的TAG列表,用于用戶從中選擇欲設(shè)置的TAG屬性。
6、 如權(quán)利要求l所述的方法,其特征在于,該方法進一步包括步驟IM客戶端接收到好友推薦觸發(fā)后,將攜帶有好友推薦對象的用戶ID及 TAG屬性、接收好友推薦的用戶ID的好友推薦協(xié)議命令,發(fā)給IM服務(wù)器;IM服務(wù)器確定所述接收好友推薦的用戶登錄成功后,將觸發(fā)好友推薦的用 戶ID、所述好友推薦對象的用戶ID及TAG屬性發(fā)給所述接收好友推薦的用戶 登錄的IM客戶端,接收到所述IM客戶端發(fā)來的推薦接受消息后,建立所述好 友推薦對象和所述接收好友推薦的用戶的好友關(guān)系。
7、 一種即時通訊中的用戶搜索系統(tǒng),其特征在于,該系統(tǒng)包括IM服務(wù)器 和IM客戶端;所述IM服務(wù)器用于,接收到IM客戶端發(fā)來的攜帶有TAG屬性和目標(biāo)用 戶ID的TAG屬性設(shè)置協(xié)議命令后,若確定發(fā)送所述協(xié)議命令的用戶為所述目 標(biāo)用戶、或與所述目標(biāo)用戶為好友關(guān)系,則在具有所述TAG屬性的用戶ID列 表中記錄所述目標(biāo)用戶的ID,在所述目標(biāo)用戶的用戶信息中記錄所述TAG屬 性;接收到攜帶有TAG屬性的搜索協(xié)議命令后,若搜索到該TAG屬性已記錄, 則確定具有所述TAG屬性的用戶,將已確定用戶的信息發(fā)給IM客戶端;所述IM客戶端用于,向IM服務(wù)器發(fā)送攜帶有TAG屬性和目標(biāo)用戶ID的 TAG屬性設(shè)置協(xié)議命令,向IM服務(wù)器發(fā)送攜帶有TAG屬性的搜索協(xié)議命令, 接收IM服務(wù)器根據(jù)所述搜索協(xié)議命令返回的用戶信息。
8、 一種即時通訊中的服務(wù)器,其特征在于,該服務(wù)器包括TAG屬性設(shè)置 單元和用戶搜索單元;所述TAG屬性設(shè)置單元用于,接收到IM客戶端發(fā)來的攜帶有TAG屬性 和目標(biāo)用戶ID的TAG屬性設(shè)置協(xié)議命令后,若確定發(fā)送所述協(xié)議命令的用戶 為所述目標(biāo)用戶、或與所述目標(biāo)用戶為好友關(guān)系,則在具有所述TAG屬性的用 戶ID列表中記錄所述目標(biāo)用戶的ID,在所述目標(biāo)用戶的用戶信息中記錄所述 TAG屬性;所述用戶搜索單元用于,接收到攜帶有TAG屬性的搜索協(xié)議命令后,若在 所述TAG屬性設(shè)置單元中搜索到該TAG屬性已記錄,則確定具有所述TAG 屬性的用戶,將已確定用戶的信息發(fā)給IM客戶端。
9、 如權(quán)利要求8所述的服務(wù)器,其特征在于,所述服務(wù)器進一步包括推薦 TAG列表獲取單元;所述推薦TAG列表獲取單元用于,接收到獲取推薦TAG列表的協(xié)議命令 后,返回滿足預(yù)定條件的TAG;所述TAG屬性設(shè)置單元進一步用于,記錄TAG的設(shè)置情況。
10、 如權(quán)利要求8所述的服務(wù)器,其特征在于,所述服務(wù)器進一步包括好 友推薦單元;所述好友推薦單元用于,接收攜帶有好友推薦對象的用戶ID及TAG屬性、 接收好友推薦的用戶ID的好友推薦協(xié)議命令,確定所述接收好友推薦的用戶登 錄成功后,將觸發(fā)好友推薦的用戶ID、所述好友推薦對象的用戶ID及所述TAG 屬性發(fā)給所述接收好友推薦的用戶登錄的IM客戶端,接收到推薦接受消息后, 建立所述好友推薦對象和所述接收好友推薦的用戶的好友關(guān)系。
11、 一種即時通訊中的客戶端,其特征在于,所迷客戶端包括TAG屬性輸 入單元、TAG屬性設(shè)置單元和用戶搜索單元;所述TAG屬性輸入單元用于,若接收到TAG選定觸發(fā)及TAG屬性設(shè)置 單元發(fā)來的設(shè)置指示,則向TAG屬性設(shè)置單元發(fā)送確定指示,若接收到TAG 選定觸發(fā)及用戶搜索單元發(fā)來的搜索指示,則向用戶搜索單元發(fā)送確定指示;所述TAG屬性設(shè)置單元用于,向TAG屬性輸入單元發(fā)送設(shè)置指示,接收 到TAG屬性輸入單元發(fā)來的確定指示后,向IM服務(wù)器發(fā)送攜帶有TAG屬性和目標(biāo)用戶ID的TAG屬性設(shè)置協(xié)議命令;所述用戶搜索單元用于,向TAG屬性輸入單元發(fā)送搜索指示,接收到TAG 屬性輸入單元發(fā)來的確定指示后,向IM服務(wù)器發(fā)送攜帶有TAG屬性的搜索協(xié) 議命令。
12、 如權(quán)利要求11所述的客戶端,其特征在于,所述TAG屬性輸入單元 包括推薦TAG列表獲取模塊、已設(shè)置TAG管理模塊和TAG錄入模塊;所述推薦TAG列表獲取模塊用于,向IM服務(wù)器發(fā)送獲取推薦TAG列表 的協(xié)議命令,接收IM服務(wù)器返回的推薦TAG列表,接收到TAG設(shè)置選定觸 發(fā)后,向TAG屬性設(shè)置單元發(fā)送確定指示;所述已設(shè)置TAG管理模塊用于,存儲每一IM用戶已設(shè)置的TAG,輸出發(fā) 送所述TAG屬性設(shè)置協(xié)議命令的IM用戶已設(shè)置的TAG,接收到TAG設(shè)置選 定觸發(fā)后,向TAG屬性設(shè)置單元發(fā)送確定指示;所述TAG輸入模塊用于,接收到錄入的TAG及TAG選定觸發(fā)后,向TAG 屬性設(shè)置單元發(fā)送確定指示。
13、 如權(quán)利要求11所述的客戶端,其特征在于,所述客戶端進一步包括好 友推薦單元;所述好友推薦單元用于,向IM服務(wù)器發(fā)送攜帶有好友推薦對象的用戶ID 及TAG屬性、接收好友推薦的用戶ID的好友推薦協(xié)議命令,接收到攜帶有觸 發(fā)好友推薦的用戶ID、好友推薦對象的用戶ID及TAG屬性的好友推薦通知后, 向IM服務(wù)器回復(fù)推薦接受消息或推薦拒絕消息。
全文摘要
本發(fā)明實施例公開了一種即時通訊IM用戶搜索方法,包括IM服務(wù)器接收到攜帶有標(biāo)簽TAG屬性和目標(biāo)用戶身份標(biāo)識ID的TAG屬性設(shè)置協(xié)議命令后,若確定發(fā)送所述協(xié)議命令的用戶為所述目標(biāo)用戶、或與所述目標(biāo)用戶為好友關(guān)系,則在具有所述TAG屬性的用戶ID列表中記錄所述目標(biāo)用戶的ID,在所述目標(biāo)用戶的用戶信息中記錄所述TAG屬性;IM服務(wù)器接收到攜帶有TAG屬性的搜索協(xié)議命令后,若搜索到該TAG屬性已記錄,則確定具有所述TAG屬性的用戶,將已確定用戶的信息發(fā)給發(fā)送所述搜索協(xié)議命令的IM客戶端。本發(fā)明還公開了一種支持TAG搜索的IM系統(tǒng)、服務(wù)器和客戶端,應(yīng)用本發(fā)明實施例可搜索到反映自身真實情況的IM用戶。
文檔編號H04L29/06GK101247368SQ20081008970
公開日2008年8月20日 申請日期2008年3月26日 優(yōu)先權(quán)日2008年3月26日
發(fā)明者戴永裕, 斌 李 申請人:騰訊科技(深圳)有限公司