用于使用JavaScript和HTML5在設(shè)備之間流式傳輸元數(shù)據(jù)的方法和設(shè)備的制作方法
【專利摘要】在本文中公開了用于在設(shè)備之間流式傳輸元數(shù)據(jù)的技術(shù)和配置。在一個(gè)示例實(shí)施例中,從消費(fèi)性電視或機(jī)頂盒(STB)平臺(tái)向平板計(jì)算機(jī)平臺(tái)提供流式文本數(shù)據(jù),例如副標(biāo)題或隱藏字幕數(shù)據(jù)。XMPP和BOSH被用作基礎(chǔ)部件以幫助在平臺(tái)之間建立客戶端/服務(wù)器連接。這些部件還保持此連接并支持平臺(tái)之間的實(shí)時(shí)通信和數(shù)據(jù)傳輸。在示例實(shí)施例中,主平臺(tái)上的應(yīng)用程序具有被傳送至第二平臺(tái)上的客戶端應(yīng)用程序的元數(shù)據(jù)串。例如,客戶端應(yīng)用程序可以是采取在瀏覽器上運(yùn)行的HTML5應(yīng)用程序形式的智能電話應(yīng)用程序。該系統(tǒng)可雙向地進(jìn)行流式傳輸和控制。在此架構(gòu)中,XMPP實(shí)現(xiàn)JavaScript庫(kù)允許通過XML節(jié)的XMPP客戶端交互。
【專利說明】用于使用JavaScr i pt和HTML5在設(shè)備之間流式傳輸元數(shù)據(jù)的方法和設(shè)備
【技術(shù)領(lǐng)域】
[0001]本技術(shù)一般地涉及計(jì)算領(lǐng)域,并且更具體地涉及用于在設(shè)備之間傳送數(shù)據(jù)的系統(tǒng)和方法。
【背景技術(shù)】
[0002]希望與其他平臺(tái)上的其他應(yīng)用程序相交互的應(yīng)用程序和網(wǎng)絡(luò)服務(wù)具有很少的選擇來容易地進(jìn)行通信。當(dāng)嘗試以開放和基于標(biāo)準(zhǔn)方式而不是通過使用專有技術(shù)來連接設(shè)備和應(yīng)用程序時(shí)存在問題。另一重要考慮是用于應(yīng)用程序一旦已被連接、其將如何相互通信的結(jié)構(gòu)和語(yǔ)法。
[0003]開發(fā)者越來越多地使用基于因特網(wǎng)的許多開發(fā)模型;例如使用HTML5、JavaScript對(duì)象表示法(JSON)以及本地應(yīng)用程序、網(wǎng)頁(yè)和網(wǎng)絡(luò)應(yīng)用程序(“網(wǎng)絡(luò)應(yīng)用程序”)中的基于層疊樣式表(CSS)的技術(shù)。除本地應(yīng)用程序之中的通信之外,存在對(duì)各種類型的傳統(tǒng)和輕量級(jí)設(shè)備上、例如消費(fèi)性電子產(chǎn)品上的網(wǎng)絡(luò)應(yīng)用程序和服務(wù)的支持的需要。
[0004]常常通過創(chuàng)建專有管道來處理應(yīng)用程序與平臺(tái)之間的連接和通信。這意味著開發(fā)者必須創(chuàng)建自定義協(xié)議和語(yǔ)法以用于通信。雖然這對(duì)于希望在他或她自己的應(yīng)用程序之中進(jìn)行通信的單個(gè)開發(fā)者而言可能足夠了,但其不支持用于多個(gè)異構(gòu)應(yīng)用程序進(jìn)行連接和合作的更寬泛模型,其也不支持在輕量級(jí)設(shè)備上的部署。諸如數(shù)字生活網(wǎng)絡(luò)聯(lián)盟(DLNA)通信技術(shù)之類的一些方法提供連接平臺(tái)并識(shí)別某些類型的介質(zhì)的基于標(biāo)準(zhǔn)手段,但是未提供用于應(yīng)用程序的更寬泛集合進(jìn)行通信和操作的通用機(jī)制。
【專利附圖】
【附圖說明】
[0005]圖1圖示出根據(jù)示例實(shí)施例的提供XMPP服務(wù)器的第一平臺(tái)與提供客戶端網(wǎng)絡(luò)應(yīng)用程序的第二平臺(tái)之間的通信鏈路;
圖2圖示出根據(jù)示例實(shí)施例的傳輸文本數(shù)據(jù)的第一平臺(tái)與處理文本數(shù)據(jù)的一個(gè)或多個(gè)其他平臺(tái)的通信架構(gòu);
圖3提供了圖示出根據(jù)示例實(shí)施例的平臺(tái)之間的數(shù)據(jù)流的流程圖;
圖4圖示出被配置成根據(jù)所述實(shí)施例中的一個(gè)或多個(gè)進(jìn)行操作的輕量級(jí)移動(dòng)設(shè)備;以及
圖5圖示出在其上面可實(shí)現(xiàn)所述實(shí)施例中的一個(gè)或多個(gè)的示例機(jī)器的框圖。
【具體實(shí)施方式】
[0006]以下描述和附圖充分地圖示出特定實(shí)施例以使得本領(lǐng)域的技術(shù)人員能夠?qū)⑵鋵?shí)施。其他實(shí)施例可結(jié)合結(jié)構(gòu)、邏輯、電、過程及其他改變。在其他實(shí)施例的那些中可包括或代替某些實(shí)施例的各部分和特征。在權(quán)利要求中闡述的實(shí)施例涵蓋那些權(quán)利要求的所有可用等價(jià)物。
[0007]本文所述的是用于在平臺(tái)或設(shè)備之間發(fā)現(xiàn)并建立通信鏈路的系統(tǒng)和方法,例如在第一平臺(tái)上托管的服務(wù)器和在第二平臺(tái)上操作的基于網(wǎng)絡(luò)的應(yīng)用程序(“網(wǎng)絡(luò)應(yīng)用程序”)。更特別地,如下面參考圖1更詳細(xì)地描述的,在一個(gè)示例實(shí)施例中,提供了一種允許在托管可擴(kuò)展通訊和到場(chǎng)協(xié)議(XMPP)服務(wù)器的第一平臺(tái)與第二平臺(tái)上的HTML5/基于JavaScript網(wǎng)絡(luò)應(yīng)用程序之間發(fā)現(xiàn)并建立通信鏈路的技術(shù)。在此基于標(biāo)準(zhǔn)框架內(nèi),使用XMPP通信跨這些平臺(tái)實(shí)時(shí)地移動(dòng)流式元數(shù)據(jù)。在一個(gè)示例實(shí)施方式中,使用實(shí)現(xiàn)XMPP功能和同步超文本傳輸協(xié)議(HTTP)上雙向流(BOSH)的EMCAScript標(biāo)準(zhǔn)(例如JavaScript/JScript)腳本庫(kù)作為基礎(chǔ)部件中的一個(gè)以幫助建立平臺(tái)之間的客戶端/服務(wù)器連接。
[0008]如在本文中提及的,HTML5是用于將用于萬(wàn)維網(wǎng)的內(nèi)容結(jié)構(gòu)化并呈現(xiàn)的標(biāo)記語(yǔ)言標(biāo)準(zhǔn)。其為由萬(wàn)維網(wǎng)聯(lián)盟(W3C)提供的HTML標(biāo)準(zhǔn)的第五版,并且到2011年11月為止仍在開發(fā)中。HTML5意圖不僅包含HTML4,而且也包含XHTMLl和D0M2 HTML (特定JavaScript/EMCAScript)規(guī)范。提供HTML5的許多特征是為了使得其能夠?qū)崿F(xiàn)在諸如智能電話和平板電腦之類的低功率和輕量級(jí)設(shè)備上使用。HTML5支持多種技術(shù)以使得能夠?qū)崿F(xiàn)動(dòng)態(tài)內(nèi)容呈現(xiàn),包括多媒體顯示元件(諸如視頻、音頻以及圖形動(dòng)畫)、應(yīng)用程序高速緩存、后臺(tái)線程以及集成腳本支持。
[0009]如本文所提及的XMPP是用于基于XML (可擴(kuò)展標(biāo)記語(yǔ)言)的面向消息中間件的開放標(biāo)準(zhǔn)通信協(xié)議。該協(xié)議最初是為了近實(shí)時(shí)、可擴(kuò)展即時(shí)通訊(IM)、存在信息以及聯(lián)系人列表維護(hù)而設(shè)計(jì)的。被設(shè)計(jì)成可擴(kuò)展的,該協(xié)議現(xiàn)在還被應(yīng)用于VoIP和文件傳送信令。不同于大多數(shù)即時(shí)消息傳遞協(xié)議,XMPP使用開發(fā)和應(yīng)用的開放系統(tǒng)協(xié)議,由此,任何人都可實(shí)現(xiàn)XMPP服務(wù)并與其他組織的實(shí)現(xiàn)進(jìn)行互操作?;赬MPP的軟件和實(shí)現(xiàn)被跨因特網(wǎng)廣泛地部署,常常是用自由和開放源軟件。
[0010]如本文所提及的同步HTTP上雙向流(BOSH)是在不要求使用輪詢或異步分塊的情況下通過使用多個(gè)同步HTTP請(qǐng)求/響應(yīng)對(duì)來模擬兩個(gè)實(shí)體(諸如客戶端和服務(wù)器)之間的雙向流的傳輸協(xié)議。BOSH目前是XMPP標(biāo)準(zhǔn)基金會(huì)的標(biāo)準(zhǔn)草案。相關(guān)標(biāo)準(zhǔn)(XEP-0206)“B0SH上XMPP”定義如何可以使用BOSH來傳輸XMPP節(jié)(stanza)。結(jié)果是用于XMPP通信的HTTP綁定,其可在其中設(shè)備或客戶端不能保持到XMPP服務(wù)器的長(zhǎng)壽TCP連接的各種情況下使用。
[0011]如本文所提及的Strophe是用來傳導(dǎo)XMPP通信的免許可庫(kù)的集合。Strophe目前用JavaScript和C編程語(yǔ)言來實(shí)現(xiàn)。Strophe (在本文中稱為“Strophe, js”或用于其JavaScript版本的“Strophe JavaScript”)提供了供在基于瀏覽器客戶端中使用的JavaScript腳本實(shí)現(xiàn),將BOSH用于通信。XMPP庫(kù)和通信應(yīng)用程序的其他實(shí)現(xiàn)可代替Strophe的使用。
[0012]根據(jù)圖1中所示的本技術(shù)的一個(gè)示例實(shí)施例,從例如消費(fèi)者機(jī)頂盒(STB)之類的第一平臺(tái)105向例如平板計(jì)算機(jī)之類的第二平臺(tái)110傳送流式元數(shù)據(jù)100,例如與視頻節(jié)目相關(guān)聯(lián)的關(guān)閉的標(biāo)題或副標(biāo)題數(shù)據(jù)??蓚魉驮摿魇皆獢?shù)據(jù)100例如以基于在第一平臺(tái)中正在顯示的媒體內(nèi)容而在第二平臺(tái)上建立共享體驗(yàn)。還可以將第二平臺(tái)配置成處理此文本并獲得關(guān)于在第一平臺(tái)中顯示的媒體內(nèi)容的上下文信息(例如,使用用自然語(yǔ)言處理從文本提取的關(guān)鍵字而從網(wǎng)絡(luò)源獲得的相關(guān)內(nèi)容)。
[0013]在下面更詳細(xì)地描述的一個(gè)示例實(shí)施方式中,使用用于實(shí)現(xiàn)XMPP功能(例如像Strophe, js庫(kù)提供的)和BOSH的JavaScript庫(kù)作為基礎(chǔ)部件以幫助在平臺(tái)105和110之間建立客戶端/服務(wù)器連接。這些部件還保持此連接并支持平臺(tái)之間的實(shí)時(shí)通信和數(shù)據(jù)傳輸。
[0014]如在圖2中進(jìn)一步所示,在主或第一平臺(tái)105上運(yùn)行的服務(wù)器應(yīng)用程序115例如以隱藏字幕或副標(biāo)題文本的形式提供流式元數(shù)據(jù)100內(nèi)的一個(gè)或多個(gè)串以將其傳送到在第二平臺(tái)110上的客戶端應(yīng)用程序120??蛻舳藨?yīng)用程序120可以是由在瀏覽器、例如具有圖形用戶接口的瀏覽器中運(yùn)行的HTML5/JavaSCript (JS)網(wǎng)絡(luò)應(yīng)用程序?qū)崿F(xiàn)的智能電話或平板電腦應(yīng)用程序。連同在一個(gè)方向上傳遞的流式元數(shù)據(jù)100—起,可在另一方向上發(fā)送控制數(shù)據(jù)130內(nèi)的串或二進(jìn)制數(shù)據(jù)命令以控制來自第一平臺(tái)105的流,例如以中止、重新開始、發(fā)起或終止數(shù)據(jù)業(yè)務(wù)。此數(shù)據(jù)業(yè)務(wù)可實(shí)時(shí)地發(fā)生且可反向或同時(shí)地在兩個(gè)方向上移動(dòng)。相應(yīng)地,系統(tǒng)可雙向地進(jìn)行流式傳輸和控制(并交換命令和數(shù)據(jù))。
[0015]如圖2的示例實(shí)施例中更詳細(xì)地示出的,第一平臺(tái)105提供XMPP服務(wù)器140 (根據(jù)附加示例實(shí)施例,其可常駐于第三平臺(tái)上或者甚至在基于云的服務(wù)器環(huán)境中)??蛻舳藨?yīng)用程序120 (在本示例中在HTML5/JS環(huán)境中操作的應(yīng)用程序)經(jīng)由XMPP服務(wù)器140連接到服務(wù)器應(yīng)用程序115,通過使用Strophe, js腳本庫(kù)150和BOSH 155來在平臺(tái)105、110之間創(chuàng)建連續(xù)連接(用JavaScript綁定160)。
[0016]在此架構(gòu)中,JavaScript綁定160和Strophe, js腳本庫(kù)150允許通過XML節(jié)165的交換進(jìn)行的XMPP客戶端交互。XML節(jié)一般地是通過XML流從一個(gè)實(shí)體發(fā)送到另一個(gè)的結(jié)構(gòu)化信息的不連續(xù)語(yǔ)義單元。例如,在XMPP中,〈message/〉、〈presence/〉和<iq/>是針對(duì)被用于實(shí)現(xiàn)Jabber即時(shí)通訊協(xié)議的‘jabber: client’和‘jabber: server’域名空間定義的三個(gè)示例XML節(jié)??山ML節(jié)的適當(dāng)配置以在統(tǒng)一 XMPP通信中包括特定數(shù)據(jù)字段,例如 “<DEVICE:TYPEXTEXTFIELD1,TEXTFIELD2, TEXTFIELD3〉”。此外,出于此目的,可開發(fā)并提供應(yīng)用程序簡(jiǎn)檔170以定義用于客戶端應(yīng)用程序120和服務(wù)器應(yīng)用程序115相互進(jìn)行對(duì)話的能力和結(jié)構(gòu)化語(yǔ)法。例如,使用以上XML節(jié)、諸如“〈DisplayDevice:Televis1nXClosed_Capt 1ning: Avai I able,Subtitles: Unavai I able,Program—Informat1n:Available〉”以XML格式提供的應(yīng)用程序簡(jiǎn)檔可用來傳送用于特定設(shè)備和設(shè)備類型的各種特性和性質(zhì)。應(yīng)用程序簡(jiǎn)檔170是可擴(kuò)展的且提供了導(dǎo)出公共和私有能力和語(yǔ)法兩者的手段。
[0017]客戶端應(yīng)用程序120接收并處理正在從第一平臺(tái)105上的服務(wù)器應(yīng)用程序115發(fā)送的流式元數(shù)據(jù)100中的文本數(shù)據(jù)(在本示例中隱藏字幕或副標(biāo)題文本)。根據(jù)也在圖2中圖示出的另一示例實(shí)施例,第二平臺(tái)110上的應(yīng)用程序120可與第三平臺(tái)125’上的另一應(yīng)用程序120’通信。在本示例中,第三平臺(tái)125’通過XMPP服務(wù)器140被客戶端應(yīng)用程序120訪問,其提供用于客戶端平臺(tái)的代理。在未示出的替換實(shí)施例中,第三平臺(tái)125’可使用其應(yīng)用程序120’來直接地或間接地與XMPP服務(wù)器140通信(例如,以向服務(wù)器應(yīng)用程序115提供附加文本數(shù)據(jù)或元數(shù)據(jù))。
[0018]現(xiàn)在參考圖3,示出了舉例說明從第一平臺(tái)105到第二平臺(tái)110的數(shù)據(jù)流的流程圖??蛻舳藨?yīng)用程序使用XMPP和BOSH協(xié)議的JavaScript庫(kù)實(shí)現(xiàn)而連接(操作310)到第二平臺(tái)上的XMPP服務(wù)器。使用BOSH協(xié)議在平臺(tái)之間傳輸數(shù)據(jù)(操作320)。在另一實(shí)施例中,還可使用JavaScript庫(kù)實(shí)現(xiàn)來實(shí)現(xiàn)第一平臺(tái)105內(nèi)的XMPP服務(wù)器和BOSH協(xié)議實(shí)現(xiàn)。
[0019]使用所述架構(gòu),將客戶端(和潛在地服務(wù)器)設(shè)備上的軟件足跡和性能要求減少至使用運(yùn)行時(shí)間HTML5/JavaScript應(yīng)用程序。應(yīng)用程序不需要被安裝為本地編譯應(yīng)用程序,使得更容易在多種輕量級(jí)、低存儲(chǔ)器設(shè)備上部署和端接應(yīng)用程序。此配置還通過經(jīng)由可被配置成管理發(fā)現(xiàn)、狀態(tài)、配置等因素的公共服務(wù)器平臺(tái)來提供設(shè)備網(wǎng)絡(luò)和應(yīng)用程序而降低其復(fù)雜性。另外,此配置通過約束輕量級(jí)設(shè)備作為獨(dú)立設(shè)備的功能而增加相對(duì)于輕量級(jí)設(shè)備的拓?fù)浣Y(jié)構(gòu)的安全性,對(duì)于能力較低、固定功能設(shè)備(例如立體聲、DVD播放器等消費(fèi)性電子產(chǎn)品)而言是理想的。
[0020]此外,此架構(gòu)還通過支持使用輕量級(jí)和可移植XMPP/B0SH插件(例如Strophe, js)的多種網(wǎng)頁(yè)、網(wǎng)絡(luò)應(yīng)用程序以及網(wǎng)絡(luò)瀏覽器中的HTML5/JavaScript顯示技術(shù)以及標(biāo)準(zhǔn)化應(yīng)用程序間通信技術(shù)來增強(qiáng)網(wǎng)絡(luò)應(yīng)用程序的可移植性。本架構(gòu)在可被相互互連和連續(xù)地通信的平臺(tái)的數(shù)目方面不受限制,即使本示例為了圖示的簡(jiǎn)單起見而僅示出進(jìn)行通信的多達(dá)二個(gè)平臺(tái)。
[0021]在替換實(shí)施例中,結(jié)合XMPP通信提供的元數(shù)據(jù)可包括對(duì)隱藏字幕或副標(biāo)題文本進(jìn)行附加或補(bǔ)充的數(shù)據(jù)。在元數(shù)據(jù)內(nèi)提供的文本可涉及視頻內(nèi)容(諸如電視節(jié)目),但并不直接地對(duì)應(yīng)于視頻內(nèi)容的音頻。例如,如果被廣播或流式傳輸?shù)诫娨暤囊曨l內(nèi)容是電影,則在XMPP通信中提供的文本內(nèi)容可包括與電影相關(guān)聯(lián)的元數(shù)據(jù)(由視頻內(nèi)容源或另一外部源提供),諸如標(biāo)題、男演員/女演員列表、關(guān)鍵字、簡(jiǎn)要內(nèi)容描述等。在元數(shù)據(jù)內(nèi)提供的數(shù)據(jù)字段還包括非文本形式的數(shù)據(jù),諸如二進(jìn)制和壓縮數(shù)據(jù)。還可在元數(shù)據(jù)內(nèi)提供未被顯示給用戶的自定義標(biāo)簽、關(guān)鍵字及其他文本。
[0022]返回先前示例,可從電視的所顯示視頻內(nèi)容獲得電視的隱藏字幕/副標(biāo)題信息,并傳輸?shù)娇蛻舳藨?yīng)用程序以用于實(shí)時(shí)處理。在這種情形中,電視可作為服務(wù)器進(jìn)行操作,以向在另一設(shè)備上操作的客戶端應(yīng)用程序傳輸元數(shù)據(jù)的實(shí)時(shí)數(shù)據(jù)流(包含文本)。例如,可由在可在與電視相同的環(huán)境中操作的因特網(wǎng)連接的平板PC上執(zhí)行的網(wǎng)絡(luò)應(yīng)用程序來提供客戶端應(yīng)用程序。在這種情形中,可將平板PC配置成顯示用戶可操作圖形用戶接口,其使得用戶能夠結(jié)合從文本或流元數(shù)據(jù)中的其他數(shù)據(jù)導(dǎo)出的上下文信息而獲悉更多關(guān)于正在顯示的視頻內(nèi)容的信息。
[0023]根據(jù)一個(gè)示例實(shí)施例,可將任何上述元件和功能(諸如但不限于客戶端應(yīng)用程序120,XMPP服務(wù)器140或Strophe或BOSH部件)實(shí)現(xiàn)為一個(gè)或多個(gè)模塊的組合,如下面在本文中進(jìn)一步定義的。此外,各種方法或技術(shù)或其特定方面或部分可采取以有形介質(zhì)體現(xiàn)的程序代碼(即指令)的形式,諸如軟盤、⑶-ROM、硬盤驅(qū)動(dòng)器或任何其他機(jī)器可讀存儲(chǔ)介質(zhì),其中,當(dāng)程序代碼被加載到諸如計(jì)算機(jī)之類的機(jī)器中并由該機(jī)器執(zhí)行時(shí),機(jī)器變成用于實(shí)施各種技術(shù)的設(shè)備。在可編程計(jì)算機(jī)上的程序代碼執(zhí)行的情況下,計(jì)算設(shè)備可包括處理器、處理器可讀的存儲(chǔ)介質(zhì)(包括易失性和非易失性存儲(chǔ)器和/或存儲(chǔ)元件)、至少一個(gè)輸入設(shè)備以及至少一個(gè)輸出設(shè)備。
[0024]可實(shí)現(xiàn)或利用本文所述各種技術(shù)的一個(gè)或多個(gè)程序可使用應(yīng)用編程接口(API)、可再使用控制機(jī)構(gòu)等??梢杂酶呒?jí)程序或面向?qū)ο缶幊陶Z(yǔ)言來實(shí)現(xiàn)此類程序以與計(jì)算機(jī)系統(tǒng)通信。然而,如果需要,可以用匯編或機(jī)器語(yǔ)言來實(shí)現(xiàn)(一個(gè)或多個(gè))程序。在任何情況下,語(yǔ)言可以是編譯或解釋語(yǔ)言,并且與硬件結(jié)合。
[0025]雖然先前所述實(shí)施例中的某些包括“網(wǎng)絡(luò)應(yīng)用程序”和類似基于瀏覽器應(yīng)用程序中的諸如HTML5和JavaScript之類的基于因特網(wǎng)標(biāo)準(zhǔn)的使用,但將理解的是目前所述的技術(shù)和系統(tǒng)配置還可在多種計(jì)算和電子設(shè)備設(shè)置中應(yīng)用。例如,可使用獨(dú)立、已安裝、基于服務(wù)器或基于薄客戶端軟件應(yīng)用程序的任何組合來提供功能和與本文所述應(yīng)用程序模型的通信。
[0026]此外,網(wǎng)絡(luò)應(yīng)用程序或其他基于網(wǎng)絡(luò)的應(yīng)用程序不一定要求因特網(wǎng)連接或萬(wàn)維網(wǎng)的使用,因?yàn)榛诰W(wǎng)絡(luò)的應(yīng)用程序可在到連接設(shè)備的專用局域網(wǎng)內(nèi)或沒有網(wǎng)絡(luò)連接的單個(gè)設(shè)備內(nèi)提供功能。另外,如本文所述的網(wǎng)絡(luò)應(yīng)用程序的使用不限于JavaScript和基于HTML5標(biāo)準(zhǔn)標(biāo)記語(yǔ)言的使用,但是也可使用其他適當(dāng)標(biāo)記和腳本語(yǔ)言和瀏覽器/應(yīng)用程序解釋指令格式。
[0027]本文所使用的,術(shù)語(yǔ)“瀏覽器”一般指的是用于檢索、呈現(xiàn)以及遍歷諸如網(wǎng)頁(yè)或網(wǎng)絡(luò)應(yīng)用程序之類的來自本地或遠(yuǎn)程位置(例如,經(jīng)由網(wǎng)絡(luò)或萬(wàn)維網(wǎng))的信息資源的軟件應(yīng)用程序。瀏覽器可包括結(jié)合要呈現(xiàn)的信息資源來支持實(shí)時(shí)腳本執(zhí)行和解釋。瀏覽器的一個(gè)實(shí)施例可包括用以呈現(xiàn)信息資源的圖形用戶接口,但是其他實(shí)施例可提供附加或替換類型的用戶接口。此外,可將瀏覽器配置成在不提供用戶接口的情況下執(zhí)行一個(gè)或多個(gè)網(wǎng)絡(luò)應(yīng)用程序作為后臺(tái)進(jìn)程的執(zhí)行。
[0028]圖4提供了輕量級(jí)或移動(dòng)設(shè)備402的示例圖示400,諸如用戶設(shè)備(UE)、移動(dòng)站(MS)、移動(dòng)無線設(shè)備、移動(dòng)通信設(shè)備、平板電腦、手機(jī)或其他類型的移動(dòng)無線設(shè)備。移動(dòng)設(shè)備402可包括被配置成與基站(BS)、演進(jìn)節(jié)點(diǎn)B (eNB)或其他類型的無線廣域網(wǎng)(WffAN)接入點(diǎn)通信的一個(gè)或多個(gè)天線408??蓪⒁苿?dòng)設(shè)備402配置成使用包括3GPP LTE/LTE-A、WiMAX、高速分組接入(HSPA)、藍(lán)牙以及無線保真(W1-Fi)的至少一個(gè)無線通信標(biāo)準(zhǔn)進(jìn)行通信。移動(dòng)設(shè)備402可使用用于每個(gè)無線通信標(biāo)準(zhǔn)的單獨(dú)天線或用于多個(gè)無線通信標(biāo)準(zhǔn)的共享天線進(jìn)行通信。移動(dòng)設(shè)備402可在無線局域網(wǎng)(WLAN)、無線個(gè)域網(wǎng)(WPAN)和/或無線廣域網(wǎng)(WffAN)中進(jìn)行通信。
[0029]圖4還提供了可被用于來自移動(dòng)設(shè)備402的音頻輸入和輸出的麥克風(fēng)420和一個(gè)或多個(gè)揚(yáng)聲器412的圖示。顯示屏404可以是液晶顯示器(IXD)屏幕或諸如有機(jī)發(fā)光二極管(OLED)顯示器之類的其他類型的顯示屏??蓪@示屏404配置為觸摸屏。觸摸屏可使用電容性、電阻性或另一類型的觸摸屏技術(shù)??蓪?yīng)用處理器414和圖形處理器418耦合到內(nèi)部存儲(chǔ)器416以提供處理和顯示能力。還可使用非易失性存儲(chǔ)器端口 410來向用戶提供數(shù)據(jù)輸入/輸出選項(xiàng)。還可使用非易失性存儲(chǔ)器端口 410來擴(kuò)展移動(dòng)設(shè)備402的存儲(chǔ)器能力??蓪㈡I盤406與移動(dòng)設(shè)備402集成或無線連接到移動(dòng)設(shè)備402以提供附加用戶輸入。還可使用觸摸屏來提供虛擬鍵盤。
[0030]圖5是圖示出在其上面可運(yùn)行本文所討論的方法中的任何一個(gè)或多個(gè)的示例機(jī)器的框圖??墒褂糜?jì)算機(jī)系統(tǒng)500作為用于上述任何平臺(tái)或用于在本文中描述或提及的任何其他計(jì)算機(jī)平臺(tái)的基礎(chǔ)平臺(tái)。在替換實(shí)施例中,機(jī)器作為獨(dú)立設(shè)備進(jìn)行操作,或者可連接(例如,聯(lián)網(wǎng))到其他機(jī)器。在聯(lián)網(wǎng)部署中,機(jī)器可在服務(wù)器-客戶端網(wǎng)絡(luò)環(huán)境中的服務(wù)器或客戶端機(jī)器的容量中操作,或者其可充當(dāng)端對(duì)端(或分布式)網(wǎng)絡(luò)環(huán)境中的對(duì)等機(jī)器。該機(jī)器可以是個(gè)人計(jì)算機(jī)(PC)、平板PC、機(jī)頂盒(STB)、個(gè)人數(shù)字助理(PDA)、移動(dòng)電話、網(wǎng)絡(luò)設(shè)備、網(wǎng)絡(luò)路由器、交換機(jī)或橋接器或者能夠執(zhí)行指定將由該機(jī)器采取的動(dòng)作的指令(連續(xù)或其他)的任何機(jī)器。此外,雖然僅圖示出單個(gè)機(jī)器,但還應(yīng)將術(shù)語(yǔ)“機(jī)器”理解成包括單獨(dú)地或共同地執(zhí)行一組(或多組)指令以執(zhí)行本文所討論的方法中的任何一個(gè)或多個(gè)的機(jī)器的任何集合。
[0031]示例計(jì)算機(jī)系統(tǒng)500包括處理器502 (例如,中央處理單元(CPU)、圖形處理單元(GPU)或兩者)、主存儲(chǔ)器504和靜態(tài)存儲(chǔ)器506,其經(jīng)由互連508 (例如,鏈路或總線)相互通信。計(jì)算機(jī)系統(tǒng)500還可包括視頻顯示單元510、字母數(shù)字輸入設(shè)備512 (例如,鍵盤)以及用戶接口(UI)導(dǎo)航設(shè)備514 (例如,鼠標(biāo))。在一個(gè)實(shí)施例中視頻顯示單元510、輸入設(shè)備512和Π導(dǎo)航設(shè)備514是觸摸屏顯示器。計(jì)算機(jī)系統(tǒng)500可另外包括存儲(chǔ)設(shè)備516(例如,驅(qū)動(dòng)單元)、信號(hào)發(fā)生設(shè)備518 (例如,揚(yáng)聲器)、網(wǎng)絡(luò)接口設(shè)備520 (其可包括一個(gè)或多個(gè)天線528、收發(fā)機(jī)或其他無線通信硬件或與之可操作地通信)以及一個(gè)或多個(gè)傳感器(未示出),諸如全球定位系統(tǒng)(GPS)傳感器、指南針、加速度計(jì)或其他傳感器。
[0032]存儲(chǔ)設(shè)備516包括機(jī)器可讀介質(zhì)522,在其上面存儲(chǔ)了體現(xiàn)本文所述方法或功能中的任何一個(gè)或多個(gè)或被其利用的一組或多組數(shù)據(jù)結(jié)構(gòu)和指令524(例如,軟件)。指令524還可完全地或至少部分地存在于主存儲(chǔ)器504、靜態(tài)存儲(chǔ)器506內(nèi)和/或在其被計(jì)算機(jī)系統(tǒng)500執(zhí)行期間在處理器502內(nèi),主存儲(chǔ)器504、靜態(tài)存儲(chǔ)器506以及處理器502還組成機(jī)器可讀介質(zhì)。
[0033]雖然在示例實(shí)施例中將機(jī)器可讀介質(zhì)522示為單個(gè)介質(zhì),但術(shù)語(yǔ)“機(jī)器可讀介質(zhì)”可包括存儲(chǔ)一個(gè)或多個(gè)指令524的單個(gè)介質(zhì)或多個(gè)介質(zhì)(例如,集中式或分布式數(shù)據(jù)庫(kù)和/或關(guān)聯(lián)高速緩存和服務(wù)器)。還應(yīng)將術(shù)語(yǔ)“機(jī)器可讀介質(zhì)”理解成包括能夠存儲(chǔ)指令對(duì)其進(jìn)行編碼或載送以便由機(jī)器執(zhí)行且促使機(jī)器執(zhí)行本公開的方法中的任何一個(gè)或多個(gè)或者能夠存儲(chǔ)此類指令所利用或與此類指令相關(guān)聯(lián)的數(shù)據(jù)結(jié)構(gòu)、對(duì)其進(jìn)行編碼或載送的任何有形介質(zhì)。應(yīng)相應(yīng)地將術(shù)語(yǔ)“機(jī)器可讀介質(zhì)”理解成包括但不限于固態(tài)存儲(chǔ)器以及光和磁介質(zhì)。機(jī)器可讀介質(zhì)的特定示例包括非易失性存儲(chǔ)器,舉例來說,包括半導(dǎo)體存儲(chǔ)器件(例如,電可編程序只讀存儲(chǔ)器(EPR0M)、電可擦可編程只讀存儲(chǔ)器(EEPROM))和閃速存儲(chǔ)器件;磁盤,諸如內(nèi)部硬盤和可移動(dòng)磁盤;磁光盤;以及CD-ROM和DVD-ROM磁盤。
[0034]還可經(jīng)由利用許多眾所周知傳輸協(xié)議中的任何一個(gè)(例如,HTTP)的網(wǎng)絡(luò)接口設(shè)備520使用傳輸介質(zhì)通過通信網(wǎng)絡(luò)526來傳輸或接收指令524。通信網(wǎng)絡(luò)的示例包括LAN、WAN、因特網(wǎng)、移動(dòng)電話網(wǎng)、普通老式電話(POTS)網(wǎng)絡(luò)以及無線數(shù)據(jù)網(wǎng)絡(luò)(例如,W1-F1、3GPP以及5G LTE/LTE-A或WiMAX網(wǎng)絡(luò))。應(yīng)將術(shù)語(yǔ)“傳輸介質(zhì)”理解成包括能夠存儲(chǔ)指令、對(duì)其進(jìn)行編碼或載送以便由機(jī)器執(zhí)行的任何有形介質(zhì),并且包括數(shù)字或模擬通信信號(hào)或其他無形介質(zhì)以促進(jìn)此類軟件的通信。
[0035]在目前所述通信網(wǎng)絡(luò)的范圍內(nèi)可包括其他可應(yīng)用網(wǎng)絡(luò)配置。雖然參考局域無線網(wǎng)絡(luò)配置和廣域因特網(wǎng)網(wǎng)絡(luò)連接來提供示例,但將理解的是使用有線或無線傳輸介質(zhì)的任何組合,還可使用任何數(shù)目的個(gè)域網(wǎng)、局域網(wǎng)(LAN)以及廣域網(wǎng)(WAN)來促進(jìn)通信。
[0036]還可用硬件、固件以及軟件中的一個(gè)或組合來實(shí)現(xiàn)上述實(shí)施例。還可將實(shí)施例實(shí)現(xiàn)為存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)設(shè)備上的指令,其可被至少一個(gè)處理器讀取和執(zhí)行以執(zhí)行本文所述操作。計(jì)算機(jī)可讀存儲(chǔ)設(shè)備可包括用于以可被機(jī)器(例如,計(jì)算機(jī))讀取的形式來存儲(chǔ)信息的任何非暫時(shí)性機(jī)制。例如,計(jì)算機(jī)可讀存儲(chǔ)設(shè)備可包括只讀存儲(chǔ)器(ROM)、隨機(jī)存取存儲(chǔ)器(RAM)、磁盤存儲(chǔ)介質(zhì)、光存儲(chǔ)介質(zhì)、閃速存儲(chǔ)器件及其他存儲(chǔ)設(shè)備和介質(zhì)。在一些實(shí)施例中,基站或UE可包括一個(gè)或多個(gè)處理器,并且可用存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)設(shè)備上的指令來配置。
[0037]應(yīng)理解的是在本說明書中描述的功能單元或能力可能已被稱為或標(biāo)記為模塊,以便更特別地強(qiáng)調(diào)其實(shí)施方式無關(guān)性。例如,可以將模塊實(shí)現(xiàn)為硬件電路,其包括自定義VLSI電路或門陣列、諸如邏輯芯片的成品半導(dǎo)體、晶體管或其他分立部件。還可以用可編程硬件器件來實(shí)現(xiàn)模塊,諸如現(xiàn)場(chǎng)可編程門陣列、可編程陣列邏輯、可編程邏輯器件等。還可以用軟件來實(shí)現(xiàn)模塊以便由各種類型的處理器來執(zhí)行。可執(zhí)行代碼的已識(shí)別模塊可以例如包括計(jì)算機(jī)指令的一個(gè)或多個(gè)物理或邏輯塊,其可例如被組織為對(duì)象、程序或函數(shù)。然而,所識(shí)別模塊的可執(zhí)行文件不需要在物理上定位在一起,而是可以包括存儲(chǔ)在不同位置上的不相干的指令,所述不同位置在被在邏輯上結(jié)合在一起時(shí)包括模塊且實(shí)現(xiàn)用于模塊的所述目的。
[0038]事實(shí)上,可執(zhí)行代碼模塊可以是單個(gè)指令或許多指令,并且甚至可以分布在多個(gè)不同代碼段上、在不同的程序之中以及跨多個(gè)存儲(chǔ)器件。同樣地,在這里,可以在模塊內(nèi)識(shí)別和示出操作數(shù)據(jù),并且以任何適當(dāng)?shù)男问絹眢w現(xiàn)并在任何適當(dāng)類型的數(shù)據(jù)結(jié)構(gòu)內(nèi)組織??蓪⒉僮鲾?shù)據(jù)集合為單個(gè)數(shù)據(jù)集,或者可分布在包括不同存儲(chǔ)設(shè)備的不同位置上,并且可至少部分地僅僅作為電子信號(hào)存在于系統(tǒng)或網(wǎng)絡(luò)上。該模塊可以是被動(dòng)或主動(dòng)的,包括可操作用于執(zhí)行期望功能的代理。
[0039]目前所述的方法、系統(tǒng)以及設(shè)備實(shí)施例的附加示例包括以下、非限制性配置。每個(gè)以下非限制性示例可獨(dú)立存在,或者可以任何替換或組合將其與在下面或遍及本公開提供的其他示例中的任何一個(gè)或多個(gè)組合。
[0040]示例I包括客戶端設(shè)備,包括:
至少一個(gè)處理器;
至少一個(gè)存儲(chǔ)器設(shè)備;
至少一個(gè)腳本庫(kù),可在瀏覽器中執(zhí)行且被配置成在客戶端設(shè)備與服務(wù)器之間建立一個(gè)或多個(gè)持續(xù)HTTP上雙向流(BOSH)連接;以及
至少一個(gè)網(wǎng)絡(luò)應(yīng)用程序,可在瀏覽器中執(zhí)行并被配置成實(shí)現(xiàn)腳本庫(kù)以使用BOSH連接從服務(wù)器接收一個(gè)或多個(gè)可擴(kuò)展通訊和到場(chǎng)協(xié)議(XMPP)數(shù)據(jù)傳輸,其中,所述XMPP數(shù)據(jù)傳輸從在服務(wù)器上操作的一個(gè)或多個(gè)應(yīng)用程序提供元數(shù)據(jù)流;
其中,所述存儲(chǔ)器設(shè)備提供存儲(chǔ)在其中的多個(gè)指令,其在被處理器執(zhí)行時(shí)促使處理器執(zhí)行指令,該指令執(zhí)行所述瀏覽器、所述至少一個(gè)腳本庫(kù)以及所述至少一個(gè)網(wǎng)絡(luò)應(yīng)用程序。[0041 ] 在示例2中,示例I的主題可以可選地包括
使用BOSH連接在一個(gè)或多個(gè)XMPP命令傳輸中從網(wǎng)絡(luò)應(yīng)用程序向服務(wù)器傳輸一個(gè)或多個(gè)命令,該命令用來控制從服務(wù)器到網(wǎng)絡(luò)應(yīng)用程序的元數(shù)據(jù)流的傳輸。
[0042]在示例3中,示例I一2中的一個(gè)或任何組合的主題可以可選地包括
使用在網(wǎng)絡(luò)應(yīng)用程序中執(zhí)行的腳本庫(kù)在瀏覽器中建立BOSH連接,該腳本庫(kù)向?yàn)g覽器提供一個(gè)或多個(gè)運(yùn)行時(shí)間執(zhí)行BOSH連接。
[0043]在示例4中,示例I一3中的一個(gè)或任何組合的主題可以可選地包括用符合HTML5標(biāo)記語(yǔ)言標(biāo)準(zhǔn)的瀏覽器可呈現(xiàn)標(biāo)記語(yǔ)言來編碼的網(wǎng)絡(luò)應(yīng)用程序,其中,用符合JavaScript腳本語(yǔ)言標(biāo)準(zhǔn)的腳本語(yǔ)言對(duì)腳本庫(kù)進(jìn)行編碼,并且其中,所述瀏覽器圖形用戶接口被進(jìn)一步配置成呈現(xiàn)用符合HTML5標(biāo)記語(yǔ)言標(biāo)準(zhǔn)的標(biāo)記語(yǔ)言和符合JavaScript腳本語(yǔ)言標(biāo)準(zhǔn)的腳本語(yǔ)言編碼的網(wǎng)絡(luò)應(yīng)用程序。
[0044]在示例5中,示例I一4中的一個(gè)或任何組合的主題可以可選地包括
使用BOSH連接與服務(wù)器交換一個(gè)或多個(gè)應(yīng)用程序簡(jiǎn)檔,該應(yīng)用程序簡(jiǎn)檔以用于網(wǎng)絡(luò)應(yīng)用程序和在服務(wù)器上操作的應(yīng)用程序的XMPP格式來定義能力和結(jié)構(gòu)化語(yǔ)法。
[0045]在示例6中,示例I一5中的一個(gè)或任何組合的主題可以可選地包括使用針對(duì)網(wǎng)絡(luò)應(yīng)用程序定義的XML節(jié)來與服務(wù)器通信,該XML節(jié)提供用于與網(wǎng)絡(luò)應(yīng)用程序進(jìn)行XMPP數(shù)據(jù)傳輸?shù)慕Y(jié)構(gòu)化語(yǔ)法。
[0046]在示例7中,示例I一6中的一個(gè)或任何組合的主題可以可選地包括從在服務(wù)器上操作的應(yīng)用程序提供的元數(shù)據(jù)流與多媒體內(nèi)容相關(guān)聯(lián),并且其中,該元數(shù)據(jù)包括來自為多媒體內(nèi)容提供的隱藏字幕文本或副標(biāo)題文本中的一個(gè)或多個(gè)的文本。
[0047]在示例8中可包括或者可以可選地將其與示例I一7中的一個(gè)或任何組合的主題組合以包括服務(wù)器設(shè)備,包括:
至少一個(gè)處理器;
至少一個(gè)存儲(chǔ)器設(shè)備;
至少一個(gè)服務(wù)器應(yīng)用程序,用于在客戶端設(shè)備處向一個(gè)或多個(gè)客戶端應(yīng)用程序提供元數(shù)據(jù)流,該服務(wù)器應(yīng)用程序被配置成:
在服務(wù)器應(yīng)用程序與客戶端應(yīng)用程序之間建立持續(xù)HTTP上雙向流(BOSH)連接;以及使用BOSH連接從服務(wù)器應(yīng)用程序向客戶端應(yīng)用程序傳輸一個(gè)或多個(gè)數(shù)據(jù)傳輸,該數(shù)據(jù)傳輸包括提供元數(shù)據(jù)流的XMPP格式化通信;
其中,所述存儲(chǔ)器設(shè)備提供存儲(chǔ)在其中的多個(gè)指令,其在被處理器執(zhí)行時(shí)促使處理器執(zhí)行指令,該指令執(zhí)行服務(wù)器應(yīng)用程序。
[0048]在示例9中,示例I的主題可以可選地包括
使用BOSH連接在一個(gè)或多個(gè)XMPP命令傳輸中從客戶端應(yīng)用程序向服務(wù)器應(yīng)用程序接收一個(gè)或多個(gè)命令,該命令用來控制元數(shù)據(jù)到客戶端應(yīng)用程序的傳輸。
[0049]在示例10中,示例8— 9中的一個(gè)或任何組合的主題可以可選地包括服務(wù)器應(yīng)用程序,其由與瀏覽器相結(jié)合地執(zhí)行的一個(gè)或多個(gè)網(wǎng)絡(luò)應(yīng)用程序或網(wǎng)頁(yè)提供,該網(wǎng)絡(luò)應(yīng)用程序或網(wǎng)頁(yè)使用符合HTML5標(biāo)記語(yǔ)言標(biāo)準(zhǔn)的標(biāo)記語(yǔ)言和符合JavaScript腳本語(yǔ)言標(biāo)準(zhǔn)的腳本語(yǔ)目。
[0050]在示例11中,示例8 —10中的一個(gè)或任何組合的主題可以可選地包括使用BOSH連接與客戶端應(yīng)用程序交換一個(gè)或多個(gè)應(yīng)用程序簡(jiǎn)檔,該應(yīng)用程序簡(jiǎn)檔以用于服務(wù)器應(yīng)用程序和客戶端應(yīng)用程序的XMPP格式來定義能力和結(jié)構(gòu)化語(yǔ)法。
[0051 ] 在示例12中,示例8— 11中的一個(gè)或任何組合的主題可以可選地包括使用XML節(jié)來與客戶端應(yīng)用程序通信,XML節(jié)提供用于與一個(gè)或多個(gè)客戶端應(yīng)用程序進(jìn)行XMPP格式化通信的結(jié)構(gòu)化語(yǔ)法。
[0052]在示例13中,示例8 —12中的一個(gè)或任何組合的主題可以可選地包括從服務(wù)器應(yīng)用程序提供的元數(shù)據(jù)流,其與由服務(wù)器設(shè)備處理的多媒體內(nèi)容相關(guān)聯(lián),并且其中,該元數(shù)據(jù)包括來自在服務(wù)器設(shè)備處接收到的用于多媒體內(nèi)容的隱藏字幕文本或副標(biāo)題文本中的一個(gè)或多個(gè)的文本。
[0053]在示例14中可包括或者可以可選地將其與示例I一 13中的一個(gè)或任何組合的主題組合以包括用于從遠(yuǎn)程應(yīng)用程序獲得元數(shù)據(jù)流的方法,包括:
在本地網(wǎng)絡(luò)應(yīng)用程序與遠(yuǎn)程應(yīng)用程序之間建立持續(xù)HTTP上雙向流(BOSH)連接,該本地網(wǎng)絡(luò)應(yīng)用程序在瀏覽器內(nèi)執(zhí)行;
使用BOSH連接從遠(yuǎn)程應(yīng)用程序接收可擴(kuò)展通訊和到場(chǎng)協(xié)議(XMPP)數(shù)據(jù)傳輸,其中,XMPP數(shù)據(jù)傳輸從遠(yuǎn)程應(yīng)用程序提供元數(shù)據(jù)以便與本地網(wǎng)絡(luò)應(yīng)用程序一起使用;以及在本地網(wǎng)絡(luò)應(yīng)用程序內(nèi)從元數(shù)據(jù)提取值。
[0054]在示例15中,示例14的主題可以可選地包括由瀏覽器通過使用腳本庫(kù)來建立BOSH連接,該腳本庫(kù)提供用于在瀏覽器內(nèi)的運(yùn)行時(shí)間執(zhí)行的至少一個(gè)BOSH連接部件。
[0055]在示例16中,示例14一 15中的一個(gè)或任何組合的主題可以可選地包括用符合HTML5標(biāo)記標(biāo)準(zhǔn)的瀏覽器可呈現(xiàn)標(biāo)記語(yǔ)言來編碼的本地網(wǎng)絡(luò)應(yīng)用程序,其中,用符合JavaScript腳本語(yǔ)言標(biāo)準(zhǔn)的腳本語(yǔ)言對(duì)腳本庫(kù)進(jìn)行編碼,并且其中,所述瀏覽器被進(jìn)一步配置成呈現(xiàn)用符合HTML5標(biāo)記語(yǔ)言標(biāo)準(zhǔn)的標(biāo)記語(yǔ)言和符合JavaScript腳本語(yǔ)言標(biāo)準(zhǔn)的腳本語(yǔ)言編碼的網(wǎng)絡(luò)應(yīng)用程序。
[0056]在示例17中,示例14一 16中的一個(gè)或任何組合的主題可以可選地包括
使用BOSH連接來傳輸應(yīng)用程序簡(jiǎn)檔,該應(yīng)用程序簡(jiǎn)檔以用于本地網(wǎng)絡(luò)應(yīng)用程序和遠(yuǎn)程應(yīng)用程序的XMPP格式來定義能力和結(jié)構(gòu)化語(yǔ)法;
其中,所述XMPP數(shù)據(jù)傳輸使用以XML格式定義的節(jié),該節(jié)提供用于與本地網(wǎng)絡(luò)應(yīng)用程序的XMPP數(shù)據(jù)傳輸?shù)慕Y(jié)構(gòu)化語(yǔ)法。
[0057]在示例18中可包括或者可以可選地將其與示例1-17中的一個(gè)或任何組合的主題組合以包括用于向遠(yuǎn)程網(wǎng)絡(luò)應(yīng)用程序傳輸元數(shù)據(jù)流的方法,包括:
在服務(wù)器處建立在服務(wù)器處操作的本地應(yīng)用程序與遠(yuǎn)程網(wǎng)絡(luò)應(yīng)用程序之間的BOSH持續(xù)HTTP上雙向流連接,該遠(yuǎn)程網(wǎng)絡(luò)應(yīng)用程序在瀏覽器內(nèi)執(zhí)行;以及
使用BOSH連接從服務(wù)器向遠(yuǎn)程網(wǎng)絡(luò)應(yīng)用程序傳輸XMPP可擴(kuò)展通訊和到場(chǎng)協(xié)議數(shù)據(jù)傳輸,其中,XMPP數(shù)據(jù)傳輸從本地應(yīng)用程序向遠(yuǎn)程網(wǎng)絡(luò)應(yīng)用程序提供元數(shù)據(jù)。
[0058]在示例19中,示例18的主題可以可選地包括本地應(yīng)用程序是在本地瀏覽器中執(zhí)行且用符合HTML5標(biāo)記標(biāo)準(zhǔn)的瀏覽器可呈現(xiàn)標(biāo)記語(yǔ)言來編碼的本地網(wǎng)絡(luò)應(yīng)用程序,其中,用符合JavaScript腳本語(yǔ)言標(biāo)準(zhǔn)的腳本語(yǔ)言對(duì)腳本庫(kù)進(jìn)行編碼,并且其中,所述本地瀏覽器被進(jìn)一步配置成呈現(xiàn)用符合HTML5標(biāo)記語(yǔ)言標(biāo)準(zhǔn)的標(biāo)記語(yǔ)言和符合JavaScript腳本語(yǔ)言標(biāo)準(zhǔn)的腳本語(yǔ)言編碼的網(wǎng)絡(luò)應(yīng)用程序。
[0059]在示例20中,示例18 —19中的一個(gè)或任何組合的主題可以可選地包括
使用BOSH連接來接收應(yīng)用程序簡(jiǎn)檔,該應(yīng)用程序簡(jiǎn)檔以用于本地應(yīng)用程序和遠(yuǎn)程網(wǎng)絡(luò)應(yīng)用程序的XMPP格式來定義能力和結(jié)構(gòu)化語(yǔ)法;
其中,所述XMPP數(shù)據(jù)傳輸使用以XML格式定義的節(jié),該節(jié)提供用于與遠(yuǎn)程網(wǎng)絡(luò)應(yīng)用程序進(jìn)行XMPP數(shù)據(jù)傳輸?shù)慕Y(jié)構(gòu)化語(yǔ)法。
[0060]在示例21中,示例I一20中的一個(gè)或任何組合的主題可以可選地包括至少一個(gè)機(jī)器可讀存儲(chǔ)介質(zhì),其包括多個(gè)指令,該指令響應(yīng)于在計(jì)算設(shè)備上執(zhí)行而促使計(jì)算設(shè)備結(jié)合示例I一20的方法或設(shè)備配置來執(zhí)行動(dòng)作或步驟。
[0061]在示例22中可包括或者可以可選地將其與示例I一21中的一個(gè)或任何組合的主題組合以包括系統(tǒng),該系統(tǒng)包括: 第一平臺(tái),提供可擴(kuò)展通訊和到場(chǎng)協(xié)議(XMPP)服務(wù)器和服務(wù)器應(yīng)用程序,該XMPP服務(wù)器被配置成使用一個(gè)或多個(gè)持續(xù)HTTP上雙向流(BOSH)連接進(jìn)行通信;以及
第二平臺(tái),提供XMPP客戶端和客戶端應(yīng)用程序,該XMPP客戶端被配置成使用與第一平臺(tái)的BOSH連接來與XMPP服務(wù)器通信;
其中,與第一平臺(tái)的BOSH連接被用來在第一平臺(tái)與第二平臺(tái)之間建立連續(xù)連接并在從服務(wù)器應(yīng)用程序到客戶端應(yīng)用程序的XMPP通信中傳送元數(shù)據(jù)流;以及
其中,根據(jù)提供結(jié)構(gòu)化語(yǔ)法的XML節(jié)來進(jìn)行經(jīng)由與第一平臺(tái)的BOSH連接發(fā)生的XMPP通信。
[0062]在示例23中,示例22的主題可以可選地包括第三平臺(tái),其中,所述第一平臺(tái)可作為代理進(jìn)行操作以從第二平臺(tái)向第三平臺(tái)傳輸由第一平臺(tái)經(jīng)由BOSH連接接收到的數(shù)據(jù)。
[0063]在示例24中,示例22— 23中的一個(gè)或任何組合的主題可以可選地包括經(jīng)由BOSH連接發(fā)生的XMPP通信,包括以下各項(xiàng)中的一個(gè)或多個(gè):被配置成控制元數(shù)據(jù)流到客戶端應(yīng)用程序的傳輸?shù)囊粋€(gè)或多個(gè)命令;或一個(gè)或多個(gè)應(yīng)用程序簡(jiǎn)檔,該應(yīng)用程序簡(jiǎn)檔以用于客戶端應(yīng)用程序的XMPP格式來定義能力和結(jié)構(gòu)化語(yǔ)法。
[0064]在示例25中,示例22— 24中的一個(gè)或任何組合的主題可以可選地包括所述客戶端應(yīng)用程序,其由在第二平臺(tái)上的瀏覽器中操作的網(wǎng)絡(luò)應(yīng)用程序提供,其中,該網(wǎng)絡(luò)應(yīng)用程序是用符合HTML5標(biāo)記語(yǔ)言標(biāo)準(zhǔn)的瀏覽器可呈現(xiàn)標(biāo)記語(yǔ)言編碼的,并且其中,所述XMPP客戶端由用符合JavaScript腳本語(yǔ)言標(biāo)準(zhǔn)的腳本語(yǔ)言編碼且執(zhí)行在瀏覽器中的腳本庫(kù)提供。
[0065]在示例26中,示例22—25中的一個(gè)或任何組合的主題可以可選地包括第一平臺(tái),其是與被配置成在元數(shù)據(jù)流中傳輸隱藏字幕或副標(biāo)題的電視或機(jī)頂盒相結(jié)合地提供的,并且其中,第二平臺(tái)是與被配置成接收元數(shù)據(jù)流的平板計(jì)算機(jī)相結(jié)合地提供的。
[0066]提供本公開的摘要是為了允許讀者確定技術(shù)公開的本質(zhì)和主旨。其是在理解其將不會(huì)被用來限制或解釋權(quán)利要求的范圍或意義的情況下提交的。以下權(quán)利要求由此被結(jié)合到【具體實(shí)施方式】中,其中每個(gè)權(quán)利要求作為單獨(dú)的實(shí)施例而獨(dú)立。
【權(quán)利要求】
1.一種客戶端設(shè)備,包括: 至少一個(gè)處理器; 至少一個(gè)存儲(chǔ)器設(shè)備; 至少一個(gè)瀏覽器; 至少一個(gè)腳本庫(kù),可在瀏覽器中執(zhí)行且被配置成在客戶端設(shè)備與服務(wù)器之間建立一個(gè)或多個(gè)BOSH持續(xù)HTTP上雙向流連接;以及 至少一個(gè)網(wǎng)絡(luò)應(yīng)用程序,可在瀏覽器中執(zhí)行并被配置成實(shí)現(xiàn)腳本庫(kù)以使用BOSH連接從服務(wù)器接收一個(gè)或多個(gè)XMPP可擴(kuò)展通訊和到場(chǎng)協(xié)議數(shù)據(jù)傳輸,其中,所述XMPP數(shù)據(jù)傳輸提供來自在服務(wù)器上操作的一個(gè)或多個(gè)應(yīng)用程序的元數(shù)據(jù)流; 其中,所述存儲(chǔ)器設(shè)備提供存儲(chǔ)在其中的多個(gè)指令,其在被處理器執(zhí)行時(shí)促使處理器執(zhí)行指令,該指令執(zhí)行所述瀏覽器、所述至少一個(gè)腳本庫(kù)以及所述至少一個(gè)網(wǎng)絡(luò)應(yīng)用程序。
2.權(quán)利要求1的客戶端設(shè)備,所述網(wǎng)絡(luò)應(yīng)用程序還被配置成: 使用BOSH連接在一個(gè)或多個(gè)XMPP命令傳輸中從網(wǎng)絡(luò)應(yīng)用程序向服務(wù)器傳輸一個(gè)或多個(gè)命令,該命令用來控制從服務(wù)器到網(wǎng)絡(luò)應(yīng)用程序的元數(shù)據(jù)流的傳輸。
3.權(quán)利要求1的客戶端設(shè)備,其中,所述BOSH連接由瀏覽器使用在網(wǎng)絡(luò)應(yīng)用程序中執(zhí)行的腳本庫(kù)建立,該腳本庫(kù)提供到瀏覽器的一個(gè)或多個(gè)運(yùn)行時(shí)間執(zhí)行BOSH連接部件。
4.權(quán)利要求3的客戶端設(shè)備,其中,所述網(wǎng)絡(luò)應(yīng)用程序被用符合HTML5標(biāo)記語(yǔ)言標(biāo)準(zhǔn)的瀏覽器可呈現(xiàn)標(biāo)記語(yǔ)言編碼,其中,所述腳本庫(kù)被用符合JavaScript腳本語(yǔ)言標(biāo)準(zhǔn)的腳本語(yǔ)言編碼,并且其中,瀏覽器圖形用戶接口還被配置成提供以符合HTML5標(biāo)記語(yǔ)言標(biāo)準(zhǔn)的標(biāo)記語(yǔ)言和符合JavaScript腳本語(yǔ)言標(biāo)準(zhǔn)的腳本語(yǔ)言編碼的網(wǎng)絡(luò)應(yīng)用程序。
5.權(quán)利要求1的客戶端設(shè)備,所述網(wǎng)絡(luò)應(yīng)用程序還被配置成: 使用BOSH連接與服務(wù)器交換一個(gè)或多個(gè)應(yīng)用程序簡(jiǎn)檔,該應(yīng)用程序簡(jiǎn)檔以用于網(wǎng)絡(luò)應(yīng)用程序和在服務(wù)器上操作的應(yīng)用程序的XMPP格式來定義能力和結(jié)構(gòu)化語(yǔ)法。
6.權(quán)利要求1的客戶端設(shè)備,所述網(wǎng)絡(luò)應(yīng)用程序還被配置成: 使用針對(duì)網(wǎng)絡(luò)應(yīng)用程序定義的XML節(jié)與服務(wù)器通信,該XML節(jié)提供用于與網(wǎng)絡(luò)應(yīng)用程序進(jìn)行XMPP數(shù)據(jù)傳輸?shù)慕Y(jié)構(gòu)化語(yǔ)法。
7.權(quán)利要求1的客戶端設(shè)備,其中,從在服務(wù)器上操作的應(yīng)用程序提供的元數(shù)據(jù)流與多媒體內(nèi)容相關(guān)聯(lián),并且其中,所述元數(shù)據(jù)包括來自針對(duì)多媒體內(nèi)容的隱藏字幕文本或副標(biāo)題文本中的一個(gè)或多個(gè)的文本。
8.一種服務(wù)器設(shè)備,包括: 至少一個(gè)處理器; 至少一個(gè)存儲(chǔ)器設(shè)備;以及 至少一個(gè)服務(wù)器應(yīng)用程序,用于向在客戶端設(shè)備處的一個(gè)或多個(gè)客戶端應(yīng)用程序提供元數(shù)據(jù)流,該服務(wù)器應(yīng)用程序被配置成: 在服務(wù)器應(yīng)用程序與客戶端應(yīng)用程序之間建立BOSH持續(xù)HTTP上雙向流連接;以及使用BOSH連接從服務(wù)器應(yīng)用程序向客戶端應(yīng)用程序傳輸一個(gè)或多個(gè)數(shù)據(jù)傳輸,該數(shù)據(jù)傳輸包括提供元數(shù)據(jù)流的XMPP可擴(kuò)展通訊和到場(chǎng)協(xié)議格式化通信; 其中,所述存儲(chǔ)器設(shè)備提供存儲(chǔ)在其中的多個(gè)指令,其在被處理器執(zhí)行時(shí)促使處理器執(zhí)行指令,該指令執(zhí)行服務(wù)器應(yīng)用程序。
9.權(quán)利要求8的服務(wù)器設(shè)備,所述服務(wù)器應(yīng)用程序還被配置成: 使用BOSH連接在一個(gè)或多個(gè)XMPP命令傳輸中從客戶端應(yīng)用程序向服務(wù)器應(yīng)用程序接收一個(gè)或多個(gè)命令,該命令用來控制元數(shù)據(jù)流到客戶端應(yīng)用程序的傳輸。
10.權(quán)利要求8的服務(wù)器設(shè)備,其中,所述服務(wù)器應(yīng)用程序由與瀏覽器相結(jié)合地執(zhí)行的一個(gè)或多個(gè)網(wǎng)絡(luò)應(yīng)用程序或網(wǎng)頁(yè)提供,該網(wǎng)絡(luò)應(yīng)用程序或網(wǎng)頁(yè)使用符合HTML5標(biāo)記語(yǔ)言標(biāo)準(zhǔn)的標(biāo)記語(yǔ)言和符合JavaScript腳本語(yǔ)言標(biāo)準(zhǔn)的腳本語(yǔ)言。
11.權(quán)利要求8的服務(wù)器設(shè)備,所述服務(wù)器應(yīng)用程序還被配置成: 使用BOSH連接與客戶端應(yīng)用程序交換一個(gè)或多個(gè)應(yīng)用程序簡(jiǎn)檔,該應(yīng)用程序簡(jiǎn)檔以用于服務(wù)器應(yīng)用程序和客戶端應(yīng)用程序的XMPP格式來定義能力和結(jié)構(gòu)化語(yǔ)法。
12.權(quán)利要求8的服務(wù)器設(shè)備,所述服務(wù)器應(yīng)用程序還被配置成: 使用XML節(jié)與客戶端應(yīng)用程序通信,該XML節(jié)提供用于與客戶端應(yīng)用程序進(jìn)行XMPP格式通信的結(jié)構(gòu)化語(yǔ)法。
13.權(quán)利要求8的服務(wù)器設(shè)備,其中,從服務(wù)器應(yīng)用程序提供的元數(shù)據(jù)流與由服務(wù)器設(shè)備處理的多媒體內(nèi)容相關(guān)聯(lián),并且其中,所述元數(shù)據(jù)包括來自在服務(wù)器設(shè)備處針對(duì)多媒體內(nèi)容接收到的隱藏字幕文本或副標(biāo)題文本中的一個(gè)或多個(gè)的文本。
14.一種用于從遠(yuǎn)程應(yīng)用程序獲得元數(shù)據(jù)流的計(jì)算機(jī)實(shí)現(xiàn)方法,包括: 在客戶端設(shè)備處建立在客戶端設(shè)備上操作的本地網(wǎng)絡(luò)應(yīng)用程序與在遠(yuǎn)程設(shè)備上操作的遠(yuǎn)程應(yīng)用程序之間的BOSH持續(xù)HTTP上雙向流連接,所述本地網(wǎng)絡(luò)應(yīng)用程序在瀏覽器內(nèi)執(zhí)行; 使用BOSH連接從遠(yuǎn)程應(yīng)用程序接收XMPP可擴(kuò)展通訊和到場(chǎng)協(xié)議數(shù)據(jù)傳輸,其中,XMPP數(shù)據(jù)傳輸提供來自遠(yuǎn)程應(yīng)用程序的元數(shù)據(jù)以便與本地網(wǎng)絡(luò)應(yīng)用程序一起使用;以及 在本地網(wǎng)絡(luò)應(yīng)用程序內(nèi)從元數(shù)據(jù)提取值。
15.權(quán)利要求14的方法,其中,所述BOSH連接由瀏覽器通過使用腳本庫(kù)而建立,該腳本庫(kù)提供用于在瀏覽器內(nèi)的運(yùn)行時(shí)間執(zhí)行的至少一個(gè)BOSH連接。
16.權(quán)利要求15的方法,其中,所述本地網(wǎng)絡(luò)應(yīng)用程序被用符合HTML5標(biāo)記語(yǔ)言標(biāo)準(zhǔn)的瀏覽器可呈現(xiàn)標(biāo)記語(yǔ)言編碼,其中,所述腳本庫(kù)被用符合JavaScript腳本語(yǔ)言標(biāo)準(zhǔn)的腳本語(yǔ)言編碼,并且其中,瀏覽器還被配置成提供以符合HTML5標(biāo)記語(yǔ)言標(biāo)準(zhǔn)的標(biāo)記語(yǔ)言和符合JavaScript腳本語(yǔ)言標(biāo)準(zhǔn)的腳本語(yǔ)言編碼的網(wǎng)絡(luò)應(yīng)用程序。
17.權(quán)利要求14的方法,還包括: 使用BOSH連接來傳輸應(yīng)用程序簡(jiǎn)檔,該應(yīng)用程序簡(jiǎn)檔針對(duì)本地網(wǎng)絡(luò)應(yīng)用程序和遠(yuǎn)程應(yīng)用程序以XMPP格式來定義能力和結(jié)構(gòu)化語(yǔ)法; 其中,所述XMPP數(shù)據(jù)傳輸使用以XML格式定義的節(jié),該節(jié)提供用于與本地網(wǎng)絡(luò)應(yīng)用程序進(jìn)行XMPP數(shù)據(jù)傳輸?shù)慕Y(jié)構(gòu)化語(yǔ)法。
18.包括多個(gè)指令的至少一個(gè)機(jī)器可讀存儲(chǔ)介質(zhì),所述多個(gè)指令響應(yīng)于在計(jì)算設(shè)備上執(zhí)行而促使該計(jì)算設(shè)備執(zhí)行權(quán)利要求14一 17中的任一項(xiàng)的方法。
19.一種用于向遠(yuǎn)程網(wǎng)絡(luò)應(yīng)用程序傳輸元數(shù)據(jù)流的計(jì)算機(jī)實(shí)現(xiàn)方法,包括: 在服務(wù)器處建立在服務(wù)器處操作的本地應(yīng)用程序與遠(yuǎn)程網(wǎng)絡(luò)應(yīng)用程序之間的BOSH持續(xù)HTTP上雙向流連接,該遠(yuǎn)程網(wǎng)絡(luò)應(yīng)用程序在瀏覽器內(nèi)執(zhí)行;以及 使用BOSH連接從服務(wù)器向遠(yuǎn)程網(wǎng)絡(luò)應(yīng)用程序傳輸XMPP可擴(kuò)展通訊和到場(chǎng)協(xié)議數(shù)據(jù)傳輸,其中,XMPP數(shù)據(jù)傳輸從本地應(yīng)用程序向遠(yuǎn)程網(wǎng)絡(luò)應(yīng)用程序提供元數(shù)據(jù)。
20.權(quán)利要求15的方法,其中,所述本地應(yīng)用程序是在本地瀏覽器中執(zhí)行并以符合HTML5標(biāo)記語(yǔ)言標(biāo)準(zhǔn)的瀏覽器可呈現(xiàn)標(biāo)記語(yǔ)言而編碼的本地網(wǎng)絡(luò)應(yīng)用程序,其中,所述腳本庫(kù)被用符合JavaScript腳本語(yǔ)言標(biāo)準(zhǔn)的腳本語(yǔ)言編碼,并且其中,所述本地瀏覽器還被配置成提供以符合HTML5標(biāo)記語(yǔ)言標(biāo)準(zhǔn)的標(biāo)記語(yǔ)言和符合JavaScript腳本語(yǔ)言標(biāo)準(zhǔn)的腳本語(yǔ)言編碼的網(wǎng)絡(luò)應(yīng)用程序。
21.權(quán)利要求14的方法,還包括: 使用BOSH連接來接收應(yīng)用程序簡(jiǎn)檔,該應(yīng)用程序簡(jiǎn)檔針對(duì)本地應(yīng)用程序和遠(yuǎn)程網(wǎng)絡(luò)應(yīng)用程序以XMPP格式來定義能力和結(jié)構(gòu)化語(yǔ)法; 其中,所述XMPP數(shù)據(jù)傳輸使用以XML格式定義的節(jié),該節(jié)提供用于與遠(yuǎn)程網(wǎng)絡(luò)應(yīng)用程序進(jìn)行XMPP數(shù)據(jù)傳輸?shù)慕Y(jié)構(gòu)化語(yǔ)法。
22.包括多個(gè)指令的至少一個(gè)機(jī)器可讀存儲(chǔ)介質(zhì),所述多個(gè)指令響應(yīng)于在計(jì)算設(shè)備上執(zhí)行而促使該計(jì)算設(shè)備執(zhí)行權(quán)利要求19 一 21中的任一項(xiàng)的方法。
23.—種系統(tǒng),包括: 第一平臺(tái),提供XMPP可擴(kuò)展通訊和到場(chǎng)協(xié)議服務(wù)器和服務(wù)器應(yīng)用程序,該XMPP服務(wù)器被配置成使用一個(gè)或多個(gè)BOSH持續(xù)HTTP上雙向流連接進(jìn)行通信;以及 第二平臺(tái),提供XMPP客戶端和客戶端應(yīng)用程序,該XMPP客戶端被配置成使用BOSH連接來與XMPP服務(wù)器通信; 其中,BOSH連接被用來在第一平臺(tái)與第二平臺(tái)之間建立連續(xù)連接并在從服務(wù)器應(yīng)用程序到客戶端應(yīng)用程序的XMPP通信中傳送元數(shù)據(jù)流;以及 其中,根據(jù)提供結(jié)構(gòu)化語(yǔ)法的XML節(jié)來進(jìn)行經(jīng)由BOSH連接發(fā)生的XMPP通信。
24.權(quán)利要求23的系統(tǒng),還包括: 第三平臺(tái),其中,所述第一平臺(tái)可作為代理進(jìn)行操作以從第二平臺(tái)向第三平臺(tái)傳輸由第一平臺(tái)經(jīng)由BOSH連接接收到的數(shù)據(jù)。
25.權(quán)利要求23的系統(tǒng),其中,經(jīng)由BOSH連接發(fā)生的XMPP通信包括以下各項(xiàng)中的一個(gè)或多個(gè): 一個(gè)或多個(gè)命令,被配置成控制元數(shù)據(jù)流到客戶端應(yīng)用程序的傳輸;或者 一個(gè)或多個(gè)應(yīng)用程序簡(jiǎn)檔,所述應(yīng)用程序簡(jiǎn)檔以用于客戶端應(yīng)用程序的XMPP格式來定義能力和結(jié)構(gòu)化語(yǔ)法。
26.權(quán)利要求23的系統(tǒng),其中,所述客戶端應(yīng)用程序由在第二平臺(tái)上的瀏覽器中操作的網(wǎng)絡(luò)應(yīng)用程序提供,其中,所述網(wǎng)絡(luò)應(yīng)用程序是以符合HTML5標(biāo)記語(yǔ)言標(biāo)準(zhǔn)的瀏覽器可呈現(xiàn)標(biāo)記語(yǔ)言編碼的,并且其中,所述XMPP客戶端由以符合JavaScript腳本語(yǔ)言標(biāo)準(zhǔn)的腳本語(yǔ)言編碼且在瀏覽器中執(zhí)行的腳本庫(kù)提供。
27.權(quán)利要求23的系統(tǒng),其中,所述第一平臺(tái)是與被配置成在元數(shù)據(jù)流中傳輸隱藏字幕或副標(biāo)題的電視或機(jī)頂盒相結(jié)合而提供的,并且其中,所述第二平臺(tái)是與被配置成接收元數(shù)據(jù)流的平板計(jì)算機(jī)相結(jié)合而提供的。
【文檔編號(hào)】G06F9/44GK104169898SQ201180075985
【公開日】2014年11月26日 申請(qǐng)日期:2011年12月28日 優(yōu)先權(quán)日:2011年12月28日
【發(fā)明者】R.施陶丁格, C.奧喬亞, V.什拉伊, S.莫 申請(qǐng)人:英特爾公司