欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

多終端的實時通訊方法、裝置及系統(tǒng)與流程

文檔序號:12212598閱讀:323來源:國知局
多終端的實時通訊方法、裝置及系統(tǒng)與流程

本發(fā)明涉及互聯(lián)網(wǎng)領(lǐng)域,具體而言,涉及一種多終端的實時通訊方法、裝置及系統(tǒng)。



背景技術(shù):

如今,隨著互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,移動終端、計算機終端乃至顯示設(shè)備都可以方便的接入到互聯(lián)網(wǎng)中。與此同時,移動終端的處理性能也隨著發(fā)展變得日益強大起來,從而使各種游戲可以在移動終端上面流暢運行。

因此,為了提高游戲的游戲性,游戲方式從傳統(tǒng)較為單一的單機方式,逐漸發(fā)展出許多新的游戲方式,例如:網(wǎng)絡(luò)游戲、體感游戲等。

在本領(lǐng)域中,網(wǎng)絡(luò)游戲(也被稱為網(wǎng)游)是眾所周知的,網(wǎng)絡(luò)游戲可以分為客戶端游戲、頁面游戲以及手機客戶端游戲(即手游),其中,客戶端游戲是需要在計算機終端或移動終端安裝網(wǎng)絡(luò)游戲客戶端的可執(zhí)行文件之后,運行在客戶端的網(wǎng)絡(luò)游戲?,F(xiàn)有技術(shù)提供的游戲服務(wù)器為游戲用戶提供了一個游戲平臺,游戲用戶通過登錄網(wǎng)絡(luò)游戲客戶端啟動與網(wǎng)絡(luò)中的其他游戲用戶開始游戲活動。

其中,在網(wǎng)絡(luò)游戲中,有一種游戲的游戲方式為通過顯示終端(例如計算機終端等),引導(dǎo)多個使用移動終端進行游戲的玩家同時進入同一個虛擬游戲房間,并由顯示終端控制游戲的開始、結(jié)束,并對玩家的實時分數(shù)等信息進行顯示功能。

在實現(xiàn)上述游戲方式的過程中,存在移動終端、顯示終端和服務(wù)端三方大量的數(shù)據(jù)交互。如何以最低的資源消耗來實現(xiàn)上述三方數(shù)據(jù)的實時通訊,同時考慮移動終端相對較慢的網(wǎng)絡(luò)連接速度。對技術(shù)選用,游戲服務(wù) 器都有一定的要求。

在現(xiàn)有技術(shù)中,通常利用HTML5中的webSocket協(xié)議來解決上述三方數(shù)據(jù)通訊的。如圖1所示,在利用webSocket協(xié)議實現(xiàn)上述三方數(shù)據(jù)通訊的過程中,會在客戶端與服務(wù)器之間建立起一個雙通道的長連接,在客戶端與服務(wù)器之間的數(shù)據(jù)交互時,不需要再次發(fā)起HTTP Request請求,從而達到客戶端與服務(wù)器數(shù)據(jù)的實時通訊。

雖然,通過webSocket協(xié)議進行數(shù)據(jù)實時交互效率高,但卻存在如下的缺點:

在多終端與服務(wù)器進行連接時,服務(wù)器在同時需要維護多個長鏈接,導(dǎo)致服務(wù)器的處理負擔(dān)過重;

并且,移動互聯(lián)網(wǎng)的數(shù)據(jù)傳輸質(zhì)量受所處的環(huán)境影響較大,如果移動終端所處的移動端網(wǎng)絡(luò)環(huán)境較差時,以及通訊連接經(jīng)過多個路由進行中轉(zhuǎn)時,容易導(dǎo)致發(fā)送的數(shù)據(jù)包延遲或中斷,從而造成通訊中斷。

針對現(xiàn)有技術(shù)中因游戲服務(wù)器同時維護多個長連接導(dǎo)致服務(wù)器負載嚴重的問題,目前尚未提出有效的解決方案。



技術(shù)實現(xiàn)要素:

本發(fā)明實施例提供了一種多終端的實時通訊方法、裝置及系統(tǒng),以至少解決因游戲服務(wù)器同時維護多個長連接導(dǎo)致服務(wù)器負載嚴重的技術(shù)問題。

根據(jù)本發(fā)明實施例的一個方面,提供了一種多終端的實時通訊方法,包括:游戲服務(wù)器與第一游戲終端建立第一臨時通訊連接之后,接收第一游戲終端發(fā)送的游戲開啟請求;在游戲服務(wù)器根據(jù)游戲開啟請求創(chuàng)建游戲房間之后,將生成的游戲房間信息返回至第一游戲終端,并斷開第一臨時通訊連接;游戲服務(wù)器與第二游戲終端建立第二臨時通訊連接之后,接收第二游戲終端發(fā)送的進入游戲房間請求,其中,進入游戲房間請求由第二 游戲終端在通過獲取第一游戲終端中保存的游戲房間信息之后而生成;在游戲服務(wù)器根據(jù)第二游戲終端發(fā)送的進入游戲房間請求,允許第二游戲終端進入游戲房間之后,斷開第二臨時通信連接。

根據(jù)本發(fā)明實施例的另一方面,還提供了一種多終端的實時通訊裝置,包括:第一接收模塊,用于游戲服務(wù)器與第一游戲終端建立第一臨時通訊連接之后,接收第一游戲終端發(fā)送的游戲開啟請求;生成模塊,用于在游戲服務(wù)器根據(jù)游戲開啟請求創(chuàng)建游戲房間之后,將生成的游戲房間信息返回至第一游戲終端,并斷開第一臨時通訊連接;第二接收模塊,用于游戲服務(wù)器與第二游戲終端建立第二臨時通訊連接之后,接收第二游戲終端發(fā)送的進入游戲房間請求,其中,進入游戲房間請求由第二游戲終端在通過獲取第一游戲終端中保存的游戲房間信息之后而生成;認證模塊,用于在游戲服務(wù)器根據(jù)第二游戲終端發(fā)送的進入游戲房間請求,允許第二游戲終端進入游戲房間之后,斷開第二臨時通信連接。

根據(jù)本發(fā)明實施例的又一方面,還提供了一種多終端的實時通訊系統(tǒng),第一游戲終端,用于在與游戲服務(wù)器建立第一臨時通訊連接之后,向游戲服務(wù)器發(fā)送游戲開啟請求,并接收游戲服務(wù)器生成的游戲房間信息;第二游戲終端,在與游戲服務(wù)器建立第二臨時通訊連接之后,用于根據(jù)游戲房間信息向游戲房間發(fā)送游戲房間請求;游戲服務(wù)器,與第一游戲終端與第二游戲終分別端建立臨時通訊連接,用于接收游戲開啟請求,并在根據(jù)游戲開啟請求創(chuàng)建游戲房間之后,將生成的游戲房間信息返回至第一游戲終端,并斷開第一臨時通訊連接;游戲服務(wù)器還用于接收第二游戲終端發(fā)送的進入游戲房間請求,并在根據(jù)進入游戲房間請求允許第二游戲終端進入游戲房間之后,斷開第二臨時通信連接。

