專利名稱:用于基于服務(wù)器或?qū)Φ染W(wǎng)絡(luò)環(huán)境的裝置控制系統(tǒng)、方法和設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明通常關(guān)注于裝置控制。尤其是,本發(fā)明涉及用于在基于服 務(wù)器或?qū)Φ?peer-to-peer)網(wǎng)絡(luò)環(huán)境中控制電子裝置的系統(tǒng)、方法和 設(shè)備。
背景技術(shù):
數(shù)量不斷增長和多樣化的遙控電子裝置被用在家庭和辦公室環(huán) 境。這些設(shè)備包括適合于通過有線或無線網(wǎng)絡(luò)控制的電子裝置,例如 遵守UPnpTM協(xié)議的裝置,又如適合于通過手持遙控實現(xiàn)紅外(IR) 或串行指令碼的傳統(tǒng)消費電子裝置。常規(guī)裝置控制解決方案不能提供用于通過統(tǒng)一接口控制前述裝 置的方法,諸如通過單一手持控制器。而且,常規(guī)裝置控制解決方案 不能夠提供在對等網(wǎng)絡(luò)環(huán)境中多數(shù)這樣的控制器之間確保同步的裝 置,在這樣的控制器之間傳遞定制配置的裝置,或者將這樣的控制器 從對等網(wǎng)絡(luò)環(huán)境轉(zhuǎn)換到基于服務(wù)器的網(wǎng)絡(luò)環(huán)境中的裝置,反之亦然。發(fā)明內(nèi)容在此公開的發(fā)明用于一種裝置控制系統(tǒng)中,該系統(tǒng)提供一種通過 統(tǒng)一接口控制各種裝置類型的裝置,諸如通過手持控制器。依據(jù)本發(fā) 明,同步協(xié)議確保在對等網(wǎng)絡(luò)中的多數(shù)這樣的控制器之間的同步,提供一種在這樣的控制器之間傳遞定制配置的裝置,以及提供一種將這 樣的控制器從對等網(wǎng)絡(luò)環(huán)境轉(zhuǎn)換到基于服務(wù)器的網(wǎng)絡(luò)環(huán)境中的裝置。尤其是,本發(fā)明的一個實施例提供一種用于同步第一控制器與第 二控制器的方法,第一和第二控制器中的每個適合于遙控一個或多個 電子裝置。該方法包括發(fā)現(xiàn)第二控制器,生成用于同步第一和第二控 制器的第 一控制器同步數(shù)據(jù),以及發(fā)送涉及第 一控制器同步數(shù)據(jù)的消 息到第二控制器。響應(yīng)改變一個或多個電子裝置之一的配置、狀態(tài)和 /或操作的命令的執(zhí)行,響應(yīng)改變第一控制器的控制配置的命令的執(zhí) 行,或響應(yīng)在一個或多個電子裝置中至少一個的配置、狀態(tài)和/或操作 中檢測到的改變,生成第一控制器同步數(shù)據(jù)。在本發(fā)明的另一個實施例中,提供一種用于遙控一個或多個電子 裝置的設(shè)備。該設(shè)備包括適合于在網(wǎng)絡(luò)上通信的網(wǎng)絡(luò)接口,適合于接 收用戶輸入的用戶接口 ,以及耦合到網(wǎng)絡(luò)接口和用戶接口并且適合于 響應(yīng)用戶輸入執(zhí)行命令的控制邏輯??刂七壿嬤M一步適合于發(fā)現(xiàn)用于 控制可通信地耦合到網(wǎng)絡(luò)的一個或多個電子裝置的第二設(shè)備,以及為 同步該設(shè)備與第二設(shè)備生成同步數(shù)據(jù),以及通過網(wǎng)絡(luò)接口將涉及同步 數(shù)據(jù)的消息發(fā)送到第二設(shè)備。響應(yīng)改變一個或多個電子裝置中的一個 的配置、狀態(tài)和/或操作的命令執(zhí)行,響應(yīng)改變設(shè)備的控制配置的命令 的執(zhí)行,或響應(yīng)在一個或多個電子裝置中至少一個的配置、狀態(tài)和/ 或操作中檢測到的改變,生成同步數(shù)據(jù)。在本發(fā)明的一個進一步的實施例中,提供用于裝置控制的系統(tǒng)。 該系統(tǒng)包括電子裝置和通信地耦合到電子裝置的第一和笫二控制器, 其互相通過網(wǎng)絡(luò)耦合,諸如通過無線網(wǎng)。第一和第二控制器中的每個 適合于通過網(wǎng)絡(luò)遙控電子裝置。第一控制器進一步適合于發(fā)現(xiàn)第二控 制器,以為同步第一和第二控制器生成第一控制器同步數(shù)據(jù),以及在 網(wǎng)絡(luò)上將涉及第 一控制器同步數(shù)據(jù)的消息發(fā)送到第二控制器??梢皂?應(yīng)改變電子裝置的配置、狀態(tài)和/或操作的命令的執(zhí)行,響應(yīng)改變第一 控制器的控制配置的命令的執(zhí)行,或響應(yīng)在電子裝置的配置、狀態(tài)和 /或操作中檢測的改變,生成第一控制器同步數(shù)據(jù)。在本發(fā)明的另 一個實施例中,提供一種同步第 一控制器與第二控 制器的方法,其中第一和第二控制器中的每一個適合于遙控一個或多 個電子裝置。該方法包括發(fā)現(xiàn)第二控制器,將涉及先前同步以后已經(jīng) 發(fā)生的一個或多個第一控制器事件的笫一數(shù)據(jù)發(fā)送到第二控制器,以 及從第二控制器接收涉及先前同步以后已經(jīng)發(fā)生的一個或多個第二 控制器事件的第二數(shù)據(jù)。該方法也包括基于第一和第二數(shù)據(jù)更新事件 日志,進一 步進行將涉及第 一控制器事件的數(shù)據(jù)與涉及第二控制器事 件的數(shù)據(jù)比較,如果涉及第一控制器事件的數(shù)據(jù)與涉及第二控制器事 件的數(shù)據(jù)沖突,只有當與第一控制器事件關(guān)聯(lián)的時間戳早于與第二控 制事件關(guān)聯(lián)的時間戳時,更新事件日志。該方法可以進一步包括基于 第二數(shù)據(jù)改變第一控制器的控制配置以匹配第二控制器的控制配置。在另一個實施例中,提供一種遙控一個或多個電子裝置的設(shè)備。 該裝置包括適合在網(wǎng)絡(luò)上通信的網(wǎng)絡(luò)接口,適合于接收用戶輸入的用 戶接口 ,以及耦合到網(wǎng)絡(luò)接口和用戶接口的適合于響應(yīng)用戶輸入執(zhí)行 命令的控制邏輯。該控制邏輯進一步適合于發(fā)現(xiàn)第二設(shè)備,用于控制 通信地耦合到網(wǎng)絡(luò)的一個或多個電子裝置,將涉及到先前同步以后已 經(jīng)發(fā)生的一個或多個第一控制器事件的第一數(shù)據(jù)發(fā)送到第二設(shè)備,以 及從第二設(shè)備接收涉及先前同步以后已經(jīng)發(fā)生的一個或多個第二控 制器事件的第二數(shù)據(jù)。控制邏輯可以進一步適合于基于第一和第二數(shù) 據(jù)更新存儲在存儲器中的事件日志,可以進一步進行將涉及第一控制 器事件的數(shù)據(jù)與涉及第二控制器事件的數(shù)據(jù)相比,如果涉及第一控制 器事件的數(shù)據(jù)與涉及第二控制器事件的數(shù)據(jù)沖突,只有當與第一控制 器事件關(guān)聯(lián)的時間戳早于與第二控制器事件時,更新事件日志??刂?邏輯可以進一步適合于基于笫二數(shù)據(jù)改變設(shè)備的控制配置以匹配第 二設(shè)備的控制配置。在一個進一步的實施例中,提供一種用于裝置控制的系統(tǒng)。該系 統(tǒng)包括電子裝置和通信地耦合到電子裝置并且通過網(wǎng)絡(luò)互相耦合的 第一和第二控制器,所述網(wǎng)絡(luò)是諸如無線網(wǎng)絡(luò)。第一和第二控制器中的每個適合于通過網(wǎng)絡(luò)遙控電子裝置。第一控制器進一步適合于發(fā)現(xiàn)第二控制器,以將涉及到先前同步以后已經(jīng)發(fā)生的 一個或多個第 一控 制器事件的第一數(shù)據(jù)發(fā)送到第二控制器,以及從第二控制器接收涉及 先前同步以后已經(jīng)發(fā)生的一個或多個第二控制器事件的第二數(shù)據(jù)。第 一控制器可以進一步適合于基于第一和第二數(shù)據(jù)更新事件日志,可以 進一步進行將涉及第一控制器事件的數(shù)據(jù)與涉及第二控制器事件的 數(shù)據(jù)相比,如果涉及第一控制器事件的數(shù)據(jù)與涉及第二控制器事件的 數(shù)據(jù)沖突,只有當與第 一控制器事件關(guān)聯(lián)的時間戳早于與第二控制器 事件時,更新事件日志。第一控制器可以進一步適合于基于笫二數(shù)據(jù) 改變第一控制器的控制配置以匹配第二設(shè)備的控制配置。在另一實施例中,提供一種將適合于遙控一個或多個電子裝置的控制器從獨立模式(stand-alone)轉(zhuǎn)換到客戶-服務(wù)器模式的方法。 初始的,依據(jù)由控制器在獨立模式維持的控制配置,控制器遙控一個 或多個電子裝置。該方法包括發(fā)現(xiàn)服務(wù)器,將涉及由控制器維持的控 制配置的數(shù)據(jù)發(fā)送到服務(wù)器,以及隨后依據(jù)由服務(wù)器維持的控制配置 控制一個或多個電子裝置。在另一實施例中,提供一種遙控一個或多個電子裝置的設(shè)備。該 設(shè)備包括適合于在網(wǎng)絡(luò)上通信的網(wǎng)絡(luò)接口 ,適合于接收用戶輸入的用 戶接口 ,以及耦合到網(wǎng)絡(luò)接口和用戶接口和適合于執(zhí)行響應(yīng)用戶輸入 的命令的控制邏輯??刂七壿嬤M一步適合于發(fā)現(xiàn)通信地耦合到網(wǎng)絡(luò)的 服務(wù)器,將涉及由設(shè)備維持的控制配置數(shù)據(jù)發(fā)送到服務(wù)器,隨后依據(jù) 由服務(wù)器維持的控制配置而不是依據(jù)設(shè)備維持的控制配置,控制 一個 或多個電子裝置。在一個進一步的實施例中,提供一種裝置控制系統(tǒng)。該系統(tǒng)包括 電子裝置,通過網(wǎng)絡(luò)通信地耦合到電子裝置的控制器,諸如通過無線 網(wǎng)絡(luò),控制器適合于通過網(wǎng)絡(luò)遙控電子裝置,以及通過網(wǎng)絡(luò)通信地耦 合到電子裝置和控制器的服務(wù)器??刂破鬟M一步適合于發(fā)現(xiàn)服務(wù)器, 將涉及由控制器維持的控制配置的數(shù)據(jù)發(fā)送到服務(wù)器,隨后依據(jù)由服 務(wù)器維持的控制配置而不是依據(jù)由控制器維持的控制配置,控制電子 裝置。在另 一個實施例中,提供一種將適合于遙控一個或多個電子裝置 的控制器從客戶-服務(wù)器模式轉(zhuǎn)換到獨立模式的方法。初始的,依據(jù) 由服務(wù)器維持的控制配置,控制器遙控一個或多個電子裝置。該方法 包括從服務(wù)器接收涉及由服務(wù)器維持的控制配置的數(shù)據(jù),以及隨后依 據(jù)由控制器維持的控制配置控制一個或多個電子裝置。在另一個實施例中,提供一種用于遙控一個或多個電子裝置的設(shè) 備。該設(shè)備包括適合于在網(wǎng)絡(luò)上通信的網(wǎng)絡(luò)接口,適合于接收用戶輸 入的用戶接口 ,以及耦合到網(wǎng)絡(luò)接口和用戶接口并適合于響應(yīng)用戶輸 入執(zhí)行命令的控制邏輯??刂七壿嬤M一步適合于從通信地耦合到網(wǎng)絡(luò) 的服務(wù)器接收涉及由服務(wù)器維持的控制配置的數(shù)據(jù),隨后依據(jù)由設(shè)備 維持的控制配置而不是依據(jù)由服務(wù)器維持的控制配置控制一個或多 個電子裝置。在一個進一步的實施例中,提供一種裝置控制系統(tǒng)。該系統(tǒng)包括 電子裝置,通過網(wǎng)絡(luò)通信地耦合到電子裝置的控制器,諸如通過無線 網(wǎng)絡(luò),控制器適合于通過網(wǎng)絡(luò)遙控電子裝置,以及通過網(wǎng)絡(luò)通信地耦 合到電子裝置和控制器的服務(wù)器。控制器進一步適合于從服務(wù)器接收 涉及由服務(wù)器維持的控制配置的數(shù)據(jù),隨后依據(jù)由控制器維持的控制 配置而不是由服務(wù)器維持的控制配置控制電子裝置。本發(fā)明的進一步的特征和優(yōu)點,以及本發(fā)明的各種實施例的結(jié)構(gòu) 和操作將在下面參考附圖詳細描述。應(yīng)該注意本發(fā)明并不限于在此描 述的具體實施例。在此出現(xiàn)的實施例僅僅用于說明的目的。基于在此 包含的教導,另外的實施例對相關(guān)領(lǐng)域的熟練技術(shù)人員是顯然的。
附圖,在此結(jié)合并成為說明書的一部分,與描述一起闡明了本發(fā) 明,進一步用來解釋本發(fā)明的原理,和使相關(guān)領(lǐng)域的熟練技術(shù)人員能 夠獲得和使用本發(fā)明。圖l描述了依據(jù)本發(fā)明實施例的裝置控制系統(tǒng)的元件。圖2示出了依據(jù)本發(fā)明實施例的裝置控制系統(tǒng)的具體實現(xiàn)。圖3描述了依據(jù)本發(fā)明實施例的示例控制器實現(xiàn)。圖4是依據(jù)本發(fā)明實施例由控制器存儲的各種軟件庫的概念表示。圖5示出了依據(jù)本發(fā)明實施例在裝置控制系統(tǒng)中用于同步控制 器的方法流程圖。圖6示出了依據(jù)本發(fā)明實施例在裝置控制系統(tǒng)中用于發(fā)現(xiàn)其它 控制器的方法流程圖。圖7示出了依據(jù)本發(fā)明實施例用于同步控制器的同步協(xié)議流程圖。當與附圖一起結(jié)合時,本發(fā)明的特征和優(yōu)點將從以下詳細的描述 闡明中變得更加明顯,其中相同的參考字符標識全部相應(yīng)的元件。在 附圖中,相同的參考數(shù)字通常指示同樣的,功能上相似和/或結(jié)構(gòu)上相 似的元件。在附圖中首次出現(xiàn)的元件由在相應(yīng)參考號碼最左端數(shù)字指 示。
具體實施方式
A根據(jù)本發(fā)明實施例的裝置控制系統(tǒng)圖l描述了根據(jù)本發(fā)明一個實施例的示例裝置控制系統(tǒng)100。應(yīng) 該理解,示出的示例裝置控制系統(tǒng)100僅僅為了說明的目的而不是為 了限制本發(fā)明?;谠诖税慕虒?,示例裝置控制系統(tǒng)100的其他 實現(xiàn)對相關(guān)領(lǐng)域的熟練技術(shù)人員是顯然的,本發(fā)明旨在這樣其他的實 現(xiàn)。如圖1示出的,示例裝置控制系統(tǒng)100包括多個控制器102a到 102n,以及一個或多個電子裝置104a到104n,每個通信地耦合到網(wǎng) 絡(luò)106。在一個實施例中,網(wǎng)絡(luò)106包括一個住宅網(wǎng)絡(luò),用于通信地 連接在一個家庭內(nèi)的裝置。根據(jù)這樣的實施例,網(wǎng)絡(luò)106可以包括, 例如家庭電話線網(wǎng)絡(luò)、家庭電線網(wǎng)絡(luò)、以太網(wǎng)、無線網(wǎng)或任何上迷網(wǎng) 絡(luò)的組合。然而,本發(fā)明并不限于住宅網(wǎng)絡(luò),網(wǎng)絡(luò)106也可以包括住 宅或非住宅網(wǎng)絡(luò)的任何類型,包括但不限于本地局域網(wǎng)(IAN)或廣域網(wǎng)(WAN),例如因特網(wǎng)。每個電子裝置104a到104n可以包括很廣泛的遙控電子裝置之 一,可用于住宅和/或辦公室環(huán)境。例如,每個電子裝置104a到104n 可以包括計算機、計算機外設(shè)、電視(TV)、錄像機(VCR)、數(shù) 字化視頻光盤(DVD)播放器、個人錄像機(PVR)、壓縮光盤播(CD) 放器、立體聲收音機、電子恒溫器、UPnpTM數(shù)字媒體再現(xiàn)器和/或服 務(wù)器、燈、攝影機中的一個。然而,這些例子并不打算做為限制,其 他電子裝置也在本發(fā)明的范圍和精神中。每個控制器102a到102n適合于遙控一個或多個電子裝置104a 到104n。尤其在此將詳細討論,每個控制器102a到102n提供一個用 戶可配置的用于控制各種電子裝置的通用接口,每個電子裝置可能有 不同的制造商和/或模型類型,并且每個電子裝置可以支持用于遠程裝 置控制的不同通信協(xié)議。根據(jù)本發(fā)明的實施例,每個控制器102a到102n包括用于控制一 個或多個電子裝置104a-104n的獨立接口 。在可替換的實施例中,每 個控制器102a到102n與一個可選擇的控制服務(wù)器108 —起運行,該 服務(wù)器108通過網(wǎng)絡(luò)106通信地耦合到控制器和電子裝置,以執(zhí)行電 子裝置控制功能??刂品?wù)器、控制器和在住宅和非住宅的環(huán)境中提 供遠程命令和裝置控制及應(yīng)用的網(wǎng)絡(luò)的詳細示例在2002年6月27日 申請的,共同擁有的未決U.S專利申請?zhí)?0/180,500,標題為"Method,System, and Computer Program Product for Managing Controlled Residential or Non-residential Environments ,,中找到,其全部在此合并參考。圖2描述了根據(jù)本發(fā)明的實施例的裝置控制系統(tǒng)200的詳細實 現(xiàn)。在2003年3月14日申請的,共同擁有未決的U.S專利申請?zhí)?10/387,590 , 標題為"Legacy Device Bridge for Residential or Non-Residential Networks" to Krzyzanowski et al.,中詳細描述了裝置 控制系統(tǒng)200的各種元件,等同于在此完全地闡明以將其全部合并參 考。如圖2示出的,裝置控制系統(tǒng)200包括多個通信地耦合到網(wǎng)絡(luò) 202的電子裝置,在一個實施例中其包括無線LAN。電子裝置諸如個 人數(shù)字助理(PDA) 206、平板PC 208、基于PC的計算機系統(tǒng)210 和網(wǎng)絡(luò)攝像機222,適合于根據(jù)基于分組的通信協(xié)議,諸如TCP/IP, 進行通信。傳統(tǒng)消費類電子裝置,包括TV212、 VCR和/或DVD播 放器214、立體聲收音機216、電子恒溫器218、和燈220以及相關(guān)的 照明系統(tǒng)控制接口 226,并不太適合,必須依賴紅外(IR)或串行通 信協(xié)議來達到通信目的。傳統(tǒng)裝置網(wǎng)橋224a和224b執(zhí)行協(xié)議轉(zhuǎn)換功 能,使得在使用基于分組通信協(xié)議的裝置和排外地依賴IR或串行通 信協(xié)議地裝置之間的通信變得更容易。在圖2中,每個PDA 206、平板PC 208、或基于PC的計算機 系統(tǒng)210可以包括一個控制器,用于遙控一個或多個耦合到網(wǎng)絡(luò)202 的其它電子裝置。更進一步的,依照本發(fā)明的一個實施例,多個PDA 206、平板PC 208、或基于PC的計算機系統(tǒng)210可以用于在一個或 多個耦合到網(wǎng)絡(luò)202的其他電子裝置上提供獨立控制??商鎿Q的,這 些控制器可以與可選擇的控制服務(wù)器204 —起運行以執(zhí)行遠程裝置控 制功能。B根據(jù)本發(fā)明實施例的控制器實現(xiàn)圖3示出了根據(jù)本發(fā)明實施例的控制器102a到102n(同樣一般 地在此涉及控制器102)中的一個的示例實現(xiàn)。應(yīng)該理解提供在圖3 描述的示例實現(xiàn)僅僅為了說明性目的而不是限制本發(fā)明?;谠诖税?含的教導,控制器102的其他實現(xiàn)對相關(guān)領(lǐng)域的熟練技術(shù)人員是顯然 的,本發(fā)明旨在這樣其他的實現(xiàn)。如在圖3中示出,控制器102包括用戶接口 308,用于接收用戶 輸入以及向用戶提供信息,網(wǎng)絡(luò)接口 306,用于提供到網(wǎng)絡(luò)的訪間, 以及可選的消費電子(CE)裝置接口 304,用于發(fā)送信息到一個CE 裝置和可選地接收來自一個CE裝置的信息。在一個實施例中,用戶 接口 308包括圖形用戶接口 (GUI),通過觸控式顯示器接收用戶輸 入,網(wǎng)絡(luò)接口 306包括插入式或內(nèi)置式收發(fā)器,適用于依照通信協(xié)議的網(wǎng)絡(luò)通信,通信協(xié)議諸如IEEE 802.11b、 BluetoothTM或以太網(wǎng)協(xié) 議,可選的CE裝置接口 304包括單向IR發(fā)射機、或可替換的雙向 IR收發(fā)器。
如在圖3中示出的,控制器102進一步包括控制邏輯302,其通 信地耦合到用戶接口 308、網(wǎng)絡(luò)接口 306和可選的CE裝置接口 304。 控制邏輯302適合于完成將在此處詳細描述的本發(fā)明的特點,包括但 不限于當運行在對等模式時執(zhí)行與一個或多個其他控制器的同步協(xié) 議,以及執(zhí)行涉及到從對等模式轉(zhuǎn)換到客戶服務(wù)器操作模式的功能。 基于在此的教導,相關(guān)領(lǐng)域的熟練技術(shù)人員能夠理解控制邏輯302可 以使用一個或多個通用處理器、專用集成電路、或前述的組合實現(xiàn)。
控制器102還包括通信地耦合到控制邏輯302的存儲器310。在 一個實施例中,存儲器310可以包括靜態(tài)存儲器,諸如只讀存儲器 (ROM),動態(tài)存儲器,諸如隨機訪問存儲器(RAM),硬盤驅(qū)動 器,或前述的任何組合。依據(jù)本發(fā)明的實施例,存儲器310存儲包括 包含有應(yīng)用和數(shù)據(jù)的多個軟件庫,由控制邏輯302分別的執(zhí)行和處理。
在本發(fā)明的一個實施例中,控制器102包括PDA、平板計算機、 Web記事簿、或個人計算機中的一個,盡管本發(fā)明并不限制于此。
圖4是一個依照本發(fā)明一個實施例的被存儲在存儲器310中的各 種軟件組件或庫的概念表示。如在圖4中示出,這樣的組件包括操作 系統(tǒng)固件402,用戶接口固件404,裝置控制數(shù)據(jù)庫410,裝置配置數(shù) 據(jù)庫408,系統(tǒng)配置數(shù)據(jù)庫410,用戶優(yōu)先選擇數(shù)據(jù)庫412,控制器同 步軟件414,以及事件日志416。這些組件中的每個將在下面討論。
操作系統(tǒng)固件402,當執(zhí)行時,提供一個平臺,其他控制器應(yīng)用 在該平臺之上運行,以及執(zhí)行基本功能,諸如涉及控制器輸入/輸出 (I/O)和文件管理的功能。用戶接口固件404,當執(zhí)行時,提供用戶 接口 308的各種可編程方面的實現(xiàn)和管理。
裝置控制數(shù)據(jù)庫406存儲預(yù)先定義的用于遙控各種電子裝置的 命令和代碼組,以及涉及這些裝置唯一控制行為的元數(shù)據(jù)。在本發(fā)明
的一個實施例中,控制器102可以通過網(wǎng)絡(luò)106下栽裝置命令代碼和元數(shù)據(jù)存儲在裝置控制數(shù)據(jù)庫406中。該功能的詳細描述在2003年9 月26日申請的,美國臨時專利申請?zhí)?0/505,851 ,標題為"Device Control System, Method and Apparatus" to Krzyzanowski et al"中提 供,等同于在此完全地闡明以將其全部合并參考。這樣的命令代碼和 元數(shù)據(jù)可以如此獲得,例如從存儲在CD-ROM上的庫中,如上討論 的通過網(wǎng)絡(luò)106下載,或通過與端用戶即時交互"學習"或根據(jù)經(jīng)斷例 如,分析先前用戶控制方法)。軟件庫408、 410和412通常包括存儲涉及用戶定制的或個人的 控制器102操作的方面以及整個裝置控制系統(tǒng)100的信息的數(shù)據(jù)庫。 尤其的,裝置配置數(shù)據(jù)庫408包括涉及實際上已經(jīng)作為裝置控制系統(tǒng) 100的一部分被識別的裝置的數(shù)據(jù),包括裝置狀態(tài)和其他操作信息。系統(tǒng)配置數(shù)據(jù)庫410包括涉及系統(tǒng)管理各方面的數(shù)據(jù),諸如用戶 授權(quán)、位置管理以及裝置發(fā)現(xiàn)。用戶授權(quán)設(shè)置通常是可選擇的,允許 或禁止系統(tǒng)用戶控制與特定位置關(guān)聯(lián)的一個或多個裝置。位置管理數(shù) 據(jù)附屬于對多個裝置在裝置控制系統(tǒng)100內(nèi)的一個或多個空間或控制 區(qū)域的定義和分配。裝置發(fā)現(xiàn)數(shù)據(jù)是涉及控制器102,檢測和維護涉及 網(wǎng)絡(luò)106上的裝置的狀態(tài)信息的能力的數(shù)據(jù)。例如,依據(jù)本發(fā)明實施 例的控制器102能夠使用UpnpTM協(xié)議,或?qū)S袇f(xié)議自動發(fā)現(xiàn)和獲取 關(guān)于在網(wǎng)絡(luò)106上出現(xiàn)的裝置的狀態(tài)信息,用戶偏好數(shù)據(jù)庫412包括涉及各種用戶識別的偏好的數(shù)據(jù),該偏 好涉及控制器102和裝置控制系統(tǒng)100內(nèi)的受控裝置的操作。用戶偏 好可以包括,例如最喜愛的電視觀看頻道,或者特定圖形用戶接口 (GUI)的選擇,或用于控制器102的"皮膚"。如將要在此詳細描述的,當控制器在獨立或?qū)Φ饶J讲僮鲿r,控 制器同步軟件414和事件日志416由控制器102使用以執(zhí)行確保控制 器102和在裝置控制系統(tǒng)100內(nèi)的一個或多個其他控制器之間同步的 協(xié)議。另外,如將要在此詳細描述的,這些組件進一步提供在控制器 102和其他控制器之間傳遞自定義配置信息的手段,以及將控制器102 從對等網(wǎng)絡(luò)環(huán)境轉(zhuǎn)換到基于服務(wù)器的網(wǎng)絡(luò)環(huán)境中的手段。c.依據(jù)本發(fā)明的實施例在對等模式的控制器同步如在上面提到的,在裝置控制系統(tǒng)100中,多個控制器102a到 102n可以由多個用戶操作以控制一個或多個相同電子裝置。當這些控 制器在獨立模式操作時,協(xié)調(diào)這些控制器的需要出現(xiàn)了。由于每個控 制器自治地和互相獨立地操作,缺少協(xié)調(diào)多個控制器操作的任何手 段,將會發(fā)生控制混亂。例如,假設(shè)裝置控制系統(tǒng)IOO在家庭中實現(xiàn)。位于樓上的第一個 用戶希望關(guān)閉位于地下室的電視,第一用戶認為它是開著的。使用控 制器102a,第一個用戶通過網(wǎng)絡(luò)106發(fā)送"電源開/關(guān)"信號到地下室 的電視。然而,如果第一用戶對于他的或她的關(guān)于地下室TV狀態(tài)的 信任是錯誤的,可能由于第二個用戶使用控制器102b已經(jīng)將其關(guān)閉, 由第一個用戶發(fā)送的"電源開/關(guān)"信號將導致打開TV,該操作與想要 的效果是相反的。因此,在裝置控制系統(tǒng)100中,每個控制器102a到102n適合于 與其它控制器通信以確保在共同控制區(qū)域的一個或多個電子裝置的 協(xié)調(diào)的和有效的操作,例如在家庭或辦公室。結(jié)果,每個控制器能夠 在包含由其他用戶操作的幾個控制器的系統(tǒng)中起作用。在一個特定的 實施例中,每個控制器與操作在特定控制環(huán)境中的其他控制器有直接 網(wǎng)絡(luò)連接,并且與這些其他控制器同步。為了執(zhí)行該同步,每個控制器102a到102n維持時間戳事件的日 志416 (參見圖4)。每個事件包括某些系統(tǒng)狀態(tài)的增加、修改或刪 除的注釋。在一個實施例中,整個系統(tǒng)狀態(tài)分成不同的子類別。這些 子類別可以包括(1) 用戶設(shè)置涉及用戶定義的參數(shù)的狀態(tài)信息,包括但不P艮 于用戶的增加或刪除、改變口令、最喜歡的TV觀看頻道的標識、特 定控制器GUI (或"皮膚")的選擇,等等;(2) 裝置模塊:涉及用于特定裝置的控制參數(shù)的狀態(tài)信息,包 括但不限于對裝置模板、裝置驅(qū)動器或裝置代碼數(shù)據(jù)庫的增加、刪除、 或改變(如在此使用的,術(shù)語"裝置模板"涉及裝置動作的參數(shù),術(shù)語"裝置驅(qū)動器"涉及與特定裝置通信的必要軟件;如上面討論的,"裝 置代碼數(shù)據(jù)庫"包括用于裝置的控制代碼映射,諸如IR或串行碼); 以及
(3) 配置涉及定制系統(tǒng)或裝置配置參數(shù)的狀態(tài)信息,包括但 不限于對裝置空間分配、空間定義、裝置配置和連接的增加、刪除或 改變。
每個事件都要輸入事件日志416,與時間戳相關(guān)聯(lián),指示事件發(fā) 生的時間。
狀態(tài)改變是指依據(jù)本發(fā)明的系統(tǒng)為了同步的目的而跟蹤和傳播 的事件。對于裝置,這樣的狀態(tài)改變可以包括改變狀態(tài)變量、控制代 碼、以及用于引導裝置控制的腳本。狀態(tài)變量可以包括輸入選擇(例 如,收音機可以設(shè)置為從DVD播放器接受輸入)、開/關(guān)狀態(tài)(例如 TV可以是開著的)、或調(diào)諧選擇(例如TV設(shè)置到頻道3)??刂拼?碼是用于控制配置裝置的代碼,諸如用于用戶電子裝置遠程操作的IR 控制代碼。盡管這些通常是靜態(tài)的,裝置首次被引入系統(tǒng)時這些代碼 必須傳播到控制器,并且當要求控制器重新學習一組特定的控制代碼 時需要一些時間。用于引導裝置控制的腳本涉及腳本,諸如XML腳 本,用于定義裝置功能,跟蹤狀態(tài)變量,以及向適當?shù)目刂颇K傳遞 控制代碼(例如,向具體傳統(tǒng)裝置網(wǎng)橋發(fā)送IR代碼)。
狀態(tài)改變可以進一步的包括改變腳本定義經(jīng)歷。例如,在本發(fā)明 的一個實施例中, 一種經(jīng)歷(諸如看DVD或聽CD)內(nèi)的控制由腳本 或宏定義,所述宏在請求和應(yīng)答協(xié)議期間基于用戶的響應(yīng)從基本模板 生成,所述協(xié)議發(fā)生在建立處理期間。例如,在看DVD的上下文, 宏數(shù)據(jù)"ON"可以定義為"打開TV","打開DVD播放器","打開收音 機","設(shè)置收音機到DVD輸入",以及"設(shè)置TV到視頻2輸入"。響 應(yīng)調(diào)用宏數(shù)據(jù),每個這些命令被發(fā)送到合適的裝置腳本。
狀態(tài)改變也同樣包括改變定時器、定時的動作、觸發(fā)器以及觸發(fā) 的動作。定時器或鬧鐘涉及與特定腳本執(zhí)行關(guān)聯(lián)的時間(例如在下午 11: OO關(guān)閉TV)。當鬧鐘時間等于實際時間時,執(zhí)行相關(guān)的腳本或定時的動作。觸發(fā)涉及將狀態(tài)變量改變與特定腳本執(zhí)行的結(jié)合(例如 只要電視打開就關(guān)閉燈)。當監(jiān)測的狀態(tài)變量改變時,執(zhí)行相關(guān)的腳 本或觸發(fā)動作。在依據(jù)本發(fā)明的一個系統(tǒng)中,定時器、觸發(fā)器以及相 關(guān)的腳本都是用戶可編程功能。這些功能的詳細描述在同時申請的,
共同擁有的U.S專利申請?zhí)柎峙涞?b>代理人記錄號2100.0030004, 標題為"Method, System, and Computer Program Product for AutomaticallyManagingComponentswithina Controlled Environment, "to Krzyzanowski et al.,中提供了 ,等同于在此完全地 闡明以將其全部合并參考。
狀態(tài)改變可以進一步包括改變各種配置參數(shù),諸如用戶定義、空 間、空間內(nèi)裝置、用戶到空間和裝置的訪問權(quán)限、位圖的收集以及定 義用戶接口 (有時稱為"皮膚")的屏幕布局。
圖5示出依據(jù)本發(fā)明的一個實施例用于在裝置控制系統(tǒng)中同步 控制器的方法流程圖500。然而本發(fā)明并不限于由流程圖500提供的 描述。相反地,從在此提供的教導中對相關(guān)領(lǐng)域的熟練技術(shù)人員來說 其他功能流程在本發(fā)明范圍和精神里是顯然的。將繼續(xù)參考上述參考 圖1的示例系統(tǒng)100描述流程圖500。然而本發(fā)明并不限于該實施例。
在初始步驟502,用戶加電控制器102a。響應(yīng)加電,控制器102a 執(zhí)行初始發(fā)現(xiàn)協(xié)議504,通過該協(xié)議控制器102a確定在裝置控制系統(tǒng) 100內(nèi)是否有其他起作用的控制器。該發(fā)現(xiàn)協(xié)議的至少一種實現(xiàn)方式 將在此之外的別處提供。
如果有其他控制器可用,此時控制器102a執(zhí)行與可用控制器中 的一個的同步協(xié)議506。同步步驟506是一個過程,通過該過程,控 制器102a更新其內(nèi)部存儲的狀態(tài),包括其事件日志,這是通過與裝 置控制系統(tǒng)100內(nèi)的其他控制器接收或交換狀態(tài)信息而實現(xiàn)。執(zhí)行同 步步驟506的協(xié)議將在此之外的別處提供。實際上講,如果多于一個 的其他控制器是可用的,選擇其他控制器中的哪個用于執(zhí)行同步步驟 506是無關(guān)緊要的。因此其他控制器可以任意選擇??商鎿Q的,其他 控制器可以在某些基礎(chǔ)上選擇。例如可以基于涉及網(wǎng)絡(luò)連通性的某些參數(shù)選擇其他控制器,例如用于與其他控制器通信的預(yù)期響應(yīng)時間。在同步506之后,控制器102a周期地執(zhí)行發(fā)現(xiàn)步驟508以確定 哪些控制器(如果有任何的)是在系統(tǒng)中當前可用的,直到在步驟524 發(fā)生控制器102a斷電。依據(jù)本發(fā)明的一個實施例,每個控制器102a 到102n維護在所有已知同位體(也就是其他控制器)的存儲器中的表。 對于每個同位體,控制器存儲該同位體的上次同步時間以及當前連通 性信息。例如,當前連通性信息可以包括該同位體的網(wǎng)絡(luò)地址,諸如 IP地址,上次發(fā)現(xiàn)時間,以及是否最新發(fā)現(xiàn)嘗試確定該裝置是可用的 指示。如在圖5中示出的,在周期的發(fā)現(xiàn)嘗試508之間,至少可以發(fā)生 其他四個事件控制器102a生成一個或多個狀態(tài)改變510,控制器 102a從其他控制器接收一個或多個狀態(tài)改變514,控制器102a接收 用于其他控制器的同步請求518,或者控制器102a可以斷電522??刂破?02a可以生成一個或多個狀態(tài)改變510,從而用戶^f吏用 控制器改變控制器的初始配置或改變遙控的電子裝置104a到104n的 配置??刂破魍瑯涌梢员痪幊桃宰詣痈淖兤渑渲没蜻b控電子裝置的配 置,諸如響應(yīng)特定事件的發(fā)生或到達某一預(yù)定日期和時間。任何一種 狀況下,更新事件日志416,并且將狀態(tài)改變信息發(fā)送到裝置控制系 統(tǒng)100中所有可用的控制器,如在步驟512示出的。在一個實施例中, 狀態(tài)改變信息的發(fā)送包括來自事件日志416的條目發(fā)送。由于該步驟, 在狀態(tài)改變發(fā)生后不久,其他可用控制器的狀態(tài)與控制器102a同步。在裝置控制系統(tǒng)100中,控制器102a可以從其他活動的控制器 接收狀態(tài)改變信息514。該狀態(tài)改變信息可以涉及應(yīng)用到另一個控制 器或共同控制的電子裝置的配置改變。無論哪種情況下,控制器102a 將基于接收到的信息更新其事件日志416,如在步驟516中示出的。 在一個實施例中,狀態(tài)改變信息的接收包括來自另 一個控制器的事件 日志的條目接收。在裝置控制系統(tǒng)100中,控制器102a同樣可以從另一個活動的 控制器接收同步請求518,例如已經(jīng)最近加電的活動的控制器。假若這樣,控制器102a將執(zhí)行與所述另一個控制器的同步協(xié)議,在此將 更詳細的描述其實現(xiàn),如在步驟520示出的。
控制器102a同樣可以在任何時間斷電522??梢杂捎脩?,由內(nèi) 部控制邏輯,例如響應(yīng)長時間不活動而斷電的代碼,或由其他裝置, 例如能夠發(fā)布寬系統(tǒng)斷電或復(fù)位命令的附加網(wǎng)絡(luò)裝置,發(fā)起斷電。無 論何種情況下,這將導致控制器進入斷電狀態(tài)524,從而終止同步協(xié) 議500。
圖6示出用于執(zhí)行參考圖5上述討論的發(fā)現(xiàn)步驟504和508的方 法流程圖。該方法僅僅通過示例但不限于此的方式提供。該方法發(fā)起 在步驟602。在步驟604,控制器102a通過網(wǎng)絡(luò)106向一個或多個其 他控制器發(fā)送查詢消息。在一個實施例中,控制器102a跨越網(wǎng)絡(luò)廣 播查詢消息。在步驟606,控制器102a等待預(yù)定時間量以從活動的且 通信地耦合到網(wǎng)絡(luò)106的其他控制器接收應(yīng)答。在步驟608,基于在 步驟606期間接收的應(yīng)答(如果有任何的),控制器608更新涉及控 制器可用性的內(nèi)部存儲數(shù)據(jù)。在本發(fā)明的一個實施例中,控制器102a 通過更新所有已知同位體的內(nèi)部存儲表中的可用性數(shù)據(jù)執(zhí)行該步驟。 在步驟610,終止發(fā)現(xiàn)協(xié)議。
圖7示出執(zhí)行涉及上面參考圖5中的步驟504和520的同步協(xié)議 的方法流程圖700。需要諸如在此描述的一個同步協(xié)議來處理如下的 控制器,當發(fā)送這樣的狀態(tài)改變信息時,這些控制器由于電源斷電或 從網(wǎng)絡(luò)106斷開而不能夠接收狀態(tài)改變信息?;谠诖颂峁┑慕虒?, 相應(yīng)領(lǐng)域的熟練技術(shù)人員應(yīng)該理解依據(jù)協(xié)議700的同步能力部分取決 于具有同步時鐘的每個控制器。對于控制器之間有時鐘偏移,這可以 在連通性上得到補償。
將參考第一個控制器102a和第二個控制器102b描述方法流程圖 700,其中控制器102a具有請求的同步。如上所述的,在一個實施例 中,在加電后控制器102a立即請求同步。
在步驟702發(fā)起同步。在步驟704第一控制器102a將信息發(fā)送 到第二控制器102b,該信息涉及從上次與控制器102b同步后發(fā)生的一個或多個事件,或狀態(tài)改變。在一個實施例中,該步驟需要發(fā)送由控制器102a記錄的從上次與控制器102b同步后的所有事件的日志。 在步驟706,第一控制器102a從第二控制器102b接收涉及自從上次 與控制器102a同步后已經(jīng)發(fā)生的一個或多個事件的信息。在一個實 施例中,該步驟需要接收已經(jīng)由控制器102b記錄的自從上次與控制 器102a同步后所有事件的日志。可以預(yù)期的,在多數(shù)例子中,由于 已經(jīng)斷電的控制器不會有任何狀態(tài)改變報告,控制器之間的前述對話 將是單向的。在一個實施例中,在控制器之間交換的事件日志由每個控制器通 過從日志重寫操作的省略而最優(yōu)化。例如,如果日志包括指示某一 TV已經(jīng)被打開的第一條目和指示相同TV已經(jīng)被關(guān)閉的第二條目, 此時以前的條目將不再需要,因此從日志中刪除。在步驟708,控制器102a確定是否任何事件都已經(jīng)從控制器102b 接收到。如果沒有事件接收到,此時在步驟722同步協(xié)議終止。然而 如果一個或多個事件已經(jīng)接收到,此時控制器102a檢查接收到的事 件,如在步驟710示出的。此時控制器102a確定接收到的事件是否 與任何先前已記錄的事件沖突。僅僅在控制器102a已經(jīng)斷電以及控 制器102b當前完全依據(jù)系統(tǒng)狀態(tài)的情況下,可以預(yù)期沒有沖突發(fā)生, 并且所有接收到的項目都將被接受。然而,在兩個控制器都生成了新狀態(tài)改變但是卻不能同步的情況 下發(fā)生沖突。例如,當控制器102b斷電時,控制器102a可以用于允 許特定用戶訪問特定裝置。然后控制器102a已經(jīng)斷電,并且控制器 106b ^f皮相同的或另一個用戶加電和使用以獲得對相同裝置的訪問和 控制。這種情況將使非同步的控制器102a和102b之間的沖突增加。 在這樣的沖突發(fā)生的情況下,與更近時間戳關(guān)聯(lián)的事件獲勝。因此, 例如,如果控制器102a包括反映某一 TV狀態(tài)在9: 42: 30設(shè)置為"開" 的新日志條目,以及控制器102b包括反映相同TV在9: 59: 10設(shè)置 為"關(guān)"的狀態(tài)的新日志條目,此時控制器102a將接受來自控制器 102b的階段改變,但是控制器102b將拒絕來自控制器102a的改變,得到互相一致的狀態(tài)。
該功能在步驟712示出了 ,其中控制器102a確定接收到的事件 是否與先前已錄入的事件沖突。如果不是,那么控制器102a接受在 步驟716接收的事件,并且將狀態(tài)改變信息輸入其事件日志416。如 果確定有沖突,那么控制器102a確定與接收的事件相比,先前已記 錄的事件是否與較后時間戳相關(guān),如在步驟714示出的。如果是,此 時控制器102a接受接收的事件,如在步驟716示出的。如果不是, 此時控制器102b不接受接收的事件,如在步驟718示出的。
依據(jù)本發(fā)明的一個實施例,如在步驟716示出的,接受狀態(tài)改變 信息也包括狀態(tài)變量改變應(yīng)用以及各種用戶設(shè)置、裝置模塊或控制器 /裝置/系統(tǒng)配置的增加、刪除、或修改。在一個實施例中,在應(yīng)用之 前,控制器102a的用戶可以被提示以確認任何這樣的增加、刪除或 修改。
在接收的事件已經(jīng)在步驟716被接受或在步驟718被拒絕后,控 制器102a確定是否有任何更多接收的事件需要分析,如在步驟720 示出的。如果有,此時在步驟710協(xié)議繼續(xù)下一接收事件的分析。否 則,如在步驟722示出的,終止同步協(xié)議。
關(guān)于前述協(xié)議,注意控制器102a可以包括新引進的單元,其沒 有已記錄的先前同步時間,或具有早于與從控制器102b接收的每個 事件相關(guān)聯(lián)的時間戳的先前同步時間。在一個實施例中,該情況通過 完全忽略接收的事件日志而只是從控制器102b向控制器102a傳播全 部配置狀態(tài)來處理。
通過上面描述的同步協(xié)議,在裝置控制系統(tǒng)100中,每個控制器 102a到102n能夠更新裝置狀態(tài)信息并且通知其各自用戶在公共控制 區(qū)域各種電子裝置104a到104n的當前狀態(tài)。
而且,本發(fā)明的同步方法同樣可以用于允許控制器更新裝置控制 數(shù)據(jù)庫信息。例如,當用戶希望增加新的控制器或用新的取代舊的控 制器時,新控制器可以容易的配置為控制處于控制環(huán)境中的電子裝 置。具體的,依據(jù)本發(fā)明的實施例,現(xiàn)有控制器的數(shù)據(jù)庫可以通過實施同步操作在網(wǎng)絡(luò)(諸如無線網(wǎng)絡(luò))上傳遞到新的控制器。依據(jù)本發(fā)明的 一個實施例,同步協(xié)議同樣可以用于從一個控制器 向另一個控制器傳播裝置控制庫,諸如包括可執(zhí)行代碼的裝置控制庫。這樣的功能在基于java的系統(tǒng)中尤其有用。D依據(jù)本發(fā)明的實施例從對等模式到客戶-服務(wù)器模式的轉(zhuǎn)換根據(jù)本發(fā)明的一個實施例,控制器102a可以從獨立模式轉(zhuǎn)換到 客戶-服務(wù)器環(huán)境,在該環(huán)境中控制器以及其他這樣的控制器充當?shù)?存儲基本的可操作固件和數(shù)據(jù)的中央服務(wù)器108的客戶或用戶接口。當中央服務(wù)器108增加到網(wǎng)絡(luò)106時,控制器102a的數(shù)據(jù)庫能 夠與中央服務(wù)器108同步,允許在控制器102a (現(xiàn)在是客戶)的更新 數(shù)據(jù)增加到控制服務(wù)器108的相應(yīng)數(shù)據(jù)庫。在客戶-服務(wù)器操作模式, 每個控制器102a到102n作為控制服務(wù)器108的用戶接口起作用。例 如,每個控制器102a到102n轉(zhuǎn)發(fā)用戶的控制請求到控制服務(wù)器108, 用于從控制服務(wù)器108執(zhí)行和獲取GUI信息。作為在先前段落討論的發(fā)現(xiàn)過程的一部分,控制器102可以在網(wǎng) 絡(luò)106上發(fā)現(xiàn)控制服務(wù)器108的存在。這是基礎(chǔ)結(jié)構(gòu)已經(jīng)從對等環(huán)境 轉(zhuǎn)換到客戶-服務(wù)器環(huán)境的指示。在該模式中,所有用戶和裝置配置 信息、裝置控制模塊和狀態(tài)變量都存儲在控制服務(wù)器108中,控制器 102主要作為用戶接口終端起作用。當控制器102第一次檢測到控制服務(wù)器108時,必須確定是否發(fā) 送其所有的或某些配置數(shù)據(jù)到控制服務(wù)器108。這可以使用與在先前 部分描述的同步協(xié)議相似的協(xié)議完成。如果控制器102和控制服務(wù)器 108先前已經(jīng)同步,控制器102僅僅發(fā)送自從同步時間后已經(jīng)記錄的 事件。如果控制器102和控制服務(wù)器108從來沒有同步,此時控制器 102發(fā)送其整個配置到控制服務(wù)器108。該處理是單向的控制服務(wù) 器108不需要向控制器102發(fā)送任何更新。在同步完成后,控制器102 清空其配置并切換到客戶-服務(wù)器模式,其中它將為任何信息聯(lián)系控 制服務(wù)器108或發(fā)送任何命令。在上面討論的實施例中,當在網(wǎng)絡(luò)106上檢測到控制服務(wù)器108的存在,從獨立模式到客戶-服務(wù)器環(huán)境的轉(zhuǎn)換是自動開始的。然而, 在可替換的實施例中,相反于自動轉(zhuǎn)換,轉(zhuǎn)換的開始是用戶提示的。 這樣的實施例提供一種情況,在該情況下,即使當控制服務(wù)器在網(wǎng)絡(luò) 上被檢測到,用戶優(yōu)先保留對等模式操作。因此,即使控制服務(wù)器在 網(wǎng)絡(luò)上出現(xiàn),對等環(huán)境仍可以存在。轉(zhuǎn)換處理的用戶提示控制可以包
括向控制器或通信地耦合到網(wǎng)絡(luò)106的其他裝置輸入一個或多個命 令。在一個實施例中,用戶提示系統(tǒng)簡單地忽視或忽略控制服務(wù)器直 到用戶決定切換到基于服務(wù)的系統(tǒng)。
在一個可替換的實施例中,給用戶提供終止從對等到基于服務(wù)器 的環(huán)境的自發(fā)轉(zhuǎn)換的能力,以維持對等操作。
依據(jù)本發(fā)明的一個進一步的實施例, 一個或多個控制器102可以 從客戶-服務(wù)器環(huán)境轉(zhuǎn)換,諸如上面描述的環(huán)境,到對等或獨立模式。 在這樣的實施例中,中央服務(wù)器被從網(wǎng)絡(luò)106移除或?qū)刂破鞑豢捎?之前,為了同步目的,中央服務(wù)器108被配置為下載狀態(tài)改變數(shù)據(jù)到 至少一個控制器。接收狀態(tài)改變數(shù)據(jù)的控制器被配置為隨后參加對等 同步協(xié)議,諸如在此處之外描述的協(xié)議,以傳遞狀態(tài)改變數(shù)據(jù)到所有 其他的控制器。為實現(xiàn)這樣的系統(tǒng),假設(shè)每個控制器有足夠容量,包 括足夠存儲器,以接收和下載數(shù)據(jù)。
E.結(jié)論
以上已經(jīng)描述了本發(fā)明的各種實施例,應(yīng)該理解它們只是以示例 的方式出現(xiàn),但不限于此。相關(guān)領(lǐng)域的熟練技術(shù)人員應(yīng)該理解不背離 在所附權(quán)利要求書定義的本發(fā)明的精神和范圍基礎(chǔ)上,可以在形式和 細節(jié)上進行各種變化。因此本發(fā)明的寬度和范圍不應(yīng)該由任何上面描 述的示例性實施例限制,而是僅僅依據(jù)隨后的權(quán)利要求書及其等價物 定義。
權(quán)利要求
1、一種將適合于遙控一個或多個電子裝置的控制器從獨立模式轉(zhuǎn)換到客戶-服務(wù)器模式的方法,其中控制器依據(jù)由在獨立模式的控制器維持的控制配置遙控一個或多個電子裝置,該方法包括發(fā)現(xiàn)服務(wù)器;將涉及由控制器維持的控制配置的數(shù)據(jù)發(fā)送到所述服務(wù)器;以及隨后依據(jù)由服務(wù)器維持的控制配置控制一個或多個電子裝置。
2、 如權(quán)利要求l的方法,其中所述發(fā)送包括將涉及自從與所述 服務(wù)器先前同步后已經(jīng)發(fā)生的一個或多個事件的數(shù)據(jù)發(fā)送到所述服 務(wù)器。
3、 如權(quán)利要求l的方法,其中所述發(fā)送包括響應(yīng)用戶輸入將涉 及由控制器維持的控制配置的數(shù)據(jù)發(fā)送到所述服務(wù)器。
4、 如權(quán)利要求l的方法,其中發(fā)現(xiàn)所述服務(wù)器包括 發(fā)送查詢消息;以及等待預(yù)定時間以接收對所述查詢消息的應(yīng)答。
5、 一種用于遙控一個或多個電子裝置的設(shè)備,包括 適合于在網(wǎng)絡(luò)上通信的網(wǎng)絡(luò)接口; 適合于接收用戶輸入的用戶接口;以及耦合到所述網(wǎng)絡(luò)接口和所述用戶接口并且適合于響應(yīng)所述用戶 輸入執(zhí)行命令的控制邏輯;其中所述控制邏輯進一步適合于發(fā)現(xiàn)通信地耦合到所述網(wǎng)絡(luò)的 服務(wù)器,將涉及由所述設(shè)備維持的控制配置的數(shù)據(jù)發(fā)送到所迷服務(wù) 器,以及隨后依據(jù)由服務(wù)器維持的控制配置而不是依據(jù)由設(shè)備維持的 控制配置來控制一個或多個電子裝置。
6、 如權(quán)利要求5的設(shè)備,其中所述網(wǎng)絡(luò)接口包括一個收發(fā)器。
7、 如權(quán)利要求6的設(shè)備,其中所述收發(fā)器適合于依據(jù)IEEE 802.3 以太網(wǎng)協(xié)i義通信。
8、 如權(quán)利要求6的設(shè)備,其中所述收發(fā)器適合于依據(jù)藍牙協(xié)議無線通信。
9、 如權(quán)利要求6的設(shè)備,其中所述收發(fā)器適合于依據(jù)IEEE 802.11協(xié)議無線通信。
10、 如權(quán)利要求5的設(shè)備,其中所述控制邏輯適合于將涉及自從 與所述服務(wù)器先前同步后已經(jīng)發(fā)生的一個或多個事件的數(shù)據(jù)發(fā)送到 所述服務(wù)器。
11、 如權(quán)利要求5的設(shè)備,其中所述控制邏輯適合于響應(yīng)用戶輸 入將涉及由設(shè)備維持的控制配置的數(shù)據(jù)發(fā)送到服務(wù)器。
12、 如權(quán)利要求5的設(shè)備,其中所述控制邏輯適合于通過所述網(wǎng) 絡(luò)接口發(fā)送查詢消息和等待預(yù)定時間以接收對所述查詢消息的應(yīng)答 來發(fā)現(xiàn)服務(wù)器。
13、 一種系統(tǒng),包括 電子裝置;通過網(wǎng)絡(luò)通信地耦合到所述電子裝置的控制器,所述控制器適合 于通過所述網(wǎng)絡(luò)遙控所述電子裝置;以及通過所述網(wǎng)絡(luò)通信地耦合到所述電子裝置和所述控制器的服務(wù)器;其中所述控制器進一步適合于發(fā)現(xiàn)所述服務(wù)器,將涉及由控制器 維持的控制配置的數(shù)據(jù)發(fā)送到所述服務(wù)器,和隨后依據(jù)由所述服務(wù)器 維持的控制配置而不是由所述控制器維持的控制配置來控制所述電 子裝置。
14、 如權(quán)利要求13的系統(tǒng),其中所述網(wǎng)絡(luò)包括無線局域網(wǎng)。
15、 如權(quán)利要求13的系統(tǒng),其中所述控制器通過IEEE 802. 11 鏈路通信地耦合到所述網(wǎng)絡(luò)。
16、 如權(quán)利要求13的系統(tǒng),其中所述控制器包括個人數(shù)字助理 或Web記事簿中的一個。
17、如權(quán)利要求13的系統(tǒng),其中所述電子設(shè)備包括計算機、計 算機外設(shè)、電視、錄像機、數(shù)字化視頻光盤播放器、個人錄像機、壓 縮光盤播放器、立體聲收音機、UPnP數(shù)字媒體再現(xiàn)器和/或服務(wù)器、燈或攝像機中的一個。
18、 如權(quán)利要求13的系統(tǒng),其中所述控制器適合于將涉及自從 與所述服務(wù)器先前同步后已經(jīng)發(fā)生的一個或多個事件的數(shù)據(jù)發(fā)送到 所述服務(wù)器。
19、 如權(quán)利要求13的系統(tǒng),其中所述控制器適合于響應(yīng)用戶輸 入將涉及由控制器維持的控制配置的數(shù)據(jù)發(fā)送到所述服務(wù)器。
20、 如權(quán)利要求13的系統(tǒng),其中所述控制器適合于通過在所述 網(wǎng)絡(luò)上發(fā)送查詢消息和等待預(yù)定時間以接收對查詢消息的應(yīng)答來發(fā) 現(xiàn)所述服務(wù)器。
21、 一種將適合于遙控一個或多個電子裝置的控制器從客戶 -服 務(wù)器模式轉(zhuǎn)換到獨立模式的方法,在所述客戶-服務(wù)器模式中控制器 依據(jù)由服務(wù)器維持的控制配置遙控一個或多個電子裝置,該方法包 括從所述服務(wù)器接收涉及由服務(wù)器維持的控制配置的數(shù)據(jù);以及 隨后依據(jù)由控制器維持的控制配置控制一個或多個電子裝置。
22、 如權(quán)利要求21的方法,進一步包括將從服務(wù)器接收的所述 數(shù)據(jù)的副本發(fā)送到第二控制器。
23、 一種遙控一個或多個電子裝置的設(shè)備,包括 適合于在網(wǎng)絡(luò)上通信的網(wǎng)絡(luò)接口 ; 適合于接收用戶輸入的用戶接口;以及耦合到所述網(wǎng)絡(luò)接口和所述用戶接口并且適合于響應(yīng)所述用戶 輸入執(zhí)行命令的控制邏輯;其中所述控制邏輯進一步適合于從通信地耦合到所述網(wǎng)絡(luò)的服 務(wù)器接收涉及由所述服務(wù)器維持的控制配置的數(shù)據(jù),以及隨后依據(jù)由 所述設(shè)備維持的控制配置而不是依據(jù)由所述服務(wù)器維持的所述控制 配置來控制一個或多個電子裝置。
24、 如權(quán)利要求23的設(shè)備,其中所述控制邏輯進一步適合于將 從所述服務(wù)器接收的所述數(shù)據(jù)的副本發(fā)送到通信地耦合到所述網(wǎng)絡(luò) 的第二設(shè)備。
25、 一種系統(tǒng),包括 電子裝置;通過網(wǎng)絡(luò)通信地耦合到所述電子裝置的控制器,所述控制器適合 于通過所述網(wǎng)絡(luò)遙控所述電子裝置;以及通過所述網(wǎng)絡(luò)通信地耦合到所述電子裝置和所述控制器的服務(wù)器;其中所述控制器進一步適合于從服務(wù)器接收涉及由所述服務(wù)器 維持的控制配置的數(shù)據(jù),以及隨后依據(jù)由所述控制器維持的控制配置 而不是依據(jù)由所述服務(wù)器維持的所述控制配置來控制所述電子裝置。
26、 如權(quán)利要求25的系統(tǒng),其中所述控制器進一步適合于將從 服務(wù)器接收的所述數(shù)據(jù)的副本發(fā)送到通信地耦合到所述網(wǎng)絡(luò)的第二 控制器。
全文摘要
在裝置控制系統(tǒng)中,提供一種通過統(tǒng)一接口控制各種裝置類型的方法,諸如通過手持控制器,同步協(xié)議確保對等網(wǎng)絡(luò)環(huán)境中多個這樣的控制器之間的同步,提供一種在這樣的控制器之間傳遞用戶化配置的裝置,以及提供將這樣的控制器從對等網(wǎng)絡(luò)環(huán)境轉(zhuǎn)換到基于服務(wù)器的網(wǎng)絡(luò)中的裝置,以及相反的裝置。
文檔編號H04L12/28GK101404603SQ20081021598
公開日2009年4月8日 申請日期2004年9月2日 優(yōu)先權(quán)日2003年12月31日
發(fā)明者保羅·克里茲桑諾斯基 申請人:無極公司