專利名稱:一種通訊系統(tǒng)中獲取信息的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通訊系統(tǒng)中的信息獲取技術(shù),尤其涉及一種從即時(shí)消息和存在業(yè)務(wù)(IMPS,Instant Messaging and Presence Service)服務(wù)器獲取列表信息及其列表詳細(xì)信息的方法。
背景技術(shù):
在無(wú)線通訊系統(tǒng)執(zhí)行的業(yè)務(wù)中,IMPS屬于一種消息類移動(dòng)數(shù)據(jù)業(yè)務(wù),由國(guó)際標(biāo)準(zhǔn)組織開(kāi)放移動(dòng)聯(lián)盟(OMA,Open Mobile Alliance)的IMPS工作組研究和提供應(yīng)用框架和規(guī)范。
當(dāng)前,IMPS中客戶端從IMPS服務(wù)器獲取信息的方法主要采用OMA提出的無(wú)線村莊(WV,Wireless Village)標(biāo)準(zhǔn)交互協(xié)議,客戶端從IMPS服務(wù)器獲取的信息可以是聯(lián)系列表信息或者群組信息。圖1為WV協(xié)議所述客戶端從IMPS服務(wù)器獲取聯(lián)系列表信息的標(biāo)準(zhǔn)消息流程圖,客戶端和IMPS服務(wù)器(IMPSServer)之間通過(guò)標(biāo)準(zhǔn)的WV協(xié)議信令接口通訊,其中包括首先,客戶端向IMPS服務(wù)器發(fā)送獲取聯(lián)系列表信息的請(qǐng)求消息(GetListReq);IMPS服務(wù)器收到GetListReq后,通過(guò)聯(lián)系列表信息的響應(yīng)消息(GetListRes)返回聯(lián)系列表信息。其次,客戶端向IMPS服務(wù)器請(qǐng)求獲取聯(lián)系列表信息中每一個(gè)聯(lián)系列表成員的詳細(xì)信息,即針對(duì)每一個(gè)聯(lián)系列表成員都向IMPS服務(wù)器發(fā)送獲取聯(lián)系列表成員詳細(xì)信息的請(qǐng)求消息(ListManageReq);IMPS服務(wù)器收到后通過(guò)響應(yīng)消息(ListManageRes)向客戶端返回聯(lián)系列表成員的詳細(xì)信息。
上述WV協(xié)議中,對(duì)于客戶端而言,獲取到幾個(gè)聯(lián)系列表成員,就要向IMPS發(fā)送幾次ListManageRes以獲取每一個(gè)聯(lián)系列表成員的詳細(xì)信息。
圖2為WV協(xié)議所述客戶端從IMPS服務(wù)器獲取群組信息的標(biāo)準(zhǔn)消息流程圖。參見(jiàn)圖2,客戶端和IMPS服務(wù)器之間通過(guò)標(biāo)準(zhǔn)的WV協(xié)議信令接口通訊,IMPS服務(wù)器和組列表管理系統(tǒng)(GLMS)之間通過(guò)私有接口通訊。
首先,客戶端向IMPS服務(wù)器發(fā)送獲取群組列表信息的請(qǐng)求消息(GetGroupListReq);IMPS服務(wù)器收到GetGroupListReq后,通過(guò)獲取群組列表請(qǐng)求消息(Imps_GGR)向GLMS獲取群組列表信息,GLMS通過(guò)獲取群組列表響應(yīng)消息(imps_GGA)向客戶端返回群組列表信息,IMPS服務(wù)器再通過(guò)獲取群組列表信息的響應(yīng)消息(GetGroupListRes)返回群組列表信息。其次,客戶端向IMPS服務(wù)器請(qǐng)求獲取群組列表信息中每一個(gè)群組成員的詳細(xì)信息,即針對(duì)每一個(gè)群組成員都向IMPS服務(wù)器發(fā)送獲取組成員信息請(qǐng)求消息(GetGroupMembersreq)和獲取組屬性請(qǐng)求消息(GetGroupPropsReq);IMPS服務(wù)器在每收到針對(duì)一個(gè)群組成員的GetGroupMembersreq和GetGroupPropsReq后,分別通過(guò)組成員請(qǐng)求消息(Imps_GIMR)和組屬性請(qǐng)求消息(Imps_GIPR)向GLMS獲取組成員信息和組屬性信息,GLMS再通過(guò)組成員請(qǐng)求響應(yīng)消息(imps_GIMA)和組屬性請(qǐng)求響應(yīng)消息(imps_GIPA)向IMPS服務(wù)器返回群組成員的詳細(xì)信息,即組成員信息和組屬性信息;IMPS服務(wù)器再通過(guò)獲取組成員信息響應(yīng)消息(GetGroupMembersres)和獲取組屬性響應(yīng)消息(GetGroupPropsRes)向客戶端返回群組成員的詳細(xì)信息。
上述WV協(xié)議中,對(duì)于客戶端而言,需要多次發(fā)送GetGroupMembersReq和GetGroupPropsReq,客戶端獲取到幾個(gè)群組,就要送幾次。因此,為了提高用戶操作的響應(yīng)速度,減少傳輸時(shí)延,當(dāng)前針對(duì)IMPS的群組信息,目前出現(xiàn)了采用時(shí)間戳技術(shù)獲取群組信息的方法,所述的時(shí)間戳是一個(gè)用于記錄時(shí)間的時(shí)間標(biāo)記,一般精確到秒,該方法對(duì)IMPS服務(wù)器時(shí)間戳和客戶端時(shí)間戳分別進(jìn)行比較,決定客戶端當(dāng)前是否保存有最新的群組信息,從而決定IMPS服務(wù)器是否需要給客戶端返回獲得最新的群組信息。
圖3為現(xiàn)有技術(shù)中,客戶端通過(guò)在IMPS服務(wù)器側(cè)比較時(shí)間戳從IMPS服務(wù)器獲取群組信息的方法流程圖,該方法在IMPS服務(wù)器每當(dāng)創(chuàng)建新群組列表、或者更新群組列表信息時(shí),采用IMPS服務(wù)器時(shí)間戳記錄當(dāng)前創(chuàng)建或更新時(shí)間。
如圖3所示,當(dāng)客戶端從IMPS服務(wù)器獲取群組信息時(shí),其流程包括步驟31、當(dāng)客戶端要獲取群組信息時(shí),首先向IMPS服務(wù)器發(fā)送獲取群組列表信息的請(qǐng)求消息(GetGroupListReq)。
本步驟中,如果客戶端是第一次向IMPS服務(wù)器獲取群組信息,則GetGroupListReq不包括客戶端時(shí)間戳,或者客戶端時(shí)間戳沒(méi)有記錄時(shí)間,如果客戶端不是第一次向IMPS服務(wù)器獲取群組信息,則GetGroupListReq包括客戶端時(shí)間戳,且該客戶端時(shí)間戳的記錄時(shí)間為客戶端上次獲取信息的時(shí)間。
步驟32、IMPS服務(wù)器在收到GetGroupListReq后,判斷GetGroupListReq中是否包括客戶端時(shí)間戳,且該客戶端時(shí)間戳已記錄有時(shí)間,如果是,則執(zhí)行步驟33,否則,IMPS服務(wù)器向GLMS獲取群組列表信息和IMPS服務(wù)器時(shí)間戳,并通過(guò)群組列表信息的響應(yīng)消息(GetGroupListRes)向客戶端返回當(dāng)前最新的群組列表信息和服務(wù)器時(shí)間戳,執(zhí)行步驟34。
步驟33、IMPS服務(wù)器判斷所述客戶端時(shí)間戳的記錄時(shí)間是否早于IMPS服務(wù)器時(shí)間戳的記錄時(shí)間,如果是,則表明客戶端上次獲取信息后,IMPS服務(wù)器中的信息又已更新,IMPS服務(wù)器通過(guò)GetGroupListRes向客戶端返回當(dāng)前最新的群組列表信息和服務(wù)器時(shí)間戳;否則,IMPS服務(wù)器通過(guò)GetGroupListRes向客戶端返回一個(gè)簡(jiǎn)短消息,該消息表明群組列表信息未改變,執(zhí)行步驟35。
步驟34、當(dāng)客戶端收到GetGroupListRes,將客戶端時(shí)間戳的記錄時(shí)間更新為服務(wù)器時(shí)間戳的記錄時(shí)間,即標(biāo)識(shí)客戶端本次獲取信息的時(shí)間。
此時(shí),由于客戶端只知道群組列表信息是否改變,但是并不能確定群組列表中具體每一項(xiàng)群組成員的詳細(xì)信息是否更新過(guò),因此客戶端仍然要針對(duì)每一項(xiàng)群組成員發(fā)送一次消息,以獲取關(guān)于該群組列表中群組成員的詳細(xì)信息,有幾個(gè)列表成員就要發(fā)送幾次。因此繼續(xù)執(zhí)行下述步驟。
步驟35、客戶端向IMPS服務(wù)器請(qǐng)求獲取群組列表信息中每一個(gè)群組成員的詳細(xì)信息,即針對(duì)每一個(gè)群組成員都向IMPS服務(wù)器發(fā)送GetGroupMembersreq和GetGroupPropsReq,該GetGroupMembersreq和GetGroupPropsReq中包括客戶端時(shí)間戳。
步驟36、IMPS服務(wù)器在每收到針對(duì)一個(gè)群組成員的GetGroupMembersreq和GetGroupPropsReq后,從GLMS獲取IMPS服務(wù)器的時(shí)間戳,并判斷客戶端時(shí)間戳的記錄時(shí)間是否早于IMPS服務(wù)器時(shí)間戳的記錄時(shí)間,如果是,則表明客戶端上次獲取信息后,IMPS服務(wù)器的信息又已更新,IMPS服務(wù)器向GLMS獲取最新的群組成員詳細(xì)信息,并向客戶端返回對(duì)應(yīng)的最新群組成員的詳細(xì)信息;否則,向客戶端返回一個(gè)簡(jiǎn)短消息,該簡(jiǎn)短消息表明該群組成員信息未改變。
上述在服務(wù)器側(cè)比較時(shí)間戳的方法中,服務(wù)器只是在無(wú)需更新的情況下,通過(guò)返回簡(jiǎn)短消息減少了返回消息的內(nèi)容大小,可以在一定程度上降低傳輸時(shí)延。
但是,在群組列表信息更新相對(duì)于客戶端用戶的使用頻率來(lái)說(shuō)不是很頻繁的情形下,客戶端往往是已經(jīng)保存了當(dāng)前最新的群組信息,此時(shí)應(yīng)無(wú)需再向IMPS服務(wù)器發(fā)送請(qǐng)求消息,且由于不需要建立底層鏈路,因此消息個(gè)數(shù)的減少對(duì)于降低傳輸時(shí)延具有明顯的作用,上述現(xiàn)有技術(shù)所述的在服務(wù)器比較時(shí)間戳的方法對(duì)于WV協(xié)議所述的所有消息都要發(fā)送,發(fā)送消息的個(gè)數(shù)沒(méi)有減少,因此傳輸時(shí)延較長(zhǎng),造成用戶操作響應(yīng)速度較低,針對(duì)用戶的服務(wù)質(zhì)量不高。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的主要目的是提供一種通訊系統(tǒng)中獲取信息的方法,以降低信息傳輸時(shí)延,提高用戶操作的響應(yīng)速度。
一種通訊系統(tǒng)中獲取信息的方法,該方法在服務(wù)器側(cè)創(chuàng)建/更新列表信息時(shí),采用服務(wù)器時(shí)間戳記錄當(dāng)前創(chuàng)建/更新時(shí)間,該方法還包括A、客戶端向服務(wù)器發(fā)送獲取列表信息的請(qǐng)求;B、服務(wù)器收到來(lái)自客戶端的獲取列表信息的請(qǐng)求后,向客戶端返回當(dāng)前最新的列表信息和服務(wù)器時(shí)間戳;C、客戶端收到該最新的列表信息和服務(wù)器時(shí)間戳后,通過(guò)比較自身時(shí)間戳與服務(wù)器時(shí)間戳的記錄時(shí)間,判斷服務(wù)器側(cè)是否已創(chuàng)建/更新了列表信息,如果是,則執(zhí)行步驟D,否則,結(jié)束流程;D、客戶端將自身時(shí)間戳的記錄時(shí)間更新為服務(wù)器時(shí)間戳的記錄時(shí)間;并向服務(wù)器發(fā)送獲取最新列表信息中每一個(gè)列表成員詳細(xì)信息的消息;服務(wù)器收到該消息后,向客戶端返回對(duì)應(yīng)列表成員的詳細(xì)信息。
作為本發(fā)明的優(yōu)選方案,步驟C中,所述判斷服務(wù)器側(cè)是否已創(chuàng)建/更新了列表信息的方法為客戶端判斷自身時(shí)間戳的記錄時(shí)間是否早于服務(wù)器時(shí)間戳的記錄時(shí)間,如果是,則判定服務(wù)器側(cè)已創(chuàng)建/更新了列表信息;否則,判定服務(wù)器側(cè)沒(méi)有創(chuàng)建/更新列表信息。
作為本發(fā)明的優(yōu)選方案,步驟C中,所述判斷服務(wù)器側(cè)是否已創(chuàng)建/更新了列表信息的方法為客戶端判斷自身時(shí)間戳的記錄時(shí)間是否等于服務(wù)器時(shí)間戳的記錄時(shí)間,如果是,則判定服務(wù)器側(cè)沒(méi)有創(chuàng)建/更新列表信息;否則,判定服務(wù)器側(cè)已創(chuàng)建/更新了列表信息。
上述步驟C中,客戶端在比較自身時(shí)間戳與服務(wù)器時(shí)間戳的記錄時(shí)間之前,進(jìn)一步包括判斷自身是否存在已記錄時(shí)間的時(shí)間戳,如果是,則繼續(xù)執(zhí)行步驟C;否則,執(zhí)行步驟D。
作為本發(fā)明的優(yōu)選方案,步驟A中所述客戶端向服務(wù)器發(fā)送的獲取列表信息的請(qǐng)求中進(jìn)一步包括客戶端類型標(biāo)識(shí),用于標(biāo)識(shí)客戶端需要采用的流程;步驟B中,在服務(wù)器收到來(lái)自客戶端的獲取列表信息的請(qǐng)求后,進(jìn)一步包括服務(wù)器對(duì)客戶端類型標(biāo)識(shí)進(jìn)行判斷,如果標(biāo)識(shí)指示的是標(biāo)準(zhǔn)的WV協(xié)議流程,則執(zhí)行標(biāo)準(zhǔn)的WV協(xié)議信令流程,如果標(biāo)識(shí)指示的是比較時(shí)間戳方案,則進(jìn)入步驟B。
作為本發(fā)明的優(yōu)選方案,所述服務(wù)器時(shí)間戳和列表信息保存在服務(wù)器本機(jī)上,該時(shí)間戳的記錄時(shí)間采用該服務(wù)器的本機(jī)時(shí)間。
作為本發(fā)明的優(yōu)選方案,所述服務(wù)器時(shí)間戳和列表信息保存在服務(wù)器側(cè)與該服務(wù)器相連的管理設(shè)備上,例如組列表管理系統(tǒng)。服務(wù)器時(shí)間戳的記錄時(shí)間采用該管理設(shè)備的本機(jī)時(shí)間;并且,步驟B中,在服務(wù)器收到來(lái)自客戶端的獲取列表信息的請(qǐng)求后,進(jìn)一步包括所述服務(wù)器向與該服務(wù)器相連的管理設(shè)備發(fā)送獲取列表信息消息,該管理設(shè)備收到獲取列表信息消息后,將保存的服務(wù)器時(shí)間戳和列表信息返回給該服務(wù)器;步驟E中,在服務(wù)器收到來(lái)自客戶端的獲取最新列表信息中每一個(gè)列表成員詳細(xì)信息的消息后,進(jìn)一步包括所述服務(wù)器向與該服務(wù)器相連的管理設(shè)備發(fā)送獲取列表成員詳細(xì)信息的消息,該管理設(shè)備收到該獲取列表成員詳細(xì)信息的消息后,將列表成員的詳細(xì)信息返回給該服務(wù)器。
上述的服務(wù)器為即時(shí)消息和存在業(yè)務(wù)服務(wù)器。
上述的列表信息為聯(lián)系列表信息或者為群組信息。
相對(duì)于現(xiàn)有技術(shù),由于本發(fā)明所述的方法在客戶端通過(guò)比較時(shí)間戳使客戶端得知服務(wù)器中的信息是否更新,如果更新,則再發(fā)消息獲取信息;否則,不再發(fā)送消息。因此,本發(fā)明所述的方法減少了客戶端獲取信息時(shí)發(fā)送消息的個(gè)數(shù),降低了傳輸時(shí)延,加快用戶操作響應(yīng)速度,提高用戶的服務(wù)質(zhì)量。尤其是在列表信息更新相對(duì)于客戶端用戶的使用頻率來(lái)說(shuō)不是很頻繁的情形下,本發(fā)明的上述效果更為突出。另外,本發(fā)明還可以使服務(wù)器同時(shí)兼容標(biāo)準(zhǔn)的WV協(xié)議流程和在客戶端比較時(shí)間戳的方案流程,以在不同的情形下采用不同的方案,最大化地提高響應(yīng)速度,提高用戶的滿意度。
圖1為WV協(xié)議所述客戶端從IMPS服務(wù)器獲取聯(lián)系列表信息的標(biāo)準(zhǔn)消息流程圖;圖2為WV協(xié)議所述客戶端從IMPS服務(wù)器獲取群組信息的標(biāo)準(zhǔn)消息流程圖;圖3為現(xiàn)有技術(shù)所述客戶端通過(guò)在IMPS服務(wù)器比較時(shí)間戳從IMPS服務(wù)器獲取群組信息的方法流程圖;圖4為本發(fā)明第一實(shí)施例所述客戶端從IMPS服務(wù)器獲取群組信息時(shí),在客戶端側(cè)比較時(shí)間戳的方法流程圖;圖5為本發(fā)明第二實(shí)施例所述客戶端從IMPS服務(wù)器中獲取聯(lián)系列表信息時(shí),在客戶端側(cè)比較時(shí)間戳的方法流程圖。
具體實(shí)施例方式
下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明再作進(jìn)一步詳細(xì)的說(shuō)明。
本發(fā)明所述的方法可以適用于客戶端從服務(wù)器獲取的所有采用列表形式存儲(chǔ)的信息,包括群組信息和聯(lián)系列表信息,所述的服務(wù)器可以是存儲(chǔ)群組信息和聯(lián)系列表信息的IMPS服務(wù)器,也可是其他存儲(chǔ)列表信息且與IMPS服務(wù)器相連的管理設(shè)備,例如GLMS服務(wù)器。
下面以客戶端從IMPS服務(wù)器獲取群組信息為例說(shuō)明本發(fā)明所述客戶端從IMPS服務(wù)器獲取信息的方法。
圖4為本發(fā)明第一實(shí)施例所述客戶端從IMPS服務(wù)器獲取群組信息時(shí),在客戶端側(cè)比較時(shí)間戳的方法流程圖,本方法在GLMS每當(dāng)創(chuàng)建新群組列表、或者更新了群組列表信息時(shí),在GLMS上采用IMPS服務(wù)器時(shí)間戳記錄當(dāng)前創(chuàng)建或更新時(shí)間。
如圖4所示,當(dāng)客戶端從服務(wù)器中獲取信息時(shí),包括以下步驟
步驟41、客戶端向IMPS服務(wù)器發(fā)送獲取群組列表信息的請(qǐng)求消息(GetGroupListReq)。
與現(xiàn)有技術(shù)不同,本第一實(shí)施例所述的GetGroupListReq中不包括客戶端時(shí)間戳。
步驟42、IMPS服務(wù)器接收到GetGroupListReq,從GLMS中獲取群組列表信息和IMPS服務(wù)器時(shí)間戳,并通過(guò)群組列表信息的響應(yīng)消息(GetGroupListRes)向客戶端返回當(dāng)前最新的群組列表信息和IMPS服務(wù)器的時(shí)間戳。
步驟43、客戶端收到GetGroupListRes后,判斷自身是否有客戶端時(shí)間戳,且客戶端時(shí)間戳已記錄有時(shí)間,即判斷自身是否有非空的客戶端時(shí)間戳,如果是,則執(zhí)行步驟44;否則,執(zhí)行步驟45。
步驟44、客戶端判斷所述客戶端時(shí)間戳的記錄時(shí)間是否早于IMPS服務(wù)器時(shí)間戳的記錄時(shí)間,即客戶端上次獲取信息之后,GLMS是否又更新了信息,如果是,則客戶端判定群組信息已更新,執(zhí)行步驟45;否則,客戶端判定群組信息沒(méi)有變化,客戶端和IMPS服務(wù)器的群組信息達(dá)到同步,因此不需向IMPS服務(wù)器端發(fā)送GetGroupMembersreq和獲取組屬性請(qǐng)求消息(GetGroupPropsReq),即不需獲取群組成員的詳細(xì)信息,結(jié)束流程。
一般情況下,客戶端時(shí)間戳的記錄時(shí)間早于或者等于服務(wù)器時(shí)間戳的記錄時(shí)間,不會(huì)出現(xiàn)客戶端時(shí)間戳的記錄時(shí)間晚于服務(wù)器時(shí)間戳的記錄時(shí)間的情況。但是,如果系統(tǒng)發(fā)生異常錯(cuò)誤,例如GLMS的本機(jī)時(shí)間被調(diào)慢,則當(dāng)GLMS的列表信息更新后,客戶端時(shí)間戳的記錄時(shí)間有可能晚于服務(wù)器時(shí)間戳的記錄時(shí)間,此時(shí)如果依舊按照上述步驟44的判斷方式,則會(huì)出現(xiàn)錯(cuò)誤。因此,為了避免系統(tǒng)異常造成的錯(cuò)誤,本步驟44可以通過(guò)以下方式執(zhí)行客戶端判斷所述客戶端時(shí)間戳的記錄時(shí)間是否不等于IMPS服務(wù)器時(shí)間戳的記錄時(shí)間,如果是,則客戶端判定群組信息已更新,執(zhí)行步驟45;否則,客戶端判定群組信息沒(méi)有變化,結(jié)束流程。
步驟45、客戶端將自身時(shí)間戳的記錄時(shí)間更新為IMPS服務(wù)器時(shí)間戳的記錄時(shí)間,即標(biāo)識(shí)客戶端本次獲取信息的時(shí)間。
步驟46、客戶端向IMPS服務(wù)器請(qǐng)求獲取群組列表信息中每一個(gè)群組成員的詳細(xì)信息,即針對(duì)每一個(gè)群組成員都向IMPS服務(wù)器發(fā)送GetGroupMembersreq和GetGroupPropsReq。
步驟47、IMPS服務(wù)器在每收到針對(duì)一個(gè)群組成員的GetGroupMembersreq和GetGroupPropsReq后,從GLMS中獲取對(duì)應(yīng)的最新群組成員的詳細(xì)信息,并向客戶端返回對(duì)應(yīng)的最新群組成員的詳細(xì)信息。
上述第一實(shí)施例中,所述群組信息和IMPS服務(wù)器的時(shí)間戳都保存在GLMS上,IMPS服務(wù)器通過(guò)自身與GLMS間的私有接口獲取群組信息和IMPS服務(wù)器的時(shí)間戳,且所述IMPS服務(wù)器的時(shí)間戳的記錄時(shí)間為GLMS的本機(jī)時(shí)間。本發(fā)明也可將群組信息和IMPS服務(wù)器的時(shí)間戳存儲(chǔ)在其他與IMPS服務(wù)器相連的設(shè)備上,例如,如果是其他的列表信息,可以是該列表信息的管理系統(tǒng),IMPS服務(wù)器通過(guò)自身與該設(shè)備間的私有接口獲取群組信息和IMPS服務(wù)器的時(shí)間戳。
另外,對(duì)于某些列表信息,可能直接存儲(chǔ)在IMPS服務(wù)器上,不需GLMS的參與,例如聯(lián)系列表信息。因此本發(fā)明還可由IMPS服務(wù)器保存其自身時(shí)間戳,且所述IMPS服務(wù)器時(shí)間戳的記錄時(shí)間為IMPS服務(wù)器的本機(jī)時(shí)間。
下面第二實(shí)施例以客戶端從IMPS服務(wù)器獲取聯(lián)系列表信息為例說(shuō)明本發(fā)明所述客戶端從IMPS服務(wù)器獲取信息的方法。
本第二實(shí)施例和第一實(shí)施例的方法流程基本相同,只是本第二實(shí)施例中,聯(lián)系列表信息直接保存在IMPS服務(wù)器上,且每當(dāng)創(chuàng)建新的聯(lián)系列表、或者更新了聯(lián)系列表信息時(shí),由IMPS服務(wù)器更新其自身時(shí)間戳的記錄時(shí)間。
參見(jiàn)圖5,當(dāng)客戶端從IMPS服務(wù)器中獲取信息時(shí),本第二實(shí)施例包括步驟51、客戶端向IMPS服務(wù)器發(fā)送獲取聯(lián)系列表信息的請(qǐng)求消息(GetListReq);IMPS服務(wù)器接收到GetListReq。
步驟52、IMPS服務(wù)器通過(guò)聯(lián)系列表信息的響應(yīng)GetListRes向客戶端返回當(dāng)前最新的聯(lián)系列表信息和IMPS服務(wù)器時(shí)間戳。
步驟53、客戶端收到GetListRes后,判斷自身是否有非空的客戶端時(shí)間戳,如果是,則執(zhí)行步驟54;否則,執(zhí)行步驟55。
步驟54、客戶端判斷所述客戶端時(shí)間戳的記錄時(shí)間是否早于/不等于IMPS服務(wù)器時(shí)間戳的記錄時(shí)間,即客戶端上次獲取聯(lián)系列表信息之后,IMPS服務(wù)器是否又更新了聯(lián)系列表信息,如果是,則執(zhí)行步驟55;否則,客戶端判定聯(lián)系列表信息沒(méi)有變化,客戶端和IMPS服務(wù)器的聯(lián)系列表信息達(dá)到同步,因此不需向IMPS服務(wù)器端發(fā)送獲取聯(lián)系列表成員詳細(xì)信息的請(qǐng)求消息(ListManageReq),結(jié)束流程。
步驟55、客戶端記錄當(dāng)前時(shí)間,將該當(dāng)前時(shí)間作為客戶端當(dāng)前時(shí)間戳的取值,即標(biāo)識(shí)客戶端本次獲取信息的時(shí)間。
步驟56、客戶端向IMPS服務(wù)器請(qǐng)求獲取聯(lián)系列表信息中每一個(gè)聯(lián)系列表成員的詳細(xì)信息,即針對(duì)每一個(gè)聯(lián)系列表成員都向IMPS服務(wù)器發(fā)送ListManageReq。
步驟57、IMPS服務(wù)器在每收到針對(duì)一個(gè)聯(lián)系列表成員的ListManageReq后,向客戶端返回對(duì)應(yīng)的最新的聯(lián)系列表成員的詳細(xì)信息。
本發(fā)明在群組信息或者聯(lián)系列表信息更新不是很頻繁的情況下,優(yōu)點(diǎn)十分突出,因?yàn)榇藭r(shí)能夠有效地減少消息個(gè)數(shù),降低傳輸時(shí)延,提高響應(yīng)速度,并且通過(guò)減少消息個(gè)數(shù)降低傳輸時(shí)延的效果更加明顯。
本發(fā)明還可使IMPS服務(wù)器同時(shí)兼容現(xiàn)有技術(shù)的WV協(xié)議標(biāo)準(zhǔn)流程和本發(fā)明上述的方案,以在不同的情形下采用不同的方案,最大化地提高響應(yīng)速度,提高用戶的滿意度。
本發(fā)明根據(jù)客戶端的使用頻率為客戶端設(shè)置類型標(biāo)識(shí),分別用于標(biāo)識(shí)要求采用標(biāo)準(zhǔn)的WV協(xié)議流程的客戶端或是要求采用“比較時(shí)間戳方案”的客戶端,并在客戶端向IMPS服務(wù)器發(fā)送的獲取列表信息的請(qǐng)求中包括該類型標(biāo)識(shí)。本發(fā)明中,該類型標(biāo)識(shí)可以采用各種方式區(qū)分客戶端類型,例如可以通過(guò)客戶端標(biāo)識(shí)(clientID)中的統(tǒng)一資源管理地址(URL)來(lái)區(qū)分客戶端類型,如URL的值固定為“HWIMPSMC”,表示是要求采用“比較時(shí)間戳方案”的客戶端,否則表示要求采用標(biāo)準(zhǔn)的WV協(xié)議客戶端。
本發(fā)明還在上述步驟41之后、步驟42之前,以及步驟51之后、步驟52之前,進(jìn)一步包括IMPS服務(wù)器區(qū)分客戶端類型標(biāo)識(shí),如果是要求采用標(biāo)準(zhǔn)WV協(xié)議流程的客戶端,則執(zhí)行標(biāo)準(zhǔn)的WV協(xié)議信令流程,如果是要求采用比較時(shí)間戳方案的客戶端,則執(zhí)行步驟41或步驟51。
以上所述,僅為本發(fā)明較佳的具體實(shí)施方式
,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉該技術(shù)的人在本發(fā)明所揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種通訊系統(tǒng)中獲取信息的方法,該方法在服務(wù)器側(cè)創(chuàng)建/更新列表信息時(shí),采用服務(wù)器時(shí)間戳記錄當(dāng)前創(chuàng)建/更新時(shí)間,其特征在于,該方法還包括A、客戶端向服務(wù)器發(fā)送獲取列表信息的請(qǐng)求;B、服務(wù)器收到來(lái)自客戶端的獲取列表信息的請(qǐng)求后,向客戶端返回當(dāng)前最新的列表信息和服務(wù)器時(shí)間戳;C、客戶端收到該最新的列表信息和服務(wù)器時(shí)間戳后,通過(guò)比較自身時(shí)間戳與服務(wù)器時(shí)間戳的記錄時(shí)間,判斷服務(wù)器側(cè)是否已創(chuàng)建/更新了列表信息,如果是,則執(zhí)行步驟D,否則,結(jié)束流程;D、客戶端將自身時(shí)間戳的記錄時(shí)間更新為服務(wù)器時(shí)間戳的記錄時(shí)間;并向服務(wù)器發(fā)送獲取最新列表信息中每一個(gè)列表成員詳細(xì)信息的消息;服務(wù)器收到該消息后,向客戶端返回對(duì)應(yīng)列表成員的詳細(xì)信息。
2.如權(quán)利要求1所述的方法,其特征在于,步驟C中,所述判斷服務(wù)器側(cè)是否已創(chuàng)建/更新了列表信息的方法為客戶端判斷自身時(shí)間戳的記錄時(shí)間是否早于服務(wù)器時(shí)間戳的記錄時(shí)間,如果是,則判定服務(wù)器側(cè)已創(chuàng)建/更新了列表信息;否則,判定服務(wù)器側(cè)沒(méi)有創(chuàng)建/更新列表信息。
3.如權(quán)利要求1所述的方法,其特征在于,步驟C中,所述判斷服務(wù)器側(cè)是否已創(chuàng)建/更新了列表信息的方法為客戶端判斷自身時(shí)間戳的記錄時(shí)間是否等于服務(wù)器時(shí)間戳的記錄時(shí)間,如果是,則判定服務(wù)器側(cè)沒(méi)有創(chuàng)建/更新列表信息;否則,判定服務(wù)器側(cè)已創(chuàng)建/更新了列表信息。
4.如權(quán)利要求1、2或3所述的方法,其特征在于,步驟C中,客戶端在比較自身時(shí)間戳與服務(wù)器時(shí)間戳的記錄時(shí)間之前,進(jìn)一步包括判斷自身是否存在已記錄時(shí)間的時(shí)間戳,如果是,則繼續(xù)執(zhí)行步驟C;否則,執(zhí)行步驟D。
5.如權(quán)利要求1所述的方法,其特征在于,步驟A中所述客戶端向服務(wù)器發(fā)送的獲取列表信息的請(qǐng)求中進(jìn)一步包括客戶端類型標(biāo)識(shí),用于標(biāo)識(shí)客戶端需要采用的流程;步驟B中,在服務(wù)器收到來(lái)自客戶端的獲取列表信息的請(qǐng)求后,進(jìn)一步包括服務(wù)器對(duì)客戶端類型標(biāo)識(shí)進(jìn)行判斷,如果標(biāo)識(shí)指示的是標(biāo)準(zhǔn)的WV協(xié)議流程,則執(zhí)行標(biāo)準(zhǔn)的WV協(xié)議信令流程,如果標(biāo)識(shí)指示的是比較時(shí)間戳方案,則進(jìn)入步驟B。
6.如權(quán)利要求1所述的方法,其特征在于,所述服務(wù)器時(shí)間戳和列表信息保存在服務(wù)器本機(jī)上,該時(shí)間戳的記錄時(shí)間采用該服務(wù)器的本機(jī)時(shí)間。
7.如權(quán)利要求1所述的方法,其特征在于,所述服務(wù)器時(shí)間戳和列表信息保存在服務(wù)器側(cè)與該服務(wù)器相連的管理設(shè)備上,服務(wù)器時(shí)間戳的記錄時(shí)間采用該管理設(shè)備的本機(jī)時(shí)間;并且,步驟B中,在服務(wù)器收到來(lái)自客戶端的獲取列表信息的請(qǐng)求后,進(jìn)一步包括所述服務(wù)器向與該服務(wù)器相連的管理設(shè)備發(fā)送獲取列表信息消息,該管理設(shè)備收到獲取列表信息消息后,將保存的服務(wù)器時(shí)間戳和列表信息返回給該服務(wù)器;步驟E中,在服務(wù)器收到來(lái)自客戶端的獲取最新列表信息中每一個(gè)列表成員詳細(xì)信息的消息后,進(jìn)一步包括所述服務(wù)器向與該服務(wù)器相連的管理設(shè)備發(fā)送獲取列表成員詳細(xì)信息的消息,該管理設(shè)備收到該獲取列表成員詳細(xì)信息的消息后,將列表成員的詳細(xì)信息返回給該服務(wù)器。
8.如權(quán)利要求7所述的方法,其特征在于,所述在服務(wù)器側(cè),保存時(shí)間戳和列表信息的管理設(shè)備為組列表管理系統(tǒng)。
9.如權(quán)利要求1、2、3、5、6、7或8所述的方法,其特征在于,所述的服務(wù)器為即時(shí)消息和存在業(yè)務(wù)服務(wù)器。
10.如權(quán)利要求1、2、3、5或6所述的方法,其特征在于,所述的列表信息為聯(lián)系列表信息。
11.如權(quán)利要求1、2、3、5、7或8所述的方法,其特征在于,所述的列表信息為群組信息。
全文摘要
本發(fā)明公開(kāi)了一種通訊系統(tǒng)中獲取信息的方法,在服務(wù)器側(cè)創(chuàng)建/更新列表信息時(shí),采用服務(wù)器時(shí)間戳記錄當(dāng)前創(chuàng)建/更新時(shí)間,包括A.客戶端向服務(wù)器發(fā)送獲取列表信息的請(qǐng)求;B.服務(wù)器向客戶端返回當(dāng)前最新的列表信息和服務(wù)器時(shí)間戳;C..客戶端通過(guò)比較自身時(shí)間戳與服務(wù)器時(shí)間戳的記錄時(shí)間,判斷服務(wù)器側(cè)是否已創(chuàng)建/更新了列表信息,如果是,則執(zhí)行步驟D,否則,結(jié)束流程;D.客戶端將自身時(shí)間戳的記錄時(shí)間更新為服務(wù)器時(shí)間戳的記錄時(shí)間;并向服務(wù)器發(fā)送獲取最新列表信息中每一個(gè)列表成員詳細(xì)信息的消息;服務(wù)器收到該消息后,向客戶端返回對(duì)應(yīng)列表成員的詳細(xì)信息。本方法可以降低信息傳輸時(shí)延,提高用戶操作的響應(yīng)速度。
文檔編號(hào)H04L29/02GK1767520SQ20041008098
公開(kāi)日2006年5月3日 申請(qǐng)日期2004年10月26日 優(yōu)先權(quán)日2004年10月26日
發(fā)明者牟倫見(jiàn), 孫志斌, 任旭鳴, 王玨 申請(qǐng)人:華為技術(shù)有限公司