在本發(fā)明實施例中,采用游戲服務(wù)器與第一游戲終端建立第一臨時通訊連接之后,接收第一游戲終端發(fā)送的游戲開啟請求;在游戲服務(wù)器根據(jù)游戲開啟請求創(chuàng)建游戲房間之后,將生成的游戲房間信息返回至第一游戲終端,并斷開第一臨時通訊連接;游戲服務(wù)器與第二游戲終端建立第二臨 時通訊連接之后,接收第二游戲終端發(fā)送的進入游戲房間請求,其中,進入游戲房間請求由第二游戲終端在通過獲取第一游戲終端中保存的游戲房間信息之后而生成;在游戲服務(wù)器根據(jù)第二游戲終端發(fā)送的進入游戲房間請求,允許第二游戲終端進入游戲房間之后,斷開第二臨時通信連接的方式,通過第一接收模塊,用于游戲服務(wù)器與第一游戲終端建立第一臨時通訊連接之后,接收第一游戲終端發(fā)送的游戲開啟請求;生成模塊,用于在游戲服務(wù)器根據(jù)游戲開啟請求創(chuàng)建游戲房間之后,將生成的游戲房間信息返回至第一游戲終端,并斷開第一臨時通訊連接;第二接收模塊,用于游戲服務(wù)器與第二游戲終端建立第二臨時通訊連接之后,接收第二游戲終端發(fā)送的進入游戲房間請求,其中,進入游戲房間請求由第二游戲終端在通過獲取第一游戲終端中保存的游戲房間信息之后而生成;認證模塊,用于在游戲服務(wù)器根據(jù)第二游戲終端發(fā)送的進入游戲房間請求,允許第二游戲終端進入游戲房間之后,斷開第二臨時通信連接,達到了游戲服務(wù)器在不建立并維持多個雙通道長連接即可實現(xiàn)多終端實時通訊的目的,從而實現(xiàn)了降低服務(wù)器負載,節(jié)約處理資源和通訊資源的技術(shù)效果,進而解決了因游戲服務(wù)器同時維護多個長連接導(dǎo)致服務(wù)器負載嚴重的技術(shù)問題。

附圖說明

此處所說明的附圖用來提供對本發(fā)明的進一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中:

圖1是現(xiàn)有技術(shù)中用于實現(xiàn)數(shù)據(jù)交互的示意圖;

圖2是本申請實施例的一種多終端的實時通訊方法的計算機終端的硬件結(jié)構(gòu)框圖;

圖3是根據(jù)本發(fā)明實施例的一種多終端的實時通訊方法的流程示意圖;

圖4是根據(jù)本申請實施例的多終端的實時通訊方法在實際應(yīng)用中的流程示意圖;

圖5是根據(jù)本申請實施例的一種多終端的實時通訊裝置的結(jié)構(gòu)圖;

圖6是根據(jù)本申請實施例的一種可選的多終端的實時通訊裝置的結(jié)構(gòu)圖;

圖7是根據(jù)本申請實施例的一種可選的多終端的實時通訊裝置的結(jié)構(gòu)圖;

圖8是根據(jù)本申請實施例的一種可選的多終端的實時通訊裝置的結(jié)構(gòu)圖;

圖9是根據(jù)本申請實施例的一種可選的多終端的實時通訊裝置的結(jié)構(gòu)圖;

圖10是根據(jù)本申請實施例的一種可選的多終端的實時通訊裝置的結(jié)構(gòu)圖;

圖11是根據(jù)本申請實施例的一種可選的多終端的實時通訊裝置的結(jié)構(gòu)圖;以及

圖12是根據(jù)本申請實施例的一種多終端的實時通訊系統(tǒng)的結(jié)構(gòu)示意圖。

具體實施方式

為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分的實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都應(yīng)當(dāng)屬于本發(fā)明保護的范圍。

需要說明的是,本發(fā)明的說明書和權(quán)利要求書及上述附圖中的術(shù)語“第一”、“第二”等是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應(yīng)該理解這樣使用的數(shù)據(jù)在適當(dāng)情況下可以互換,以便這里描述的本發(fā)明的實施例能夠以除了在這里圖示或描述的那些以外的順序?qū)? 施。此外,術(shù)語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或?qū)τ谶@些過程、方法、產(chǎn)品或設(shè)備固有的其它步驟或單元。

實施例1

根據(jù)本申請實施例,提供了一種多終端的實時通訊方法,需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計算機可執(zhí)行指令的計算機系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。

本申請實施例一所提供的方法實施例可以在移動終端、計算機終端或者類似的運算裝置中執(zhí)行。以運行在移動終端上為例,圖2是本申請實施例的一種運行多終端的實時通訊方法的移動終端的硬件結(jié)構(gòu)框圖。如圖2所示,移動終端10可以包括一個或多個(圖中僅示出一個)處理器102(處理器102可以包括但不限于微處理器MCU或可編程邏輯器件FPGA等的處理裝置)、用于存儲數(shù)據(jù)的存儲器104、以及用于通信功能的傳輸裝置106。本領(lǐng)域普通技術(shù)人員可以理解,圖2所示的結(jié)構(gòu)僅為示意,其并不對上述電子裝置的結(jié)構(gòu)造成限定。例如,移動終端10還可包括比圖2中所示更多或者更少的組件,或者具有與圖2所示不同的配置。

存儲器104可用于存儲應(yīng)用軟件的軟件程序以及模塊,如本申請實施例中的多終端的實時通訊方法對應(yīng)的程序指令/模塊,處理器102通過運行存儲在存儲器104內(nèi)的軟件程序以及模塊,從而執(zhí)行各種功能應(yīng)用以及數(shù)據(jù)處理,即實現(xiàn)上述的多終端的實時通訊方法。存儲器104可包括高速隨機存儲器,還可包括非易失性存儲器,如一個或者多個磁性存儲裝置、閃存、或者其他非易失性固態(tài)存儲器。在一些實例中,存儲器104可進一步包括相對于處理器102遠程設(shè)置的存儲器,這些遠程存儲器可以通過網(wǎng)絡(luò)連接至移動終端10。上述網(wǎng)絡(luò)的實例包括但不限于互聯(lián)網(wǎng)、企業(yè)內(nèi)部網(wǎng)、局域網(wǎng)、移動通信網(wǎng)及其組合。

傳輸裝置106用于經(jīng)由一個網(wǎng)絡(luò)接收或者發(fā)送數(shù)據(jù)。上述的網(wǎng)絡(luò)具體實例可包括移動終端10的通信供應(yīng)商提供的無線網(wǎng)絡(luò)。在一個實例中,傳輸裝置106包括一個網(wǎng)絡(luò)適配器(Network Interface Controller,NIC),其可通過基站與其他網(wǎng)絡(luò)設(shè)備相連從而可與互聯(lián)網(wǎng)進行通訊。在一個實例中,傳輸裝置106可以為射頻(Radio Frequency,RF)模塊,其用于通過無線方式與互聯(lián)網(wǎng)進行通訊。

在上述運行環(huán)境下,本申請?zhí)峁┝巳鐖D3所示的多終端的實時通訊方法的流程示意圖。如圖3所示,該方法包括:

步驟S102,游戲服務(wù)器與第一游戲終端建立第一臨時通訊連接之后,接收第一游戲終端發(fā)送的游戲開啟請求。

具體的,游戲服務(wù)器在接收到第一游戲終端發(fā)送的建立臨時通訊連接的請求之后,游戲服務(wù)器與第一游戲終端建立第一臨時通訊連接。從而可以接收到第一游戲終端通過第一臨時通訊連接發(fā)送的游戲開啟請求,其中,游戲開啟請求用于根據(jù)游戲開啟請求,游戲服務(wù)器創(chuàng)建用于進行游戲的游戲房間。

在實際用應(yīng)用中,第一游戲終端可以是一種帶有連接網(wǎng)絡(luò)且?guī)в性L問網(wǎng)頁功能的屏幕終端,也可以是通用的計算機終端等。通過第一游戲終端可以實現(xiàn)對游戲房間的開啟、游戲的開始以及游戲的結(jié)束進行控制,并且可以對游戲分數(shù)進行展示。

其中,可以利用AJAX技術(shù)實現(xiàn)通訊連接的請求、建立、斷開等功能。具體的,在第一游戲終端通過網(wǎng)頁瀏覽器訪問帶有AJAX控件的預(yù)定網(wǎng)絡(luò)地址,并在與網(wǎng)絡(luò)地址對應(yīng)的網(wǎng)頁頁面上選擇“游戲開房”選項時。在第一游戲終端運行的AJAX控件,與游戲服務(wù)器建立第一臨時通訊連接,并通過第一臨時通訊連接,并將游戲開啟請求發(fā)送至游戲服務(wù)器,游戲服務(wù)器會根據(jù)游戲開啟請求創(chuàng)建一個游戲房間。

