專利名稱:使用通用web應用控制家庭網絡裝置的方法及其裝置的制作方法
技術領域:
本發明涉及一種在家庭網絡環境中通過使用通用web應用控制家庭網絡裝置的 方法和裝置。
背景技術:
隨著家庭網絡的普及,面向傳統個人電腦(PC)的網絡環境日益擴展到包括使用 各種低層網絡通信技術的電子家庭裝置的環境。因此,已經提出了家庭網絡中間件標準 (諸如,通用即插即用(UPnP)和數字生活網絡聯盟(DLNA)),以使這些家庭裝置根據互聯網 協議(IP)以統一的方式聯網。作為允許家庭內的電子裝置彼此連接的協作的DLNA建立能共同操作的聯網平 臺,從而根據DLNA互操作指南設計的裝置可通過家庭網絡自由地共享媒體內容(諸如,音 樂、照片和視頻)。UPnP限定提供服務的多個UPnP裝置和控制所述多個UPnP裝置的稱為控制點模塊 的UPnP控制點應用。控制點模塊表示安裝在提供用戶接口的裝置(諸如,PC或電視(TV) (數字TV(DTV)或IPTV))上的應用,并且控制多個UPnP裝置。這樣的控制點模塊根據外部 輸入發現各種類型的裝置,描述發現的裝置的功能,并根據簡單對象訪問協議(SOAP)控制 所述裝置提供的服務。UPnP/DLNA裝置(諸如,PC、TV、個人數字助理(PDA)、移動電話、網絡裝備、打印機 和連接到家庭網絡的各種類型的音頻/視頻裝置之一)通知控制點模塊這里發生的事件。 另外,UPnP/DLNA裝置將呈現web頁提供給控制點模塊,從而控制點模塊可通過使用呈現 web頁來控制UPnP/DLNA裝置,并可詢問UPnP/DLNA裝置的狀態。如上所述,在家庭網絡中控制UPnP/DLNA裝置的傳統方法使用稱為控制點模塊的 UPnP/DLNA控制點應用或家庭網絡裝置提供的靜態呈現web頁。使用遠程用戶接口(UI)的家庭網絡環境包括遠程UI客戶機(RUIC)、遠程UI服務 器(RUIS)和UPnP/DLNA裝置。傳統遠程UI技術的示例包括可擴展家庭影院(XHT)、克勞福 德工程聯合(Crawford engineering associates,CEA) 201. 4 和擴展遠程技術(XRT)。
發明內容
技術問題本發明提供了一種通過使用通用web應用在web上控制通用即插即用/數字生活 網絡聯盟(UPnP/DLNA)裝置的方法和設備。本發明還提供了一種通過使用通用web應用控制控制裝備中嵌入的功能作為 UPnP/DLNA裝置的方法和設備。技術方案根據本發明的一方面,提供了一種通過使用通用web應用控制家庭網絡裝置的方 法,所述方法包括從服務器接收用于控制家庭網絡裝置的控制信息,其中,由通用web應用來執行所述接收;通過使用接收的控制信息中包括的腳本應用程序接口(API)將用于控 制家庭網絡裝置的控制命令發送到控制點模塊;從控制點模塊接收通過對家庭網絡裝置執 行控制命令獲得的結果數據。根據本發明的另一方面,提供了一種通過使用包括通用web應用的家庭網絡控制 裝備控制家庭網絡裝置的方法,所述方法包括從服務器接收用于控制家庭網絡裝置的控 制信息,其中,由通用web應用執行所述接收;通過使用控制點模塊和接收的控制信息中包 括的腳本API來發現嵌入式裝置和家庭網絡裝置;對發現的嵌入式裝置和發現的家庭網絡 裝置執行控制命令。有益效果因此,在web瀏覽器中可通過使用統一 JavaScript API來發送各種通用即插即用 /數字生活網絡聯盟(UPnP/DLNA)應用程序接口(API),可基于超文本標記語言/可擴展標 記語言(HTML/XML)來實現UPnP/DLNA控制,如果為了新UPnP/DLNA擴展的目的而更新插 件,則HTML/XML提供商僅需要糾正相關腳本,從而可以更容易地實現UPnP/DLNA控制。家庭網絡控制裝備中提供的嵌入式功能可表現為UPnP/DLNA裝置,從而可由 JavaScript函數發現和控制。
圖1示出根據本發明實施例的用于控制家庭網絡裝置的系統。圖2示出根據本發明實施例的顯示通過使用通用web應用來控制家庭網絡裝置的 服務的用戶接口(UI)屏幕。圖3是示出根據本發明實施例的通過使用通用web應用控制家庭網絡裝置的方法 的流程圖。圖4示出根據本發明實施例的具有統一格式的腳本應用程序接口(API)。圖5是示出根據本發明實施例的處理通用即插即用/數字生活網絡聯盟(UPnP/ DLNA)API和宏API的程序的軟件功能框圖。圖6示出根據本發明實施例的通過使用腳本函數控制UPnP/DLNA預定記錄服務 (scheduled recording service, SRS)裝置的代石馬。圖7是用于解釋根據本發明實施例的通過使用通用web應用控制嵌入式裝置和家 庭網絡裝置的方法的示意圖。
具體實施例方式最優模式根據本發明的一方面,提供了一種通過使用通用web應用控制家庭網絡裝置的方 法,所述方法包括從服務器接收用于控制家庭網絡裝置的控制信息,其中,由通用web應 用來執行所述接收;通過使用接收的控制信息中包括的腳本應用程序接口(API)將用于控 制家庭網絡裝置的控制命令發送到控制點模塊;從控制點模塊接收通過對家庭網絡裝置執 行控制命令獲得的結果數據。通用web應用可以是基于超文本標記語言(HTML)的web瀏覽器或基于可擴展標 記語言(XML)的控件,腳本API可以具有統一格式并且包括API的名稱,所述API的名稱映射到家庭網絡API,控制點模塊使用所述家庭網絡API執行控制命令;和用于映射的API 的參數。將控制命令發送到控制點模塊的步驟可包括將家庭網絡API作為腳本API中包括 的變量發送到控制點模塊,使用所述家庭網絡API執行控制命令。將控制命令發送到控制點模塊的步驟可包括通過使用宏API來發送多個控制命令,使用所述宏API對家庭網絡裝置執行一個或多個控制命令。可通過異步超文本傳輸協議(HTTP)通信執行控制信息的接收,以用于用戶接口 屏幕配置。異步通信可使用異步JavaScript和XML(Ajax)。家庭網絡可以是基于通用即插即用/數字生活網絡聯盟(UPnP/DLNA)的家庭網 絡,家庭網絡裝置可以是UPnP/DLNA裝置,家庭網絡API可以是UPnP/DLNA API,控制點模塊 可以是與通用web應用通信的插件應用或瀏覽器的嵌入式對象應用。插件應用可調用UPnP/DLNA API,使用UPnP/DLNA API執行接收的控制命令。插件應用可通過回調函數將執行控制命令獲得的結果數據發送到web應用。如果存在兩種或更多種類型的結果數據,則結果數據可以以XML格式被發送到 web應用。所述方法還可包括通過使用web應用來收集接收的結果數據并將收集的結果數 據提供給用戶。如果存在兩種或更多種類型的接收的結果數據,則將收集的結果數據提供給用戶 的步驟可包括讀取預注冊的XML格式化的屬性信息,并將讀取的XML格式化的屬性信息提 供給用戶。根據本發明的另一方面,提供了一種通過使用包括通用web應用的家庭網絡控制 裝備控制家庭網絡裝置的方法,所述方法包括從服務器接收用于控制家庭網絡裝置的控 制信息,其中,由通用web應用執行所述接收;通過使用控制點模塊和接收的控制信息中包 括的腳本API來發現嵌入式裝置和家庭網絡裝置;對發現的嵌入式裝置和發現的家庭網絡 裝置執行控制命令。通用web應用可以是基于HTML的web瀏覽器或基于XML的控件,嵌入式裝置可以 是家庭網絡控制裝備的嵌入的功能并可表現為UPnP/DLNA裝置。所述發現的步驟可包括通過使用腳本API讀取嵌入式裝置的列表來確定是否存 在嵌入式裝置。如果避免嵌入式裝置被除包括嵌入式裝置的家庭網絡控制裝備之外的控制裝備 控制,則執行控制命令的步驟可包括不執行基于分配到家庭網絡控制裝備的互聯網協議 (IP)地址或標識符從其它控制裝備接收的控制命令。家庭網絡可以是基于UPnP/DLNA的家庭網絡,家庭網絡裝置可以是UPnP/DLNA裝 置,家庭網絡API可以是UPnP/DLNA API,控制點模塊可以是與通用web應用通信的插件應 用或瀏覽器的嵌入式對象應用。根據本發明的另一方面,提供了一種通過使用包括通用web應用的家庭網絡控制 裝備控制家庭網絡裝置的方法,所述方法包括從服務器接收用于控制家庭網絡裝置的控 制信息,其中,由通用web應用執行所述接收;通過使用控制點模塊和接收的控制信息中包 括的腳本API來發現嵌入式裝置和家庭網絡裝置;對發現的嵌入式裝置和發現的家庭網絡裝置執行控制命令;基于通過執行控制命令獲得的結果數據將存儲在家庭網絡裝置中的內 容項的列表或與內容項相關的信息呈現給用戶。根據本發明的另一方面,提供了一種通過使用包括通用web應用的家庭網絡控制 裝備控制家庭網絡裝置的方法,所述方法包括從服務器接收用于控制家庭網絡裝置的控 制信息,其中,由通用web應用執行所述接收;通過使用控制點模塊和接收的控制信息中包 括的腳本API來發現嵌入式裝置和家庭網絡裝置;對發現的嵌入式裝置和發現的家庭網絡 裝置執行控制命令;基于通過執行控制命令獲得的結果數據將存儲在家庭網絡裝置中的 內容項或與內容項相關的信息呈現給用戶,從而用戶能夠消費內容項或與內容項相關的信 肩、o根據本發明的另一方面,提供了一種通過使用包括通用web應用的家庭網絡控制 裝備控制家庭網絡裝置的方法,所述方法包括從服務器接收用于控制家庭網絡裝置的控 制信息,其中,由通用web應用執行所述接收;通過使用控制點模塊和接收的控制信息中包 括的腳本API來發現嵌入式裝置和家庭網絡裝置;對發現的嵌入式裝置和發現的家庭網絡 裝置執行控制命令,其中,避免將與家庭網絡裝置、服務、用戶或內容項相關的信息提供給 家庭網絡之外的第三方。根據本發明的另一方面,提供了一種通過使用包括通用web應用的家庭網絡控制 裝備控制家庭網絡裝置的方法,所述方法包括從服務器接收用于控制家庭網絡裝置的控 制信息,其中,由通用web應用執行所述接收;通過使用控制點模塊和接收的控制信息中包 括的腳本API來發現嵌入式裝置和家庭網絡裝置;對發現的嵌入式裝置和發現的家庭網絡 裝置執行控制命令,其中,用戶能夠通過使用通用web應用來限定可接入家庭網絡的一組 內容項、裝置和服務。根據本發明的另一方面,提供了一種通過使用通用web應用控制家庭網絡裝備的 設備,所述設備包括服務器,將用于控制家庭網絡裝備的控制信息發送到通用web應用; web應用模塊,通過使用接收的控制信息中包括的腳本API將用于控制家庭網絡裝備的控 制命令發送到控制點模塊;控制點模塊,將通過對家庭網絡裝備執行控制命令獲得的結果 數據發送到web應用模塊;家庭網絡裝備,提供控制點模塊請求的控制服務。web應用模塊可以是基于HTML的web瀏覽器或基于XML的控件,并且包括統一 API 處理模塊,其中,統一 API處理模塊通過使用腳本API將控制命令發送到控制點模塊。腳本API可具有統一格式,其中,統一 API處理模塊包括API的名稱,所述API的 名稱映射到家庭網絡API,控制點模塊使用所述家庭網絡API執行控制命令;和用于映射的 API的參數。統一 API處理模塊可將家庭網絡API作為腳本API中包括的變量發送到控制點模 塊,使用所述家庭網絡API執行控制命令。web應用模塊可包括宏API處理模塊,其中,宏API處理模塊通過使用宏API來發 送多個控制命令,使用所述宏API對家庭網絡裝備執行一個或多個控制命令。家庭網絡可以是基于UPnP/DLNA的家庭網絡,家庭網絡裝備可以是UPnP/DLNA裝 置,家庭網絡API可以是UPnP/DLNA API,控制點模塊可以是與通用web應用通信的插件應 用或瀏覽器的嵌入式對象應用。插件應用還可包括調用UPnP/DLNA API的UPnP/DLNA API調用模塊,使用UPnP/DLNA API執行接收的控制命令。插件應用還可包括回調函數模塊,通過回調函數將執行控制命令獲得的結果數 據發送到web應用。如果存在兩種或更多種類型的結果數據,則插件應用可以以XML格式將結果數據 發送到web應用。所述設備還可包括用戶接口模塊,通過使用web應用來收集接收的結果數據并 將收集的結果數據提供給用戶。根據本發明的另一方面,提供了一種通過使用通用web應用控制家庭網絡裝備的 設備,所述設備包括服務器,將用于控制家庭網絡裝備的控制信息發送到通用web應用; web應用模塊,通過使用接收的控制信息中包括的腳本API將用于控制家庭網絡裝備的控 制命令發送到控制點模塊;控制點模塊,發現家庭網絡控制裝備的嵌入式裝備和家庭網絡 裝備;家庭網絡裝備,提供控制點模塊請求的控制服務。web應用模塊可以是基于HTML的通用web瀏覽器或基于XML的控件,所述設備還 可包括嵌入式UPnP/DLNA裝置模塊,其中,嵌入式UPnP/DLNA裝置模塊將家庭網絡控制裝備 中包括的嵌入式裝備表現為UPnP/DLNA裝置。所述設備還可包括嵌入式UPnP/DLNA確定模塊,通過使用腳本API讀取嵌入式裝 備的列表來確定是否存在嵌入式裝備。家庭網絡可以是基于UPnP/DLNA的家庭網絡,家庭網絡裝置可以是UPnP/DLNA裝 置,家庭網絡API可以是UPnP/DLNA API,控制點模塊可以是與web應用通信的插件應用或 瀏覽器的嵌入式對象應用。根據本發明的另一方面,提供了一種嵌入有用于執行控制家庭網絡裝置的方法的 程序的計算機可讀記錄介質。發明模式參照用于示出本發明的優選實施例的附圖以充分理解本發明、本發明的優點以及 本發明的實現完成的目標。現在,參照附圖更詳細地描述本發明,其示例性實施例在附圖中示出。圖1示出根據本發明實施例的用于控制家庭網絡裝置的系統100。參照圖1,系統100包括服務器130,通過使用web應用(諸如基于超文本標記語 言(HTML)的通用web瀏覽器或基于可擴展標記語言(XML)的控件)經由互聯網120發送 用于控制家庭網絡裝置的控制信息;家庭網絡控制裝備110,設置有web應用;以及家庭網 絡裝置控制服務模塊140,提供家庭網絡控制裝備110所需的控制服務。家庭網絡控制裝備110包括通用即插即用/數字生活網絡聯盟(UPnP/DLNA)控制 點模塊和web應用,web應用通過使用從服務器130接收的控制信息中包括的腳本應用程序 接口(API)將家庭網絡裝置控制服務模塊140的控制命令發送到控制點模塊。控制點模塊 將通過執行家庭網絡裝置控制服務模塊140的控制命令獲得的結果數據發送到web應用。 也就是說,web應用和控制點模塊互相通信。控制點模塊可以是與web應用進行通信的插件應用或web瀏覽器的嵌入式對象應 用。插件應用表示web瀏覽器中的與web瀏覽器交互以助于執行web瀏覽器不支持的函數 的程序。如果圖1的控制點模塊是插件應用,則控制點模塊發現和控制家庭網絡的UPnP/DLNA裝置。控制命令可以通過UPnP/DLNA簡單對象訪問協議(SOAP)動作來產生控制點模 塊。另外,如果家庭網絡控制裝備110中的控制點模塊是插件應用,則控制點模塊從 家庭網絡裝置控制服務模塊140接收結果數據,并通過回調函數將結果數據作為腳本發送 到web應用,以配置用戶接口(UI)屏幕。 同時,服務器130可通過使用加密技術發送控制信息來保證安全性,并可對UI 屏幕配置使用異步超文本傳輸協議(HTTP)通信。例如,異步通信可使用JavaScript和 XML(Ajax)。Ajax表示用于創建交互式web應用的一組相關web開發技術。使用AjaX,web 應用可以從服務器異步地檢索數據。在此將不給出Ajax的詳細解釋。圖2示出根據本發明實施例的顯示通過使用通用web應用來控制家庭網絡裝置的 服務的UI屏幕。圖3是示出根據本發明實施例的通過使用通用web應用控制家庭網絡裝 置的方法的流程圖。參照圖2和圖3,在操作310,通過使用通用web應用從服務器接收用于控制家庭 網絡裝置(例如,家庭網絡個人錄像機(PVR))的控制信息。在操作320,通過使用接收的控 制信息中包括的腳本API將控制命令發送到控制點模塊(控制器)。在操作330,從控制點 模塊接收通過對家庭網絡裝置執行控制命令獲得的結果數據。UPnP/DLNA架構使用本地應用以再現家庭網絡中另一家庭網絡裝置的媒體內容。因此,為了在web瀏覽器上使用用于控制UPnP/DLNA裝置的UPnP/DLNA服務,應該 以插件方式執行UPnP/DLNA控制點模塊的功能。因此,應該定義大量web腳本API,并且還 不存在處理新的UPnP/DLNA API的方法。然而,圖3所示的通過使用通用web應用(例如,web瀏覽器或web控件)在web 上控制UPnP/DLNA裝置的方法可以通過使用可以發送所有UPnP/DLNA API的單獨的腳本 API來更容易地請求多個UPnP/DLNA控制命令。腳本API可以是JavaScript API。此外,圖3的方法可通過使用具有可以組合各種UPnP/DLNA API的宏函數的腳本 API在web瀏覽器中組合各種UPnP/DLNA控制命令。同時,UPnP/DLNA控制點模塊可通過回調函數將結果數據(例如,關于DLNA的列 表的信息或關于是否可使用打印機/PVR服務的信息)發送到通用web應用(諸如,web瀏 覽器或控件)。如果存在兩種或更多種類型的結果數據,則可以以XML格式發送結果數據。 也就是說,將UPnP/DLNA信息發送到基于XML的JavaScript函數。因此,由web瀏覽器和 UPnP/DLNA控制點模塊解析的JavaScript函數可以彼此交換信息用于基于HTML的家庭網 絡控制或基于XML的家庭網絡控制。現將參照圖4來解釋具有統一格式的JavaScript API。圖4示出根據本發明實施例的具有統一格式的JavaScript API。參照圖4,UPnPACti0n()是所有類型的UPnP/DLNA裝置都可以控制的JavaScript API。圖 4 的 JavaScript API UPnPAction ()包括(i)API 的名稱,映射到家庭網絡API, 控制點模塊使用家庭網絡API執行控制命令;(ii)用于映射的API的參數。作為UPnP/DLNA API 的家庭網絡 API 的示例可包括 CreateRecordScheduleO、 GetRecordSchedule ()禾口 EnableRecordScheduleO °
可通過使用如圖4所示的具有統一格式的JavaScript API UPnPAction ()來執行所有 API CreateRecordSchedule ()、GetRecordSchedule ()禾口 EnableRecordSchedule ()。 也就是說,可以將家庭網絡API作為JavaScript APIUPnPAction ()中包括的變量發送到控 制點模塊,其中,使用所述家庭網絡API執行控制命令。與發送的家庭網絡API —起發送例 如 <RecordSchduleIDX/RecordScheduleID> 和 <FilterX/Filter> 的必要參數。因此,可通過在web瀏覽器中使用統一 JavaScript API UPnPAction ()來 執行各個 UPnP/DLNA API CreateRecordSchedule () , GetRecordSchedule ()和 EnableRecordSchedule (),可以基于HTML/XML 實現UPnP/DLNA控制,如果為了新UPnP/DLNA 擴展的目的而更新插件,則HTML/XML提供商僅需要糾正相關腳本,從而可以更容易地實現 UPnP/DLNA 控制。圖5是示出根據本發明實施例的處理UPnP/DLNA API和宏API的程序的軟件功能 框圖。參照圖5,CreateRecordSchedule ()和 FindDeviceOAPI 分別是 UPnP/DLNAAPI 和宏API。宏API FindDevice ()是允許控制點模塊CP發現裝置的宏UPnP/DLNA函數。例 如,如果宏API FindDevice ()是FindDevice ( ‘SRS’ ),則允許控制點模塊CP發現預定記 錄服務(SRS)裝置。宏API FindDeviceO還可以是允許控制點模塊CP再現家庭網絡中所 有音樂文件的PlayAllMusic (),或可以是允許控制點模塊CP確定是否存在本地調諧器的 FindLocalDevice(tuner)。如圖5 所示,UPnP/DLNA API CreateRecordSchedule ()可直接調用插件應用 520 中的UPnP/DLNA動作。然而,在腳本函數510中,宏API FindDevice ()可僅在執行家庭網 絡控制宏步驟之后通過使用插件應用520來調用API并執行宏函數。因此,可通過使用具有宏函數的單獨的JavaScript API來組合各種類型的UPnP/ DLNA函數,此外,可通過定義新API來執行UPnP/DLNA中定義的函數和未定義的函數兩者。圖6示出根據本發明實施例的通過使用腳本函數控制UPnP/DLNA SRS裝置的代 碼。參照圖6,函數 RecordO 包括 title、channelIDType、ChannelID、startTime 和持 續時間作為自變量。如果調用FindDevice ( ‘SRS,)從而發現SRS裝置,則變量xmlheader被設置為 一部分(610),基于自變量標題、channelIDType、ChannelID、StartTime和持續時間通過使 用 API UPnPAction ()來發送API CreateRecordSchedule ()。自變量標題、channellDType、 Channel ID、startTime 禾口 持續時間是參數 <arguments><Elements>. . . </Elements></ arguments)(620)。以下詳細示出圖6的代碼。<html><head><title>AV Plug-in Control Page</title>〈object id = ” DLNA_AV” type = ” application/DLNA_AV”/></head><script type =,,text/javascript,,>function InitPluginO {. . . }function OnChangeFromPlogin(val){
var temp ;if (val = = "DeviceListXML") {temp = document, embeds
. dev_list ;}else if (val = = "ContentListXML") {temp = document, embeds
. cnt_ list ;}}
function DLNAServiceO{DLNA_AV. HNAction(devicelD, svcName, iGetdeviceList', iMediaServer' )}〈/script〉<body onload =,,InitPlugin (),,>document, embeds
. onChange = onChangeFromPlugin ;〈input type = " button" value = " DLNA film service" onClick ="DLNAServiceO ”ID =” button 1” NAME =” DLNAMovie” X/body><html>如上代碼所示,在函數DLNAServiceO中,可通過HNAction函數DLNA_ AV. HNAction(devicelD, svcName, iGetdeviceList', ‘MediaService,)將各種類型的 UPnP/DLNA API發送到插件應用。接下來,插件應用解析UPnP/DLNA函數并調用相關的 UPnP/DLNA API。同時,所述代碼的函數OnChangeFromPlugin (val)是處理和發送通過插件應用調 用的回調函數的JavaScript函數。回調函數是〈bodyX/body〉中的OnChangeFromPlugin。如果事件發生并且信息需 要被發送到JavaScript函數OnChangeFromPlugin (val),則插件應用調用回調函數。如果存在插件應用發送到JavaScript函數OnChangeFromPlugin (val)的兩種或 更多種類型的信息,則以XML格式發送所述信息。如果存在由JavaScript函數OnChangeFromPlugin(val)接收的兩種或更多種 類型的信息(例如,關于裝置/內容的列表的信息),則讀取并且處理諸如document, embeds
. dev_list 禾口 document, embeds
. cnt_list 的屬性信息。因此,從 JavaScript 函數發送的XML信息可被解析并被提供給用戶。因此,可將各種UPnP/DLNA信息發送到web 瀏覽器,并且可由web瀏覽器和插件應用共享各種類型的數據。圖7是用于解釋根據本發明實施例的通過使用通用web應用控制嵌入式裝置和家 庭網絡裝置的方法的示意圖。設置有web瀏覽器的家庭網絡控制裝備110通過使用JavaScript函數以這樣的 方式執行家庭網絡控制JavaScript函數將UPnP/DLNA API發送到插件應用,插件應用調 用相關的UPnP/DLNA API以發現和控制家庭網絡PVR140。嵌入式或內建功能(也就是嵌入式PVR功能111)可存在于設置有web瀏覽器的 家庭網絡控制裝備110(例如,數字電視(DTV))中。例如,如果家庭網絡控制裝備110是具有PVR功能的DTV,并且家庭網絡PVR 140 不是通過UPnP/DLNA技術被控制,則不能通過JavaScript函數控制PVR功能。為了解決這個問題,圖7的方法將嵌入式PVR功能111表現為UPnP/DLNA裝置,從而JavaScript函數可發現嵌入式PVR功能111并控制發現的嵌入式PVR功能111。圖7的通過使用包括通用web應用的家庭網絡控制裝備110控制家庭網絡裝置的 方法包括通過使用通用web應用從服務器接收控制信息,通過使用控制點模塊和接收的 控制信息中包括的腳本API來發現家庭網絡裝置(S卩,家庭網絡PVR 140)和嵌入式功能 (即,嵌入式PVR功能111),對發現的家庭網絡裝置和發現的嵌入式裝置執行控制命令。作為控制裝備110中提供的嵌入式PVR功能111的嵌入式功能可表現為UPnP/ DLNA裝置。因此,可以像家庭網絡裝置一樣,由JavaScript函數發現和控制嵌入式功能。同時,如果嵌入式功能表現為UPnP/DLNA裝置,則必須確定由JavaScript函數發 現的UPnP/DLNA裝置是嵌入式功能還是家庭網絡裝置。因此,圖7的方法通過使用腳本API 讀取嵌入式裝置的列表來確定是否存在嵌入式功能。例如,可以使用作為用于發現嵌入式功能的API的 FindLocalDevice(DeviceType)、作為用于請求SOAP動作的性能的API的 HNAction(DeviceHandle,ServiceHandle,ActionName,ActionParameters,UserCookie)或 用于獲得SOAP結果數據的回調函數的屬性的onHNActionResult。在一些情況中,家庭網絡中的其它裝備不應控制表現為UPnP/DLNA裝置的嵌入式 功能。因此,如果嵌入式功能不應被除設置有嵌入式功能的家庭網絡控制裝備110之外的 控制裝備控制,則不會執行基于分配到家庭網絡控制裝備110的標識符或互聯網協議(IP) 地址(諸如,本地主機地址或127. 0. 0. 1)從其它控制裝備接收的控制命令。圖7的方法可以向用戶提供家庭網絡裝置中存儲的內容項的列表或與內容項有 關的信息,并可以支持所述內容項和與內容項有關的信息,從而用戶能夠消費內容項或與 內容項有關的信息。此外,可以避免將與家庭網絡裝置、服務、用戶或內容相關的信息提供給家庭網絡 之外的第三方(例如,包括IPTV服務提供商或信任的第三互聯網服務提供商)。另外,用戶 能夠通過使用通用web應用來限定可接入家庭網絡的一組內容項、裝置和服務。根據本發明的控制家庭網絡裝置的方法可被寫成計算機程序,并可以在通過使用 計算機可讀記錄介質執行程序的通用數字計算機上實現。另外,如上所述,可通過使用計算機可讀記錄介質上的各種裝置來記錄本發明中 使用的數據。計算機可讀記錄介質的示例包括諸如磁性存儲介質(例如,只讀存儲器(ROM)、軟 盤或硬盤)、光學可讀介質(例如,緊湊盤只讀存儲器(CD-ROM)或數字通用盤(DVD))的存 儲介質和載波(例如,互聯網上的傳輸)。雖然已經使用特定術語參照示例性實施例具體示出和描述了本發明,但是實施例 和術語用于解釋本發明,并不應該被解釋為限制由權利要求限定的本發明的范圍。優選實 施例應被理解為僅用于描述的目的而不是限制的目的。因此,本發明的范圍不是由發明的 詳細描述限定,而是由權利要求限定,所述范圍內的所有區別將被理解為包括在本發明中。
權利要求
一種通過使用通用web應用控制家庭網絡裝置的方法,所述方法包括從服務器接收用于控制家庭網絡裝置的控制信息,其中,由通用web應用來執行所述接收;通過使用接收的控制信息中包括的腳本應用程序接口(API)將用于控制家庭網絡裝置的控制命令發送到控制點模塊;以及從控制點模塊接收通過對家庭網絡裝置執行控制命令獲得的結果數據。
2.且包括API的 名稱,所述API的名稱映射到家庭網絡API,控制點模塊使用所述家庭網絡API執行控制命 令;和用于映射的API的參數。
3.如權利要求2所述的方法,其中,將控制命令發送到控制點模塊的步驟包括將家庭 網絡API作為腳本API中包括的變量發送到控制點模塊,使用所述家庭網絡API執行控制 命令。
4.如權利要求1所述的方法,其中,將控制命令發送到控制點模塊的步驟包括通過使 用宏API來發送多個控制命令,使用所述宏API對家庭網絡裝置執行一個或多個控制命令。
5.如權利要求1所述的方法,其中,通過異步超文本傳輸協議(HTTP)通信執行控制信 息的接收,以用于用戶接口屏幕配置。
6.如權利要求5所述的方法,其中,異步通信使用異步JavaScript和XML(Ajax)。
7.如權利要求1所述的方法,其中,家庭網絡是基于通用即插即用/數字生活網絡聯 盟(UPnP/DLNA)的家庭網絡,家庭網絡裝置是UPnP/DLNA裝置,家庭網絡API是UPnP/DLNA API,控制點模塊是與通用web應用通信的插件應用或瀏覽器的嵌入式對象應用。
8.如權利要求7所述的方法,其中,插件應用調用UPnP/DLNAAPI,使用UPnP/DLNAAPI 用于執行接收的控制命令。
9.如權利要求8所述的方法,其中,插件應用通過回調函數將執行控制命令獲得的結 果數據發送到web應用。
10.如權利要求9所述的方法,其中,如果存在兩種或更多種類型的結果數據,則結果 數據以XML格式被發送到web應用。
11.如權利要求1所述的方法,還包括通過使用web應用來收集接收的結果數據并將收 集的結果數據提供給用戶。
12.如權利要求11所述的方法,其中,如果存在兩種或更多種類型的接收的結果數據, 則將收集的結果數據提供給用戶的步驟包括讀取預注冊的XML格式化的屬性信息,并將讀 取的XML格式化的屬性信息提供給用戶。
13.一種通過使用包括通用web應用的家庭網絡控制裝備控制家庭網絡裝置的方法, 所述方法包括從服務器接收用于控制家庭網絡裝置的控制信息,其中,由通用web應用執行所述接收;通過使用控制點模塊和接收的控制信息中包括的腳本API來發現嵌入式裝置和家庭 網絡裝置;以及對發現的嵌入式裝置和發現的家庭網絡裝置執行控制命令。
14.如權利要求13所述的方法,其中,通用web應用是基于HTML的web瀏覽器或基于 XML的控件,嵌入式裝置是家庭網絡控制裝備的嵌入式功能并表現為UPnP/DLNA裝置。
15.如權利要求13所述的方法,其中,所述發現的步驟包括通過使用腳本API讀取嵌入 式裝置的列表來確定是否存在嵌入式裝置。
16.如權利要求13所述的方法,其中,如果避免嵌入式裝置被除包括嵌入式裝置的家 庭網絡控制裝備之外的控制裝備控制,則執行控制命令的步驟包括不執行基于分配到家庭 網絡控制裝備的互聯網協議(IP)地址或標識符從其它控制裝備接收的控制命令。
17.如權利要求13所述的方法,其中,家庭網絡是基于UPnP/DLNA的家庭網絡,家庭網 絡裝置是UPnP/DLNA裝置,家庭網絡API是UPnP/DLNAAPI,控制點模塊是與通用web應用通 信的插件應用或瀏覽器的嵌入式對象應用。
18.一種通過使用包括通用web應用的家庭網絡控制裝備控制家庭網絡裝置的方法, 所述方法包括從服務器接收用于控制家庭網絡裝置的控制信息,其中,由通用web應用執行所述接收;通過使用控制點模塊和接收的控制信息中包括的腳本API來發現嵌入式裝置和家庭 網絡裝置;對發現的嵌入式裝置和發現的家庭網絡裝置執行控制命令;以及 基于通過執行控制命令獲得的結果數據將存儲在家庭網絡裝置中的內容項的列表或 與內容項相關的信息呈現給用戶。
19.一種通過使用包括通用web應用的家庭網絡控制裝備控制家庭網絡裝置的方法, 所述方法包括從服務器接收用于控制家庭網絡裝置的控制信息,其中,由通用web應用執行所述接收;通過使用控制點模塊和接收的控制信息中包括的腳本API來發現嵌入式裝置和家庭 網絡裝置;對發現的嵌入式裝置和發現的家庭網絡裝置執行控制命令;以及 基于通過執行控制命令獲得的結果數據將存儲在家庭網絡裝置中的內容項或與內容 項相關的信息呈現給用戶,從而用戶能夠消費內容項或與內容項相關的信息。
20.一種通過使用包括通用web應用的家庭網絡控制裝備控制家庭網絡裝置的方法, 所述方法包括從服務器接收用于控制家庭網絡裝置的控制信息,其中,由通用web應用執行所述接收;通過使用控制點模塊和接收的控制信息中包括的腳本API來發現嵌入式裝置和家庭 網絡裝置;以及對發現的嵌入式裝置和發現的家庭網絡裝置執行控制命令,其中,避免將與家庭網絡裝置、服務、用戶或內容項相關的信息提供給家庭網絡之外的第三方。
21.—種通過使用包括通用web應用的家庭網絡控制裝備控制家庭網絡裝置的方法, 所述方法包括從服務器接收用于控制家庭網絡裝置的控制信息,其中,由通用web應用執行所述接收;通過使用控制點模塊和接收的控制信息中包括的腳本API來發現嵌入式裝置和家庭 網絡裝置;以及對發現的嵌入式裝置和發現的家庭網絡裝置執行控制命令,其中,用戶能夠通過使用通用web應用來限定可接入家庭網絡的一組內容項、裝置和 服務。
22.一種通過使用通用web應用控制家庭網絡裝備的設備,所述設備包括服務器,將用于控制家庭網絡裝備的控制信息發送到通用web應用;web應用模塊,通過使用接收的控制信息中包括的腳本API將用于控制家庭網絡裝備 的控制命令發送到控制點模塊;控制點模塊,將通過對家庭網絡裝備執行控制命令獲得的結果數據發送到web應用模 塊;和家庭網絡裝備,提供控制點模塊請求的控制服務。
23.如權利要求22所述的設備,其中,web應用模塊是基于HTML的web瀏覽器或基于 XML的控件,并且包括統一 API處理模塊,其中,統一 API處理模塊通過使用腳本API將控制命令發送到控制點模塊。
24.如權利要求23所述的設備,其中,腳本API具有統一格式,其中,統一 API處理模塊包括API的名稱,所述API的名稱映射到家庭網絡API,控制 點模塊使用所述家庭網絡API執行控制命令;和用于映射的API的參數。
25.如權利要求24所述的設備,其中,統一API處理模塊將家庭網絡API作為腳本API 中包括的變量發送到控制點模塊,使用所述家庭網絡API執行控制命令。
26.如權利要求22所述的設備,其中,web應用模塊包括宏API處理模塊,其中,宏API處理模塊通過使用宏API來發送多個控制命令,使用所述宏API對家庭網 絡裝備執行一個或多個控制命令。
27.如權利要求22所述的設備,其中,家庭網絡是基于UPnP/DLNA的家庭網絡,家庭網 絡裝備是UPnP/DLNA裝置,家庭網絡API是UPnP/DLNAAPI,控制點模塊是與通用web應用通 信的插件應用或瀏覽器的嵌入式對象應用。
28.如權利要求27所述的設備,其中,插件應用還包括調用UPnP/DLNAAPI的UPnP/DLNA API調用模塊,使用UPnP/DLNA API執行接收的控制命令。
29.如權利要求28所述的設備,其中,插件應用還包括回調函數模塊,通過回調函數 將執行控制命令獲得的結果數據發送到web應用。
30.如權利要求29所述的設備,其中,如果存在兩種或更多種類型的結果數據,則插件 應用以XML格式將結果數據發送到web應用。
31.如權利要求22所述的設備,還包括用戶接口模塊,通過使用web應用來收集接收 的結果數據并將收集的結果數據提供給用戶。
32.—種通過使用通用web應用控制家庭網絡裝備的設備,所述設備包括服務器,將用于控制家庭網絡裝備的控制信息發送到通用web應用;web應用模塊,通過使用接收的控制信息中包括的腳本API將用于控制家庭網絡裝備的控制命令發送到控制點模塊;控制點模塊,發現家庭網絡控制裝備的嵌入式裝備和家庭網絡裝備;和 家庭網絡裝備,提供控制點模塊請求的控制服務。
33.如權利要求32所述的設備,其中,web應用模塊是基于HTML的通用web瀏覽器或 基于XML的控件,所述設備還包括嵌入式UPnP/DLNA裝置模塊,其中,嵌入式UPnP/DLNA裝置模塊將家庭網絡控制裝備中包括的嵌入式裝備表現為 UPnP/DLNA 裝置。
34.如權利要求32所述的設備,還包括嵌入式UPnP/DLNA確定模塊,通過使用腳本 API讀取嵌入式裝備的列表來確定是否存在嵌入式裝備。
35.如權利要求32所述的設備,其中,家庭網絡是基于UPnP/DLNA的家庭網絡,家庭網 絡裝置是UPnP/DLNA裝置,家庭網絡API是UPnP/DLNAAPI,控制點模塊是與web應用通信的 插件應用或瀏覽器的嵌入式對象應用。
全文摘要
提供了一種通過使用通用web應用控制家庭網絡裝置的方法。所述方法包括從服務器接收用于控制家庭網絡裝置的控制信息,其中,由通用web應用來執行所述接收;通過使用接收的控制信息中包括的腳本應用程序接口(API)將用于控制家庭網絡裝置的控制命令發送到控制點模塊;從控制點模塊接收通過對家庭網絡裝置執行控制命令獲得的結果數據。
文檔編號H04L12/28GK101878616SQ200880118083
公開日2010年11月3日 申請日期2008年11月27日 優先權日2007年11月27日
發明者孫泳哲, 樸鐘旭, 陳浩 申請人:三星電子株式會社