步驟S104,在游戲服務(wù)器根據(jù)游戲開啟請求創(chuàng)建游戲房間之后,將 生成的游戲房間信息返回至第一游戲終端,并斷開第一臨時通訊連接。

具體的,在成功創(chuàng)建上述游戲房間之后,游戲服務(wù)器會生成一個用于加入該游戲房間的游戲房間信息,并將游戲房間信息發(fā)送至請求建立游戲房間的第一游戲終端。在游戲服務(wù)器將游戲房間信息發(fā)送至第一游戲終端之后,斷開第一臨時通訊連接。其中,游戲房間信息包含連接至游戲房間的連接信息,使第二游戲終端在獲取到游戲房間信息后,可以直接連接至與游戲房間信息對應(yīng)的游戲房間。游戲房間信息可以為與游戲房間對應(yīng)的網(wǎng)絡(luò)地址,通過直接訪問網(wǎng)絡(luò)地址即可訪問游戲房間;也可以是與游戲房間對應(yīng)的索引信息和游戲服務(wù)器的網(wǎng)絡(luò)地址,通過網(wǎng)絡(luò)地址訪問游戲服務(wù)器并向游戲服務(wù)器發(fā)送索引信息,通過游戲服務(wù)器使第二游戲客戶端訪問游戲房間。當(dāng)然還有其他形式的游戲房間信息,以及利用游戲房間信息訪問游戲房間的實現(xiàn)方法,此處不做贅述。

第一游戲終端在接收到游戲服務(wù)器發(fā)送的游戲房間信息后,需要將游戲房間信息傳遞給至少一個第二游戲終端,使第二游戲終端可以利用游戲房間信息訪問與其對應(yīng)的游戲房間,從而進行游戲。

步驟S106,游戲服務(wù)器與第二游戲終端建立第二臨時通訊連接之后,接收第二游戲終端發(fā)送的進入游戲房間請求,其中,進入游戲房間請求由第二游戲終端在通過獲取第一游戲終端中保存的游戲房間信息之后而生成。

具體的,第二游戲終端根據(jù)獲取到的游戲房間請求,向游戲服務(wù)器發(fā)送建立第二臨時通訊連接的連接請求,在游戲服務(wù)器通過連接請求并與第二游戲終端建立第二臨時通訊連接后,第二游戲終端通過第二臨時通訊連接向游戲服務(wù)器發(fā)送進入游戲房間請求。

其中,第二游戲終端可以是具備接入互聯(lián)網(wǎng)功能的移動終端,也可以通用的計算機終端,通過第二游戲終端,可以實現(xiàn)對游戲程序的運行。其中,游戲程序可以是基于網(wǎng)絡(luò)瀏覽器開發(fā)的游戲程序,也可以是需要在本地進行安裝、配置的游戲程序,此處不做具體限定。

步驟S108,在游戲服務(wù)器根據(jù)第二游戲終端發(fā)送的進入游戲房間請求,允許第二游戲終端進入游戲房間之后,斷開第二臨時通信連接。

具體的,游戲服務(wù)器根據(jù)第二游戲終端發(fā)送的進入游戲房間請求,對第二游戲終端的身份進行判斷。在游戲房間請求中,除了包含用于請求加入游戲房間的信息外,還可以至少包含:用于標記第二游戲終端的標識信息、用于驗證第二游戲終端身份的驗證信息等。當(dāng)游戲服務(wù)器經(jīng)過身份驗證,允許第二游戲終端進入游戲房間之后,斷開臨時通信連接。

通過上述步驟S102至步驟S108,在第一游戲終端或者第二游戲終端每次與游戲服務(wù)器進行通訊時,需要首先由第一游戲終端或者第二游戲終端發(fā)起臨時連接請求,當(dāng)臨時連接請求被服務(wù)器接受時,在第一游戲終端與游戲服務(wù)器或者第二游戲終端與游戲服務(wù)器之間建立臨時通訊連接并通過該通訊連接進行一組數(shù)據(jù)通訊。最后,當(dāng)數(shù)據(jù)通訊結(jié)束后,斷開該臨時通訊連接。通過上述方法,達到了游戲服務(wù)器在不建立并維持多個雙通道長連接即可實現(xiàn)多終端實時通訊的目的,進而實現(xiàn)了降低服務(wù)器負載,節(jié)約處理資源和通訊資源的技術(shù)效果,解決了因游戲服務(wù)器同時維護多個長連接導(dǎo)致服務(wù)器負載嚴重的技術(shù)問題。

作為一個可選的實施例,在步驟S108斷開第二臨時通信連接之后,方法還可以包括:

步驟S200,游戲服務(wù)器與第一游戲終端建立第三臨時通訊連接之后,接收第一游戲終端發(fā)送的控制信息,其中,控制信息至少包括:開始游戲信息和結(jié)束游戲信息。

步驟S202,在游戲服務(wù)器根據(jù)控制信息,向第一游戲終端發(fā)送第二游戲終端的游戲數(shù)據(jù)信息之后,斷開第三臨時通訊連接,其中,游戲數(shù)據(jù)信息至少包括:游戲人數(shù)信息、游戲分數(shù)信息。

具體的,通過步驟S200至步驟S202,在第一游戲終端通過創(chuàng)建的第三臨時通訊連接向游戲服務(wù)器發(fā)送針對游戲的控制信息之后,游戲服務(wù)器 根據(jù)接收到控制信息,向第一游戲終端發(fā)送第二游戲終端的游戲數(shù)據(jù)信息等信息。在發(fā)送完成后斷開第三臨時通訊連接。

其中,如果在第一游戲終端上沒有接收到新的游戲控制信息時,向游戲服務(wù)器發(fā)送游戲控制信息與上一次發(fā)送的游戲控制信息相同。利用此種方法,可以避免因某一次臨時通訊連接建立失敗,或者因傳輸?shù)臄?shù)據(jù)包丟失導(dǎo)致的對游戲的控制失敗的問題。

步驟S204,游戲服務(wù)器與第二游戲終端建立第四臨時通訊連接,并接收第二游戲終端發(fā)送的游戲數(shù)據(jù)信息之后,將控制信息發(fā)送至第二游戲終端,并在斷開第四臨時通訊連接。

具體的,通過步驟S204游戲服務(wù)器與第二游戲終端建立第四臨時通訊連接,第二游戲終端通過第四臨時連接將當(dāng)前執(zhí)行的游戲的游戲數(shù)據(jù)信息發(fā)送至游戲服務(wù)器,游戲服務(wù)器在接收到的游戲數(shù)據(jù)信息后,將當(dāng)前的游戲控制信息發(fā)送至第二游戲終端。在完成發(fā)送后,斷開當(dāng)前的第四臨時通訊連接。在游戲服務(wù)器每次接收到第二游戲終端發(fā)送的游戲數(shù)據(jù)信息后,都將當(dāng)前的游戲控制信息發(fā)送至第二游戲終端,可以使各第二游戲終端和第一游戲終端的游戲狀態(tài)保持同步。

作為一個可選的實施例,在步驟S204斷開所述第四臨時通訊連接之后,方法還包括:

步驟S206a,當(dāng)?shù)诙螒蚪K端接收到的游戲控制信息為開始游戲信息時,第二游戲終端以預(yù)設(shè)的第一時間頻率與游戲服務(wù)器建立第五臨時通訊連接。

步驟S208a,在第二游戲終端與游戲服務(wù)器建立第五臨時通訊連接之后,向游戲服務(wù)器發(fā)送游戲數(shù)據(jù)信息。

具體的,通過步驟S206a至步驟S208a,為了保證在游戲開始后,第一游戲終端可以及時的獲取到第二游戲終端的游戲數(shù)據(jù)信息,第二游戲終端可以按照預(yù)定的第一時間頻率與游戲服務(wù)器建立第五臨時通訊連接,通 過第五臨時通訊連接將其游戲數(shù)據(jù)信息發(fā)送至游戲服務(wù)器。使第一游戲終端在與游戲服務(wù)器建立第五臨時通訊連接時,可以獲得實時的第二游戲終端的游戲數(shù)據(jù)信息。

作為一個可選的實施例,為了進一步的保證游戲數(shù)據(jù)的準確性,在第二游戲終端加入游戲房間時,為第二游戲終端設(shè)置臨時存儲器。臨時存儲器用于存儲第二游戲終端發(fā)送的游戲數(shù)據(jù)信息。其中,臨時存儲器的存儲方式,可以按照時序?qū)γ看谓邮盏降牡诙螒蚪K端發(fā)送的游戲數(shù)據(jù)信息進行存儲;也可以只對當(dāng)前接收到的一組游戲數(shù)據(jù)信息進行存儲,當(dāng)接收到新的一組游戲數(shù)據(jù)信息時,對當(dāng)前臨時存儲器中的游戲數(shù)據(jù)信息進行替換的方式進行存儲;當(dāng)然也可以按照其他存儲方式進行存儲,此處不做贅述。

作為一個可選的實施例,步驟S204斷開第四臨時通訊連接之后,上述方法還包括:

步驟S51,游戲服務(wù)器獲取第二游戲終端與游戲服務(wù)器建立臨時通訊連接的實時時間間隔。

步驟S53,游戲服務(wù)器通過將實時時間間隔與預(yù)設(shè)的時間閾值進行比對,判斷與第二游戲終端的通訊狀態(tài)是否為通訊中斷。

步驟S55,當(dāng)實時時間間隔大于時間閾值時,確定與第二游戲終端的通訊狀態(tài)為通訊終端。

具體的,通過上述步驟S51至步驟S53,游戲服務(wù)器通過對第二游戲終端與游戲服務(wù)器建立臨時通訊連接的實施時間間隔與預(yù)先設(shè)置的時間閾值進行比對,從而確定第二游戲終端是否與游戲服務(wù)器斷開連接。

因為,上述實施例中所涉及的通訊方法,在進行游戲時,并不需要在游戲終端與游戲服務(wù)器之間建立持續(xù)的通訊連接。而是在每次需要傳遞數(shù)據(jù)時,通過建立臨時的通訊連接來實現(xiàn)。因此,在檢測第二游戲終端是否與游戲服務(wù)器通訊中斷時,可以將第二游戲終端與游戲服務(wù)器建立臨時通訊連接時的臨時通訊請求作為心跳信號,通過該心跳信號進行判斷。

作為一個可選的實施例,上述時間閾值的獲取方法包括:

步驟S201,從第二游戲終端獲取第一時間頻率。

步驟S203,根據(jù)第一時間頻率,確定第二游戲終端發(fā)送游戲數(shù)據(jù)信息的標準時間間隔。

步驟S205,根據(jù)標準時間間隔與預(yù)先設(shè)置的計算系數(shù),計算得到時間閾值。

具體的,為了確保對第二游戲終端是否與游戲服務(wù)器斷開連接的判斷的準確性,用于與實時時間間隔比對的時間閾值,可以通過從第二游戲終端獲取的第一時間頻率與計算系數(shù)進行計算得出。因為,參與游戲的第二游戲終端的運行環(huán)境、游戲版本等因素影響,導(dǎo)致第二游戲終端之間的第一時間頻率之間存在差異。因此,通過上述計算方法,可以直接獲取與第二游戲終端對應(yīng)的時間閾值,以提高判斷是否斷開連接的準確性。

作為一個可選的實施例,步驟S202在斷開第四臨時通訊連接之后,上述方法還包括:

步驟S206b,在第一游戲終端向游戲服務(wù)器發(fā)送開始游戲信息之后,第一游戲終端以預(yù)設(shè)的第二時間頻率與游戲服務(wù)器建立第六臨時通訊連接。

步驟S208b,在第一游戲終端與游戲服務(wù)器建立第六臨時通訊連接之后,向游戲服務(wù)器發(fā)送獲取第二游戲終端的游戲數(shù)據(jù)信息的數(shù)據(jù)請求信息。

具體的,通過步驟S206b至步驟S208b,在第一游戲終端向游戲服務(wù)器發(fā)送開始游戲信息之后,第一游戲終端會按照預(yù)定的第二時間頻率與游戲服務(wù)器建立臨時通訊連接,通過臨時通訊連接獲取第二游戲終端的游戲數(shù)據(jù)信息的數(shù)據(jù)請求信息。其中,第一時間頻率與第二時間頻率可以根據(jù)實際情況進行設(shè)置。此處不做贅述。

作為一個可選的實施例,在步驟S106接收第二游戲終端發(fā)送的進入 游戲房間請求之后,方法還包括:

步驟S71,游戲服務(wù)器獲取第二游戲終端的身份信息。

步驟S73,游戲服務(wù)器根據(jù)獲取到的身份信息向身份認證服務(wù)器發(fā)送身份認證請求。

步驟S75,游戲服務(wù)器根據(jù)身份認證服務(wù)器返回的身份認證結(jié)果,確定第二游戲終端的身份信息是否認證通過。

具體的,本申請上述步驟S71至步驟S75,通過第三方的身份認證服務(wù)器,對第二游戲終端的身份信息進行認證。

在實際進行游戲時,用戶可以通過在第二游戲終端中注冊賬號來登錄,還可以通過自己所擁有的第三方賬號來登錄,例如,使用QQ賬號來登錄游戲。當(dāng)用戶可以在第二游戲終端中輸入第三方賬號并確認授權(quán)第二游戲終端使用該第三方賬號登陸后,第二游戲終端將第三方賬號的賬號信息發(fā)送至游戲服務(wù)器當(dāng)中,游戲服務(wù)器根據(jù)該賬號信息向第三方的身份認證服務(wù)器發(fā)起認證請求。認證請求可用于驗證用戶身份、第三方賬號或用戶的授權(quán)情況。身份認證服務(wù)器在接收到認證請求后,對認證請求進行認證,并將認證結(jié)果反饋至游戲服務(wù)器中,以供游戲服務(wù)器判斷是否允許該第二游戲終端進入游戲房間。

作為一個可選的實施例,步驟S104在游戲服務(wù)器根據(jù)游戲開啟請求創(chuàng)建游戲房間之后,將生成的游戲房間信息返回至第一游戲終端,并斷開第一臨時通訊連接的步驟之后,方法還包括:

步驟S105,第二游戲終端從第一游戲終端獲取游戲房間信息,其中,第二游戲終端從第一游戲終端獲取游戲房間信息的獲取方式至少包括:通過二維碼方式獲取、通過近場通訊方式獲取、通過即時通訊方式獲取。

具體的,通過步驟S105,第二游戲終端從第一游戲終端中,獲取游戲房間信息,其中,將游戲房間信息從第一游戲終端傳遞給至少一個第二游戲終端的實現(xiàn)方式至少可以包括:

方式一:利用二維碼方式實現(xiàn)。

具體的,將游戲房間信息轉(zhuǎn)換為二維碼,使第一游戲終端在接收到游戲房間信息后通過顯示設(shè)備對其進行顯示。第二游戲終端通過對二維碼的掃描,即可獲取游戲房間信息,并對與其相應(yīng)的游戲房間進行訪問。其中,二維碼可以是由游戲服務(wù)器直接生成后,發(fā)送至第一游戲終端的;也可以是由第一游戲終端自行轉(zhuǎn)換的,此處不做特別限制。

方式二:利用近場通訊方式實現(xiàn)。

具體的,為第一游戲終端和第二游戲終端配置近場通訊設(shè)備,例如(NFC設(shè)備、RFID設(shè)備等)。第一游戲終端將接收到的游戲服務(wù)器發(fā)送的游戲房間信息,通過近場通訊傳遞給與第一游戲終端的近場通訊設(shè)備接近的第二游戲終端。

方式三:利用即時通訊方式實現(xiàn)。

具體的,第一游戲終端利用即時通訊客戶端,將游戲房間信息發(fā)送給預(yù)設(shè)的與第二游戲終端對應(yīng)的聯(lián)系人,第二游戲終端通過即時通訊客戶端接收游戲房間信息。

當(dāng)然還可以包括其他實現(xiàn)方式,如通過無線網(wǎng)絡(luò),第一游戲終端將游戲房間信息通過無線網(wǎng)絡(luò)發(fā)送至預(yù)設(shè)網(wǎng)段內(nèi)的第二游戲終端;通過藍牙通訊技術(shù),將游戲房間信息發(fā)送至與第一游戲終端配對的第二游戲終端等。其他的實現(xiàn)方式此處不做具體限定。

作為一個可選的實施例,在本實施例中,上述多終端的實時通訊方法可以選用較為成熟的AJAX技術(shù)來實現(xiàn)。并應(yīng)用于如圖4所示的游戲場景中。

其中,上述游戲場景中包括:第一游戲終端、第二游戲終端用于執(zhí)行游戲和游戲服務(wù)器。其中,第一游戲終端用于顯示游戲分數(shù),第二游戲終端用于執(zhí)行游戲。

具體的,通過AJAX技術(shù)實現(xiàn)的游戲共包括4個環(huán)節(jié):

第1環(huán)節(jié),游戲開房:

步驟S11,由第一游戲終端通過訪問預(yù)定的游戲登陸地址,并點擊與游戲登陸地址對應(yīng)的網(wǎng)頁頁面上的“游戲開房”按鈕。此時,網(wǎng)頁通過AJAX控件生成一個開房請求,并發(fā)送至游戲服務(wù)器;

步驟S12,游戲服務(wù)器在接收到“游戲開房”請求后建立游戲房間,并將生成的用于訪問此游戲房間的訪問二維碼反饋給第一游戲終端;

步驟S13,第一游戲終端在接收到訪問二維碼后在顯示設(shè)備中顯示出來,用于引導(dǎo)第二游戲終端進入房間。

第2環(huán)節(jié),玩家進入游戲房間:

步驟S21,第二游戲終端通過對第一游戲終端上顯示的訪問二維碼進行掃描,獲取游戲房間信息,在通過AJAX控件向游戲服務(wù)器發(fā)送計入游戲房間請求,如果通過游戲服務(wù)器的身份認證后,進入游戲房間開始等待游戲開始,否則退出游戲房間;

步驟S22,當(dāng)?shù)诙螒蚪K端成功進入房間后,游戲服務(wù)器記錄第二游戲終端的身份信息,并根據(jù)身份信息列表中計算得出游戲房間內(nèi)在線總?cè)藬?shù);

步驟S23,第一游戲終端通過AJAX控件對游戲服務(wù)器進行輪詢,從而獲取實時的在線總?cè)藬?shù),并對在線總?cè)藬?shù)進行顯示。

第3環(huán)節(jié),游戲開始:

步驟S31,由第一游戲終端向游戲服務(wù)器發(fā)送“游戲開始”的控制信息,游戲服務(wù)器記錄當(dāng)前游戲狀態(tài)為“開始”;

步驟S32,第二游戲終端在等待游戲開始時,通過AJAX控件對游戲服務(wù)器進行你給輪詢,當(dāng)獲取到游戲服務(wù)器中當(dāng)前的游戲狀態(tài)為“開始”時,開始游戲,從而實現(xiàn)多個第二游戲終端同時開始游戲;

步驟S33,第二游戲終端在開始游戲并進入游戲畫面后,通過AJAX控件將游戲中的得分上報給游戲服務(wù)器。游戲服務(wù)器對各個第二游戲終端的游戲分數(shù)進行更新;

步驟S34,第一游戲終端通過AJAX控件對游戲服務(wù)器進行輪詢,從而實時獲取游戲服務(wù)器上的與第二游戲終端對應(yīng)的游戲分數(shù),予以并顯示。

第4環(huán)節(jié),游戲結(jié)束:

步驟S41,由第一游戲終端向游戲服務(wù)器發(fā)送“游戲結(jié)束”的控制信息,游戲服務(wù)器記錄當(dāng)前游戲狀態(tài)為“結(jié)束”;

步驟S42,第二游戲終端在游戲過程中時,通過AJAX控件對游戲服務(wù)器進行輪詢,當(dāng)獲取到游戲服務(wù)器中當(dāng)前的游戲狀態(tài)為“結(jié)束”時,結(jié)束游戲,從而實現(xiàn)多個第二游戲終端同時結(jié)束游戲;

步驟S43,第二游戲終端在結(jié)束游戲并進入游戲結(jié)束畫面后,通過AJAX控件將游戲最后得分上報給游戲服務(wù)器,游戲服務(wù)器記錄第二終端最終游戲分數(shù);

步驟S44,第一游戲終端通過AJAX控件對游戲服務(wù)器上的與第二游戲終端對應(yīng)的游戲分數(shù)的最終游戲分數(shù),予以并顯示。

上述采用AJAX技術(shù)實現(xiàn)的數(shù)據(jù)實時交互,可以減少服務(wù)器處理性能的開銷,并且不需要建立多個socket通訊連接即可完成數(shù)據(jù)通訊,并且服務(wù)器也不需要開通webScoket的功能,這對服務(wù)器處理能力的要求相對降低了很多。并且,在多個移動終端需要進行頻繁的數(shù)據(jù)提交的游戲中,使用AJAX實現(xiàn),也不需要擔(dān)心因為網(wǎng)絡(luò)延遲等原因,導(dǎo)致的通過socket提交不成功造成通訊連接中斷,影響游戲效果的問題。

需要說明的是,對于前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明,某些步驟可以采用其他順序或者同時進行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實 施例均屬于優(yōu)選實施例,所涉及的動作和模塊并不一定是本發(fā)明所必須的。

通過以上的實施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到根據(jù)上述實施例的方法可借助軟件加必需的通用硬件平臺的方式來實現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳的實施方式。基于這樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)(如ROM/RAM、磁碟、光盤)中,包括若干指令用以使得一臺終端設(shè)備(可以是手機,計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述的方法。

實施例2

根據(jù)本發(fā)明實施例,還提供了一種用于實施上述多終端的實時通訊方法的多終端的實時通訊裝置,如圖5所示,該裝置包括:第一接收模塊21、生成模塊23、第二接收模塊25和認證模塊27。

其中,第一接收模塊21,用于游戲服務(wù)器與第一游戲終端建立第一臨時通訊連接之后,接收第一游戲終端發(fā)送的游戲開啟請求;生成模塊23,用于在游戲服務(wù)器根據(jù)游戲開啟請求創(chuàng)建游戲房間之后,將生成的游戲房間信息返回至第一游戲終端,并斷開第一臨時通訊連接;

第二接收模塊25,用于游戲服務(wù)器與第二游戲終端建立第二臨時通訊連接之后,接收第二游戲終端發(fā)送的進入游戲房間請求,其中,進入游戲房間請求由第二游戲終端在通過獲取第一游戲終端中保存的游戲房間信息之后而生成;

認證模塊27,用于在游戲服務(wù)器根據(jù)第二游戲終端發(fā)送的進入游戲房間請求,允許第二游戲終端進入游戲房間之后,斷開第二臨時通信連接。

通過上述第一接收模塊21、生成模塊23、第二接收模塊25和認證模塊27,在第一游戲終端或者第二游戲終端每次與游戲服務(wù)器進行通訊時,需要首先由第一游戲終端或者第二游戲終端發(fā)起臨時連接請求,當(dāng)臨時連 接請求被服務(wù)器接受時,在第一游戲終端與游戲服務(wù)器或者第二游戲終端與游戲服務(wù)器之間建立臨時通訊連接并通過該通訊連接進行一組數(shù)據(jù)通訊。最后,當(dāng)數(shù)據(jù)通訊結(jié)束后,斷開該臨時通訊連接。通過上述方法,達到了游戲服務(wù)器在不建立并維持多個雙通道長連接即可實現(xiàn)多終端實時通訊的目的,進而實現(xiàn)了降低服務(wù)器負載,節(jié)約處理資源和通訊資源的技術(shù)效果,解決了因游戲服務(wù)器同時維護多個長連接導(dǎo)致服務(wù)器負載嚴重的技術(shù)問題。

作為一個可選的實施例,如圖6所示,上述裝置還可以包括:第三接收模塊29、第一發(fā)送模塊31和通訊模塊33。

其中,第三接收模塊29,用于游戲服務(wù)器與第一游戲終端建立第三臨時通訊連接之后,接收第一游戲終端發(fā)送的控制信息,其中,控制信息至少包括:開始游戲信息和結(jié)束游戲信息;第一發(fā)送模塊31,用于在游戲服務(wù)器根據(jù)控制信息,向第一游戲終端發(fā)送第二游戲終端的游戲數(shù)據(jù)信息之后,斷開第三臨時通訊連接,其中,游戲數(shù)據(jù)信息至少包括:游戲人數(shù)信息、游戲分數(shù)信息;通訊模塊33,用于游戲服務(wù)器與第二游戲終端建立第四臨時通訊連接,并在接收第二游戲終端發(fā)送的游戲數(shù)據(jù)信息之后,將控制信息發(fā)送至第二游戲終端,并斷開第四臨時通訊連接。

具體的,利用上述第三接收模塊29、第一發(fā)送模塊31和通訊模塊33,在第一游戲終端通過創(chuàng)建的第三臨時通訊連接向游戲服務(wù)器發(fā)送針對游戲的控制信息之后,游戲服務(wù)器根據(jù)接收到控制信息,向第一游戲終端發(fā)送第二游戲終端的游戲數(shù)據(jù)信息等信息。在發(fā)送完成后斷開第三臨時通訊連接。并且游戲服務(wù)器與第二游戲終端建立第四臨時通訊連接,第二游戲終端通過第四臨時連接將當(dāng)前執(zhí)行的游戲的游戲數(shù)據(jù)信息發(fā)送至游戲服務(wù)器,游戲服務(wù)器在接收到的游戲數(shù)據(jù)信息后,將當(dāng)前的游戲控制信息發(fā)送至第二游戲終端。在完成發(fā)送后,斷開當(dāng)前的第四臨時通訊連接。在游戲服務(wù)器每次接收到第二游戲終端發(fā)送的游戲數(shù)據(jù)信息后,都將當(dāng)前的游戲控制信息發(fā)送至第二游戲終端,可以使各第二游戲終端和第一游戲終端 的游戲狀態(tài)保持同步。

其中,如果在第一游戲終端上沒有接收到新的游戲控制信息時,向游戲服務(wù)器發(fā)送游戲控制信息與上一次發(fā)送的游戲控制信息相同。利用此種方法,可以避免因某一次臨時通訊連接建立失敗,或者因傳輸?shù)臄?shù)據(jù)包丟失導(dǎo)致的對游戲的控制失敗的問題。

作為一個可選的實施例,如圖7所示,上述裝置還可以包括:第一通訊建立模塊35和第一數(shù)據(jù)發(fā)送模塊37。

其中,第一通訊建立模塊35,用于當(dāng)?shù)诙螒蚪K端接收到的游戲控制信息為開始游戲信息時,第二游戲終端以預(yù)設(shè)的第一時間頻率與游戲服務(wù)器建立第五臨時通訊連接;第一數(shù)據(jù)發(fā)送模塊37,用于在第二游戲終端與游戲服務(wù)器建立第五臨時通訊連接之后,向游戲服務(wù)器發(fā)送游戲數(shù)據(jù)信息。

具體的,通過上述第一通訊建立模塊35和第一數(shù)據(jù)發(fā)送模塊37,為了保證在游戲開始后,第一游戲終端可以及時的獲取到第二游戲終端的游戲數(shù)據(jù)信息,第二游戲終端可以按照預(yù)定的第一時間頻率與游戲服務(wù)器建立第五臨時通訊連接,通過第五臨時通訊連接將其游戲數(shù)據(jù)信息發(fā)送至游戲服務(wù)器。使第一游戲終端在與游戲服務(wù)器建立第五臨時通訊連接時,可以獲得實時的第二游戲終端的游戲數(shù)據(jù)信息。

作為一個可選的實施例,為了進一步的保證游戲數(shù)據(jù)的準確性,在第二游戲終端加入游戲房間時,為第二游戲終端設(shè)置臨時存儲器。臨時存儲器用于存儲第二游戲終端發(fā)送的游戲數(shù)據(jù)信息。其中,臨時存儲器的存儲方式,可以按照時序?qū)γ看谓邮盏降牡诙螒蚪K端發(fā)送的游戲數(shù)據(jù)信息進行存儲;也可以只對當(dāng)前接收到的一組游戲數(shù)據(jù)信息進行存儲,當(dāng)接收到新的一組游戲數(shù)據(jù)信息時,對當(dāng)前臨時存儲器中的游戲數(shù)據(jù)信息進行替換的方式進行存儲;當(dāng)然也可以按照其他存儲方式進行存儲,此處不做贅述。

作為一個可選的實施例,如圖8所示,上述裝置還可以包括:第一獲取模塊41、比對模塊43和第一確定模塊45。

其中,第一獲取模塊41,用于游戲服務(wù)器獲取第二游戲終端與游戲服務(wù)器建立臨時通訊連接的實時時間間隔;比對模塊43,用于游戲服務(wù)器通過將實時時間間隔與預(yù)設(shè)的時間閾值進行比對,判斷與第二游戲終端的通訊狀態(tài)是否為通訊中斷;第一確定模塊45,用于當(dāng)實時時間間隔大于時間閾值時,確定與第二游戲終端的通訊狀態(tài)為通訊終端。

具體的,通過上述一獲取模塊41、比對模塊43和第一確定模塊45,游戲服務(wù)器通過對第二游戲終端與游戲服務(wù)器建立臨時通訊連接的實施時間間隔與預(yù)先設(shè)置的時間閾值進行比對,從而確定第二游戲終端是否與游戲服務(wù)器斷開連接。

因為,上述實施例中所涉及的通訊方法,在進行游戲時,并不需要在游戲終端與游戲服務(wù)器之間建立持續(xù)的通訊連接。而是在每次需要傳遞數(shù)據(jù)時,通過建立臨時的通訊連接來實現(xiàn)。因此,在檢測第二游戲終端是否與游戲服務(wù)器通訊中斷時,可以將第二游戲終端與游戲服務(wù)器建立臨時通訊連接時的臨時通訊請求作為心跳信號,通過該心跳信號進行判斷。

作為一個可選的實施例,如圖9所示,上述裝置還可以包括:第二通訊建立模塊34和第二數(shù)據(jù)發(fā)送模塊36。

其中,第二通訊建立模塊34,用于在第一游戲終端向游戲服務(wù)器發(fā)送開始游戲信息之后,第一游戲終端以預(yù)設(shè)的第二時間頻率與游戲服務(wù)器建立第六臨時通訊連接;第二數(shù)據(jù)發(fā)送模塊36,用于在第一游戲終端與游戲服務(wù)器建立第六臨時通訊連接之后,向游戲服務(wù)器發(fā)送獲取第二游戲終端的游戲數(shù)據(jù)信息的數(shù)據(jù)請求信息。

具體的,通過上述第二通訊建立模塊34和第二數(shù)據(jù)發(fā)送模塊36,在第一游戲終端向游戲服務(wù)器發(fā)送開始游戲信息之后,第一游戲終端會按照預(yù)定的第二時間頻率與游戲服務(wù)器建立臨時通訊連接,通過臨時通訊連接獲取第二游戲終端的游戲數(shù)據(jù)信息的數(shù)據(jù)請求信息。其中,第一時間頻率與第二時間頻率可以根據(jù)實際情況進行設(shè)置。此處不做贅述。

作為一個可選的實施例,如圖10所示,上述裝置還可以包括:第二獲取模塊61、第二發(fā)送模塊63和第二確定模塊65。

其中,第二獲取模塊61,用于游戲服務(wù)器獲取第二游戲終端的身份信息;第二發(fā)送模塊63,用于游戲服務(wù)器根據(jù)獲取到的身份信息向身份認證服務(wù)器發(fā)送身份認證請求;第二確定模塊65,用于游戲服務(wù)器根據(jù)身份認證服務(wù)器返回的身份認證結(jié)果,確定第二游戲終端的身份信息是否認證通過。

具體的,本申請上述第二獲取模塊61、第二發(fā)送模塊63和第二確定模塊65,通過第三方的身份認證服務(wù)器,對第二游戲終端的身份信息進行認證。

在實際進行游戲時,用戶可以通過在第二游戲終端中注冊賬號來登錄,還可以通過自己所擁有的第三方賬號來登錄,例如,使用QQ賬號來登錄游戲。當(dāng)用戶可以在第二游戲終端中輸入第三方賬號并確認授權(quán)第二游戲終端使用該第三方賬號登陸后,第二游戲終端將第三方賬號的賬號信息發(fā)送至游戲服務(wù)器當(dāng)中,游戲服務(wù)器根據(jù)該賬號信息向第三方的身份認證服務(wù)器發(fā)起認證請求。認證請求可用于驗證用戶身份、第三方賬號或用戶的授權(quán)情況。身份認證服務(wù)器在接收到認證請求后,對認證請求進行認證,并將認證結(jié)果反饋至游戲服務(wù)器中,以供游戲服務(wù)器判斷是否允許該第二游戲終端進入游戲房間。

作為一個可選的實施例,如圖11所示,上述裝置還可以包括:第三獲取模塊24。

其中,第三獲取模塊24,用于第二游戲終端從第一游戲終端獲取游戲房間信息,其中,第二游戲終端從第一游戲終端獲取游戲房間信息的獲取方式至少包括:通過二維碼掃描的方式獲取、通過近場通訊的方式獲取、通過第三方即時通訊客戶端的方式獲取。

具體的,通過上述第三獲取模塊24,第二游戲終端從第一游戲終端中, 獲取游戲房間信息,其中,將游戲房間信息從第一游戲終端傳遞給至少一個第二游戲終端的實現(xiàn)方式至少可以包括:

方式一:利用二維碼方式實現(xiàn)。

具體的,將游戲房間信息轉(zhuǎn)換為二維碼,使第一游戲終端在接收到游戲房間信息后通過顯示設(shè)備對其進行顯示。第二游戲終端通過對二維碼的掃描,即可獲取游戲房間信息,并對與其相應(yīng)的游戲房間進行訪問。其中,二維碼可以是由游戲服務(wù)器直接生成后,發(fā)送至第一游戲終端的;也可以是由第一游戲終端自行轉(zhuǎn)換的,此處不做特別限制。

方式二:利用近場通訊方式實現(xiàn)。

具體的,為第一游戲終端和第二游戲終端配置近場通訊設(shè)備,例如(NFC設(shè)備、RFID設(shè)備等)。第一游戲終端將接收到的游戲服務(wù)器發(fā)送的游戲房間信息,通過近場通訊傳遞給與第一游戲終端的近場通訊設(shè)備接近的第二游戲終端。

方式三:利用即時通訊方式實現(xiàn)。

具體的,第一游戲終端利用即時通訊客戶端,將游戲房間信息發(fā)送給預(yù)設(shè)的與第二游戲終端對應(yīng)的聯(lián)系人,第二游戲終端通過即時通訊客戶端接收游戲房間信息。

當(dāng)然還可以包括其他實現(xiàn)方式,如通過無線網(wǎng)絡(luò),第一游戲終端將游戲房間信息通過無線網(wǎng)絡(luò)發(fā)送至預(yù)設(shè)網(wǎng)段內(nèi)的第二游戲終端;通過藍牙通訊技術(shù),將游戲房間信息發(fā)送至與第一游戲終端配對的第二游戲終端等。其他的實現(xiàn)方式此處不做具體限定。

實施例3

在其最基本的配置中,圖12是根據(jù)本發(fā)明實施例的多終端的實時通訊系統(tǒng)結(jié)構(gòu)示意圖。出于描述的目的,所繪的體系結(jié)構(gòu)僅為合適環(huán)境的一個示例,并非對本申請的使用范圍或功能提出任何局限。也不應(yīng)將該計算 系統(tǒng)解釋為對圖12所示的任一組件或其組合具有任何依賴或需求。

如圖12所示,本申請?zhí)峁┑亩嘟K端的實時通訊系統(tǒng)可以包括:第一游戲終端10、第二游戲終端20和游戲服務(wù)器30。

其中,第一游戲終端10,用于在與游戲服務(wù)器30建立第一臨時通訊連接之后,向游戲服務(wù)器30發(fā)送游戲開啟請求,并接收游戲服務(wù)器30生成的游戲房間信息;第二游戲終端20,在與游戲服務(wù)器30建立第二臨時通訊連接之后,用于根據(jù)游戲房間信息向游戲房間發(fā)送游戲房間請求;游戲服務(wù)器30,與第一游戲終端10與第二游戲終分別端建立臨時通訊連接,用于接收游戲開啟請求,并在根據(jù)游戲開啟請求創(chuàng)建游戲房間之后,將生成的游戲房間信息返回至第一游戲終端10,并斷開第一臨時通訊連接;游戲服務(wù)器30還用于接收第二游戲終端20發(fā)送的進入游戲房間請求,并在根據(jù)進入游戲房間請求允許第二游戲終端20進入游戲房間之后,斷開第二臨時通信連接。

通過上述第一游戲終端10、第二游戲終端20和游戲服務(wù)器30,在第一游戲終端或者第二游戲終端每次與游戲服務(wù)器進行通訊時,需要首先由第一游戲終端或者第二游戲終端發(fā)起臨時連接請求,當(dāng)臨時連接請求被服務(wù)器接受時,在第一游戲終端與游戲服務(wù)器或者第二游戲終端與游戲服務(wù)器之間建立臨時通訊連接并通過該通訊連接進行一組數(shù)據(jù)通訊。最后,當(dāng)數(shù)據(jù)通訊結(jié)束后,斷開該臨時通訊連接。通過上述方法,達到了游戲服務(wù)器在不建立并維持多個雙通道長連接即可實現(xiàn)多終端實時通訊的目的,進而實現(xiàn)了降低服務(wù)器負載,節(jié)約處理資源和通訊資源的技術(shù)效果,解決了因游戲服務(wù)器同時維護多個長連接導(dǎo)致服務(wù)器負載嚴重的技術(shù)問題。

進一步的,在第一游戲終端通過創(chuàng)建的第三臨時通訊連接向游戲服務(wù)器發(fā)送針對游戲的控制信息之后,游戲服務(wù)器根據(jù)接收到控制信息,向第一游戲終端發(fā)送第二游戲終端的游戲數(shù)據(jù)信息等信息。在發(fā)送完成后斷開第三臨時通訊連接。

其中,如果在第一游戲終端上沒有接收到新的游戲控制信息時,向游 戲服務(wù)器發(fā)送游戲控制信息與上一次發(fā)送的游戲控制信息相同。利用此種方法,可以避免因某一次臨時通訊連接建立失敗,或者因傳輸?shù)臄?shù)據(jù)包丟失導(dǎo)致的對游戲的控制失敗的問題。

游戲服務(wù)器與第二游戲終端建立第四臨時通訊連接,第二游戲終端通過第四臨時連接將當(dāng)前執(zhí)行的游戲的游戲數(shù)據(jù)信息發(fā)送至游戲服務(wù)器,游戲服務(wù)器在接收到的游戲數(shù)據(jù)信息后,將當(dāng)前的游戲控制信息發(fā)送至第二游戲終端。在完成發(fā)送后,斷開當(dāng)前的第四臨時通訊連接。在游戲服務(wù)器每次接收到第二游戲終端發(fā)送的游戲數(shù)據(jù)信息后,都將當(dāng)前的游戲控制信息發(fā)送至第二游戲終端,可以使各第二游戲終端和第一游戲終端的游戲狀態(tài)保持同步。

進一步的,為了保證在游戲開始后,第一游戲終端可以及時的獲取到第二游戲終端的游戲數(shù)據(jù)信息,第二游戲終端可以按照預(yù)定的第一時間頻率與游戲服務(wù)器建立臨時通訊連接,通過臨時通訊連接將其游戲數(shù)據(jù)信息發(fā)送至游戲服務(wù)器。使第一游戲終端在與游戲服務(wù)器建立臨時通訊連接時,可以獲得實時的第二游戲終端的游戲數(shù)據(jù)信息。

進一步的,在第一游戲終端向游戲服務(wù)器發(fā)送開始游戲信息之后,第一游戲終端會按照預(yù)定的第二時間頻率與游戲服務(wù)器建立臨時通訊連接,通過臨時通訊連接獲取第二游戲終端的游戲數(shù)據(jù)信息的數(shù)據(jù)請求信息。其中,第一時間頻率與第二時間頻率可以根據(jù)實際情況進行設(shè)置。此處不做贅述。

實施例4

本申請的實施例還提供了一種存儲介質(zhì)??蛇x地,在本實施例中,上述存儲介質(zhì)可以用于保存上述實施例一所提供的多終端的實時通訊方法所執(zhí)行的程序代碼。

可選地,在本實施例中,上述存儲介質(zhì)可以位于計算機網(wǎng)絡(luò)中的多個網(wǎng)絡(luò)設(shè)備中的至少一個網(wǎng)絡(luò)設(shè)備。

可選地,在本實施例中,存儲介質(zhì)被設(shè)置為存儲用于執(zhí)行以下步驟的程序代碼:

S1,游戲服務(wù)器與第一游戲終端建立第一臨時通訊連接之后,接收第一游戲終端發(fā)送的游戲開啟請求;

S2,在游戲服務(wù)器根據(jù)游戲開啟請求創(chuàng)建游戲房間之后,將生成的游戲房間信息返回至第一游戲終端,并斷開第一臨時通訊連接;

S3,游戲服務(wù)器與第二游戲終端建立第二臨時通訊連接之后,接收第二游戲終端發(fā)送的進入游戲房間請求,其中,進入游戲房間請求由第二游戲終端在通過獲取第一游戲終端中保存的游戲房間信息之后而生成;

S4,在游戲服務(wù)器根據(jù)第二游戲終端發(fā)送的進入游戲房間請求,允許第二游戲終端進入游戲房間之后,斷開第二臨時通信連接。

可選地,存儲介質(zhì)還被設(shè)置為存儲用于執(zhí)行以下步驟的程序代碼:游戲服務(wù)器與第一游戲終端建立第三臨時通訊連接之后,接收第一游戲終端發(fā)送的控制信息,其中,控制信息至少包括:開始游戲信息和結(jié)束游戲信息;在游戲服務(wù)器根據(jù)控制信息,向第一游戲終端發(fā)送第二游戲終端的游戲數(shù)據(jù)信息之后,斷開第三臨時通訊連接,其中,游戲數(shù)據(jù)信息至少包括:游戲人數(shù)信息、游戲分數(shù)信息;游戲服務(wù)器與第二游戲終端建立第四臨時通訊連接,并接收第二游戲終端發(fā)送的游戲數(shù)據(jù)信息之后,將控制信息發(fā)送至第二游戲終端,并在斷開第四臨時通訊連接。

可選地,存儲介質(zhì)還被設(shè)置為存儲用于執(zhí)行以下步驟的程序代碼:當(dāng)?shù)诙螒蚪K端接收到的游戲控制信息為開始游戲信息時,第二游戲終端以預(yù)設(shè)的第一時間頻率與游戲服務(wù)器建立第五臨時通訊連接;在第二游戲終端與游戲服務(wù)器建立臨時通訊連接之后,向游戲服務(wù)器發(fā)送游戲數(shù)據(jù)信息。

可選地,存儲介質(zhì)還被設(shè)置為存儲用于執(zhí)行以下步驟的程序代碼:游戲服務(wù)器獲取第二游戲終端與游戲服務(wù)器建立臨時通訊連接的實時時間間隔;游戲服務(wù)器通過將實時時間間隔與預(yù)設(shè)的時間閾值進行比對,判斷 與第二游戲終端的通訊狀態(tài)是否為通訊中斷;當(dāng)實時時間間隔大于時間閾值時,確定與第二游戲終端的通訊狀態(tài)為通訊終端。

可選地,存儲介質(zhì)還被設(shè)置為存儲用于執(zhí)行以下步驟的程序代碼:從第二游戲終端獲取第一時間頻率;根據(jù)第一時間頻率,確定第二游戲終端發(fā)送游戲數(shù)據(jù)信息的標準時間間隔;根據(jù)標準時間間隔與預(yù)先設(shè)置的計算系數(shù),計算得到時間閾值。

可選地,存儲介質(zhì)還被設(shè)置為存儲用于執(zhí)行以下步驟的程序代碼:當(dāng)?shù)谝挥螒蚪K端向游戲服務(wù)器發(fā)送開始游戲信息之后,第一游戲終端以預(yù)設(shè)的第二時間頻率與游戲服務(wù)器建立臨時通訊連接;在第一游戲終端與游戲服務(wù)器建立臨時通訊連接之后,向游戲服務(wù)器發(fā)送獲取第二游戲終端的游戲數(shù)據(jù)信息的數(shù)據(jù)請求信息??蛇x的,上述處理器51還可以執(zhí)行如下步驟的程序代碼:游戲服務(wù)器獲取第二游戲終端的身份信息;游戲服務(wù)器根據(jù)獲取到的身份信息向身份認證服務(wù)器發(fā)送身份認證請求;游戲服務(wù)器根據(jù)身份認證服務(wù)器返回的身份認證結(jié)果,確定第二游戲終端的身份信息是否認證通過。

可選地,存儲介質(zhì)還被設(shè)置為存儲用于執(zhí)行以下步驟的程序代碼:第二游戲終端從第一游戲終端獲取游戲房間信息,其中,第二游戲終端從第一游戲終端獲取游戲房間信息的獲取方式至少包括:通過二維碼掃描的方式獲取、通過近場通訊的方式獲取、通過第三方即時通訊客戶端的方式獲取。

可選地,在本實施例中,上述存儲介質(zhì)可以包括但不限于:U盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、移動硬盤、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。

可選地,本實施例中的具體示例可以參考上述實施例1和實施例2中所描述的示例,本實施例在此不再贅述。

上述本發(fā)明實施例序號僅僅為了描述,不代表實施例的優(yōu)劣。

上述實施例中的集成的單元如果以軟件功能單元的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,可以存儲在上述計算機可讀取的存儲介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在存儲介質(zhì)中,包括若干指令用以使得一臺或多臺計算機設(shè)備(可為個人計算機、服務(wù)器或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。

在本發(fā)明的上述實施例中,對各個實施例的描述都各有側(cè)重,某個實施例中沒有詳述的部分,可以參見其他實施例的相關(guān)描述。

在本申請所提供的幾個實施例中,應(yīng)該理解到,所揭露的客戶端,可通過其它的方式實現(xiàn)。其中,以上所描述的裝置實施例僅僅是示意性的,例如所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結(jié)合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,單元或模塊的間接耦合或通信連接,可以是電性或其它的形式。

所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。

另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用軟件功能單元的形式實現(xiàn)。

以上所述僅是本發(fā)明的優(yōu)選實施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的 普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應(yīng)視為本發(fā)明的保護范圍。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
兰州市| 大荔县| 辛集市| 祥云县| 大厂| 锦州市| 哈密市| 大埔县| 竹山县| 盖州市| 延津县| 灌阳县| 五家渠市| 二连浩特市| 茂名市| 河池市| 莆田市| 万荣县| 集贤县| 阜平县| 华容县| 佛教| 黄大仙区| 宜君县| 德惠市| 泸溪县| 布尔津县| 启东市| 皋兰县| 贡觉县| 临城县| 灌南县| 三亚市| 扎赉特旗| 贡觉县| 正镶白旗| 霞浦县| 星座| 堆龙德庆县| 达孜县| 阿坝|