專利名稱:控制非通用即插即用UPnP設(shè)備的方法、裝置及其系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種控制非通用即插即用UPnP 設(shè)備的方法及其裝置,和一種通信系統(tǒng)。
背景技術(shù):
目前,隨著家庭網(wǎng)絡(luò)技術(shù)的發(fā)展,特別是UPnP (Universal Plug and Play,通用即插即用)協(xié)議的使用,越來(lái)越多的家電設(shè)備使用UPnP技 術(shù)來(lái)實(shí)現(xiàn)互相通信和資源共享。UPnP是針對(duì)智能家電、無(wú)線設(shè)備以及 各種外觀尺寸的個(gè)人電腦的普遍對(duì)等(peer-to-peer)網(wǎng)絡(luò)連接而設(shè)計(jì)的 一種架構(gòu)。它旨在為家庭、小型企業(yè)、公共場(chǎng)所中或連接到互聯(lián)網(wǎng)的 ad-hoc網(wǎng)(來(lái)源于阿拉伯語(yǔ),表示一種特殊的多跳移動(dòng)無(wú)線網(wǎng)絡(luò)拓樸) 或?yàn)楣芾砭W(wǎng)絡(luò)提供易于使用、靈活且基于標(biāo)準(zhǔn)的連接。UPnP是一個(gè)充 分利用TCP/IP (Transmission Control Protocol/Internet Protocol,傳輸控 制/網(wǎng)際協(xié)議)和Web技術(shù)的分布式開(kāi)放型網(wǎng)絡(luò)體系結(jié)構(gòu),除能夠在家 中、辦公室和公共場(chǎng)實(shí)現(xiàn)所聯(lián)網(wǎng)設(shè)備之間的完全控制和數(shù)據(jù)傳輸之外, 還可建立無(wú)縫緊密的網(wǎng)絡(luò)連接。
服務(wù)、設(shè)備和控制點(diǎn)是UPnP網(wǎng)絡(luò)的基本組成成分。在UPnP網(wǎng)絡(luò) 中,最小的控制單元就是服務(wù)。服務(wù)描述的是設(shè)備在不同的情況下的活 動(dòng)和設(shè)備的狀態(tài)。UPnP網(wǎng)絡(luò)中定義的設(shè)備具有很廣泛的含義,各種各 樣的家電、電腦外設(shè)、智能設(shè)備、無(wú)線設(shè)備、個(gè)人電腦等等都可成為其 中一員。在UPnP網(wǎng)絡(luò)中,控制點(diǎn)指的是可以發(fā)現(xiàn)并控制其他設(shè)備的控 制設(shè)備。UPnP設(shè)備通過(guò)SSDP (筒單服務(wù)發(fā)現(xiàn)協(xié)議)協(xié)議向網(wǎng)絡(luò)中的控 制點(diǎn)宣告其服務(wù);UPnP控制點(diǎn)通過(guò)SSDP協(xié)議發(fā)現(xiàn)UPnP設(shè)備,并通過(guò)
SOAP (簡(jiǎn)單對(duì)象訪問(wèn)協(xié)議)協(xié)議來(lái)控制UPnP設(shè)備。
在UPnP等家庭網(wǎng)絡(luò)技術(shù)出現(xiàn)之前,已經(jīng)存在了多種家電設(shè)備和電 子產(chǎn)品,特別是一些智能家電設(shè)備,本身資源豐富,功能強(qiáng)大,然而這 些設(shè)備原先并不是針對(duì)UPnP網(wǎng)絡(luò)設(shè)計(jì)的,本身不具備UPnP功能,無(wú) 法加入U(xiǎn)PnP網(wǎng)絡(luò),使用UPnP方式進(jìn)行控制。同時(shí),由于設(shè)備自身資 源有限等原因,許多簡(jiǎn)單家電設(shè)備無(wú)法在原有的平臺(tái)上提供UPnP功能。 為了使得原有的家電設(shè)備和電子產(chǎn)品得到充分地利用,適應(yīng)UPnP網(wǎng)絡(luò) 發(fā)展的需要,需要設(shè)法使得這些不具備UPnP功能的設(shè)備(非UPnP設(shè) 備),能夠加入到UPnP網(wǎng)絡(luò)中來(lái),實(shí)現(xiàn)信息交互和資源共享。
現(xiàn)有技術(shù)是在原有非UPnP設(shè)備的基礎(chǔ)上,開(kāi)發(fā)與之相對(duì)應(yīng)的UPnP 設(shè)備程序,添加UPnP相關(guān)功能,使其成為UPnP設(shè)備;對(duì)于不具備信 息處理能力的非UPnP設(shè)備,則要另外添加控制部件,以處理UPnP協(xié) 議和實(shí)現(xiàn)發(fā)現(xiàn)控制機(jī)制。如果開(kāi)發(fā)的設(shè)備是UPnP論壇定義的標(biāo)準(zhǔn)設(shè)備, 就遵從UPnP論壇定義的設(shè)備描述模板和服務(wù)描述模板編寫(xiě)設(shè)備描述文 件和服務(wù)描述文件。對(duì)于一些非UPnP標(biāo)準(zhǔn)設(shè)備,則另外設(shè)計(jì)專用的設(shè) 備描述文件和服務(wù)描述文件。
發(fā)明人在實(shí)現(xiàn)本發(fā)明的過(guò)程中,發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下缺點(diǎn) (1 )對(duì)每一種非UPnP設(shè)備都要重新開(kāi)發(fā)與之對(duì)應(yīng)的UPnP設(shè)備程 序,開(kāi)發(fā)周期長(zhǎng)。
(2 )對(duì)于尚未成為UPnP論壇標(biāo)準(zhǔn)的設(shè)備需要自行設(shè)計(jì)設(shè)備描述文 件和服務(wù)描述文件,并且開(kāi)發(fā)的設(shè)備通常只針對(duì)某一類產(chǎn)品,如果有新 的產(chǎn)品,還需要重新修改描述文件并開(kāi)發(fā)相應(yīng)的UPnP設(shè)備程序,互通 性差,制造廠商缺少開(kāi)發(fā)UPnP設(shè)備的動(dòng)力。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例目的在于提供一種控制非通用即插即用UPnP設(shè)備的
方法和裝置,可用較低的成本使非UPnP設(shè)備成為UPnP設(shè)備。
一方面,本發(fā)明實(shí)施例提供了控制非通用即插即用UPnP設(shè)備的方
法,包括以下步驟
根據(jù)所述非UPnP設(shè)備的服務(wù)信息向UPnP網(wǎng)絡(luò)中的控制點(diǎn)通知所
述非UPnP設(shè)備的服務(wù)內(nèi)容;
接收所述UPnP網(wǎng)絡(luò)中控制點(diǎn)對(duì)所述非UPnP設(shè)備的請(qǐng)求消息,根
據(jù)所述請(qǐng)求消息中請(qǐng)求的UPnP服務(wù),通過(guò)所述UPnP服務(wù)與所述非
UPnP設(shè)備的設(shè)備驅(qū)動(dòng)程序接口的對(duì)應(yīng)關(guān)系,查找到所述非UPnP設(shè)備對(duì)
應(yīng)的設(shè)備驅(qū)動(dòng)程序接口 ,其中所述UPnP服務(wù)是所述服務(wù)內(nèi)容中的至少
一種;
通過(guò)所述設(shè)備驅(qū)動(dòng)程序接口調(diào)用所述非UPnP設(shè)備的設(shè)備驅(qū)動(dòng)程 序,控制所述非UPnP設(shè)備完成所述UPnP服務(wù)。
另一方面,本發(fā)明實(shí)施例提供了一種網(wǎng)絡(luò)設(shè)備適配裝置,包括 存儲(chǔ)模塊,用于存儲(chǔ)至少一種非UPnP設(shè)備的相關(guān)信息,所述相關(guān) 信息包括所述非UPnP設(shè)備的設(shè)備信息和服務(wù)信息、所述非UPnP設(shè)備 的設(shè)備驅(qū)動(dòng)以及所述UPnP服務(wù)與所述非UPnP設(shè)備的設(shè)備驅(qū)動(dòng)程序接 口的對(duì)應(yīng)關(guān)系,其中所述服務(wù)信息包含所述非UPnP設(shè)備的服務(wù)內(nèi)容, 所述UPnP服務(wù)是所述服務(wù)內(nèi)容中的至少一種;
接口模塊,用于提供與非UPnP設(shè)備進(jìn)行通信的接口 ; 通信模塊,用于提供與UPnP網(wǎng)絡(luò)進(jìn)行通信的接口 ; 適配模塊,用于從所述存儲(chǔ)模塊獲取所述設(shè)^f言息和服務(wù)信息,并 根據(jù)所述設(shè)備信息和服務(wù)信息,通過(guò)所述通信模塊向UPnP網(wǎng)絡(luò)中的控 制點(diǎn)通知所述非UPnP設(shè)備的服務(wù)內(nèi)容,以及從所述通信模塊接收所述 控制點(diǎn)對(duì)所述非UPnP設(shè)備的請(qǐng)求消息,根據(jù)所述請(qǐng)求消息中的UPnP 服務(wù),通過(guò)所述對(duì)應(yīng)關(guān)系,找到所述非UPnP設(shè)備對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序
接口;
驅(qū)動(dòng)模塊,用于通過(guò)所述設(shè)備驅(qū)動(dòng)程序接口調(diào)用所述非UPnP設(shè)備 的設(shè)備驅(qū)動(dòng),通過(guò)所述接口模塊控制所述非UPnP設(shè)備完成所述UPnP 服務(wù)。
再一方面,本發(fā)明實(shí)施例還提供了一種通信系統(tǒng),包括 至少一個(gè)非UPnP設(shè)備、網(wǎng)絡(luò)設(shè)備適配裝置、UPnP網(wǎng)絡(luò)和至少一個(gè) UPnP控制點(diǎn),所述網(wǎng)絡(luò)設(shè)備適配裝置包括
存儲(chǔ)模塊,用于存儲(chǔ)至少一種非UPnP設(shè)備的相關(guān)信息,所述相關(guān) 信息包括所述非UPnP設(shè)備的服務(wù)信息、所述非UPnP設(shè)備的設(shè)備驅(qū)動(dòng) 程序以及所述UPnP服務(wù)與所述非UPnP設(shè)備的設(shè)備驅(qū)動(dòng)程序接口的對(duì) 應(yīng)關(guān)系,其中所述服務(wù)信息包含所述非UPnP設(shè)備的服務(wù)內(nèi)容,所述 UPnP服務(wù)是所述服務(wù)內(nèi)容中的至少 一種;
接口模塊,用于提供與非UPnP設(shè)備進(jìn)行通信的接口 ; 通信模塊,用于提供與UPnP網(wǎng)絡(luò)進(jìn)行通信的接口 ; 適配模塊,用于從所述存儲(chǔ)模塊獲取所述服務(wù)信息,并根據(jù)所述服 務(wù)信息,通過(guò)所述通信模塊向UPnP網(wǎng)絡(luò)中的控制點(diǎn)通知所述非UPnP 設(shè)備的服務(wù)內(nèi)容,以及從所述通信模塊接收所述控制點(diǎn)對(duì)所述非UPnP 設(shè)備的請(qǐng)求消息,根據(jù)所述請(qǐng)求消息中的UPnP服務(wù),通過(guò)所述對(duì)應(yīng)關(guān) 系,找到所述非UPnP設(shè)備對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序接口 ;
驅(qū)動(dòng)模塊,用于通過(guò)所述設(shè)備驅(qū)動(dòng)程序接口調(diào)用所述非UPnP設(shè)備 的設(shè)備驅(qū)動(dòng)程序,通過(guò)所述接口模塊控制所述非UPnP設(shè)備完成所述 UPnP服務(wù)。
本發(fā)明的有益效果是通過(guò)建立UPnP服務(wù)與設(shè)備驅(qū)動(dòng)程序接口之 間的對(duì)應(yīng)關(guān)系,使得對(duì)設(shè)備的服務(wù)調(diào)用可以通過(guò)相應(yīng)的設(shè)備驅(qū)動(dòng)程序接 口來(lái)執(zhí)行動(dòng)作,如此一來(lái)可以充分利用原有的設(shè)備驅(qū)動(dòng)程序,使不具有UPnP功能的各種非UPnP設(shè)備被UPnP網(wǎng)絡(luò)中的控制點(diǎn)發(fā)現(xiàn)和控制,實(shí) 現(xiàn)資源共享和信息交互。使用者無(wú)需對(duì)原有設(shè)備進(jìn)行改動(dòng),無(wú)需開(kāi)發(fā)相 應(yīng)的UPnP設(shè)備程序,便可使非UPnP設(shè)備實(shí)現(xiàn)UPnP功能,縮短了開(kāi) 發(fā)UPnP產(chǎn)品的周期。且本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)設(shè)備適配裝置,可以 兼容多種不同的設(shè)備,使用靈活,通用性強(qiáng)。
圖1為本發(fā)明實(shí)施例一提供的控制非通用即插即用UPnP設(shè)備的方法的 流程圖
圖2為本發(fā)明實(shí)施例一提供的控制非通用即插即用UPnP設(shè)備的方法中 非UPnP設(shè)備的UPnP服務(wù)與設(shè)備驅(qū)動(dòng)程序接口之間的對(duì)應(yīng)關(guān)系示意圖 圖3為本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)設(shè)備適配裝置實(shí)現(xiàn)非UPnP設(shè)備與UPnP 網(wǎng)絡(luò)連接示意圖
圖4為本發(fā)明實(shí)施例二提供的網(wǎng)絡(luò)設(shè)備適配裝置結(jié)構(gòu)圖 圖5為本發(fā)明實(shí)施例三提供的網(wǎng)絡(luò)設(shè)備適配裝置結(jié)構(gòu)圖 圖6為本發(fā)明實(shí)施例四提供的網(wǎng)絡(luò)設(shè)備適配裝置結(jié)構(gòu)圖 圖7為本發(fā)明實(shí)施例五提供的通信系統(tǒng)結(jié)構(gòu)框圖
圖8為本發(fā)明實(shí)施例五提供的通信系統(tǒng)中控制點(diǎn)控制云臺(tái)攝像頭的過(guò)程 示意圖
具體實(shí)施例方式
本發(fā)明實(shí)施例提供一種控制非通用即插即用UPnP設(shè)備的方法,能 夠使不具備UPnP的設(shè)備成為UPnP設(shè)備,享受UPnP的各種功能,接 受UPnP網(wǎng)絡(luò)控制點(diǎn)的控制。本發(fā)明實(shí)施例還提供了一種網(wǎng)絡(luò)設(shè)備適配 裝置和通信系統(tǒng)。以下分別進(jìn)行詳細(xì)說(shuō)明。
實(shí)施例一
圖1是本發(fā)明實(shí)施例提供的控制非通用即插即用UPnP設(shè)備的方法 流程圖,包括以下步驟
步驟A、根據(jù)所述非UPnP設(shè)備的服務(wù)信息向UPnP網(wǎng)絡(luò)中的控制 點(diǎn)通知所述非UPnP設(shè)備的服務(wù)內(nèi)容;
在步驟A之前還可以包括檢測(cè)到非UPnP設(shè)備。所述4企測(cè)到非 UPnP設(shè)備的可以是由用戶輸入配置信息來(lái)提示非UPnP設(shè)備的接入,所 述配置信息包括設(shè)備類型,設(shè)備型號(hào),制造廠商等。若該非UPnP設(shè)備 具有信息處理能力,則根據(jù)其發(fā)送的信息本發(fā)明的控制非通用即插即用 UPnP i殳備的方法可自動(dòng)纟企測(cè)到該非UPnP設(shè)備。
服務(wù)信息包含了非UPnP設(shè)備所能提供的服務(wù)內(nèi)容的描述,步驟A 中的服務(wù)信息在本實(shí)施例中具體為服務(wù)描述文件,
本實(shí)施例采用UPnP i侖壇規(guī)定的UPnP描述文件,包括設(shè)備描述文 件和服務(wù)描述文件。所述設(shè)備描述文件的內(nèi)容包括特定廠商、制造商信 息,如模塊名稱和編號(hào)、序列號(hào)、制造商名稱、特定廠商網(wǎng)站URL (Universal Resource Locator,統(tǒng)一資源定位器)等。服務(wù)描述文件的內(nèi) 容包括一系列命令,或動(dòng)作,服務(wù)的響應(yīng)與每種動(dòng)作的參數(shù),或變量。 服務(wù)描述文件還包括一系列變量,這些變量描述了服務(wù)運(yùn)行時(shí)的狀態(tài), 其中包括數(shù)據(jù)類型、取值范圍和事件特性的描述。筒單的說(shuō),服務(wù)描述 文件描述了設(shè)備的能力范圍,控制點(diǎn)可以根據(jù)服務(wù)描述文件獲知設(shè)備所 能提供的服務(wù)以及設(shè)備所處的狀態(tài)。
UPnP i侖壇制定了基于XML ( Extensible Markup Language,可擴(kuò)展 標(biāo)記語(yǔ)言)語(yǔ)言的設(shè)備描述模式的標(biāo)準(zhǔn),并定義了一些標(biāo)準(zhǔn)設(shè)備,提供 了相應(yīng)的XML設(shè)備描述文件模板。對(duì)于UPnP論壇已經(jīng)定義的設(shè)備, 則根據(jù)其相應(yīng)的設(shè)備描述文件模板編寫(xiě)設(shè)備XML描述文件和服務(wù)XML 描述文件。對(duì)于非UPnP論壇定義的標(biāo)準(zhǔn)設(shè)備,則自行設(shè)計(jì)相應(yīng)的設(shè)備 XML描述文件和服務(wù)XML描述文件。
本發(fā)明的控制非通用即插即用UPnP設(shè)備的方法中,預(yù)先配置有前 述的多種非UPnP設(shè)備的設(shè)備信息和服務(wù)信息,具體為設(shè)備描述文件和 服務(wù)描述文件。根據(jù)需要,也可以添力口更多非UPnP設(shè)備的設(shè)備信息和 服務(wù)信息,以支持更多的非UPnP設(shè)備類型。
步驟A中向UPnP網(wǎng)絡(luò)中的控制點(diǎn)宣告所述非UPnP設(shè)備的服務(wù), 即向控制點(diǎn)廣播所述非UPnP設(shè)備基本信息,宣告該非UPnP設(shè)備可用, 使控制點(diǎn)能夠發(fā)現(xiàn)該設(shè)備,獲取該設(shè)備的服務(wù)信息,了解非UPnP設(shè)備 的功能。
步驟B、接收所述UPnP網(wǎng)絡(luò)中控制點(diǎn)對(duì)所述非UPnP設(shè)備的請(qǐng)求 消息,根據(jù)所述請(qǐng)求消息中請(qǐng)求的UPnP服務(wù),通過(guò)所述UPnP服務(wù)與 所述非UPnP設(shè)備的設(shè)備驅(qū)動(dòng)程序接口的對(duì)應(yīng)關(guān)系,查找到所述非UPnP 設(shè)備對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序接口 ,其中所述UPnP服務(wù)是所述服務(wù)內(nèi)容中 的至少一種;
若控制點(diǎn)要求某一非UPnP設(shè)備的服務(wù),則控制點(diǎn)首先發(fā)送請(qǐng)求消 息,請(qǐng)求該設(shè)備的某一 UPnP服務(wù)。由于非UPnP設(shè)備本身不具備UPnP 功能,并不能直才妄響應(yīng)該請(qǐng)求消息并估支出相應(yīng)的服務(wù)動(dòng)作。本實(shí)施例通 過(guò)為UPnP服務(wù)與設(shè)備驅(qū)動(dòng)程序接口建立對(duì)應(yīng)關(guān)系,使得對(duì)非UPnP設(shè) 備的UPnP服務(wù)請(qǐng)求,可通過(guò)相應(yīng)的設(shè)備驅(qū)動(dòng)程序接口來(lái)執(zhí)行。具體地 說(shuō),根據(jù)控制點(diǎn)發(fā)送的請(qǐng)求消息中請(qǐng)求的UPnP服務(wù)內(nèi)容,通過(guò)上述對(duì) 應(yīng)關(guān)系便可找到對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序接口 ,調(diào)用對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序, 控制設(shè)備完成相應(yīng)的服務(wù)動(dòng)作。
UPnP服務(wù)指的是控制點(diǎn)要求非UPnP設(shè)備實(shí)現(xiàn)的功能或者參數(shù)設(shè) 定,例如, 一臺(tái)不具有UPnP功能的打印機(jī),通過(guò)本發(fā)明的方法連入到 UPnP網(wǎng)絡(luò)中,那么遠(yuǎn)程的一臺(tái)計(jì)算機(jī)(即控制點(diǎn))就可以發(fā)送請(qǐng)求消 息,請(qǐng)求這臺(tái)打印機(jī)提供打印服務(wù)。但是這臺(tái)打印機(jī)由于本身不具有
UPnP協(xié)議處理能力,不能直接將請(qǐng)求消息轉(zhuǎn)化為動(dòng)作命令。每臺(tái)打印 機(jī)都配備有設(shè)備驅(qū)動(dòng)程序,設(shè)備驅(qū)動(dòng)程序是實(shí)現(xiàn)打印機(jī)與操作系統(tǒng)通信 的接口,而操作系統(tǒng)對(duì)設(shè)備驅(qū)動(dòng)程序的調(diào)用,則是通過(guò)設(shè)備驅(qū)動(dòng)程序接 口(DDI)來(lái)完成的,即設(shè)備驅(qū)動(dòng)程序接口提供了設(shè)備驅(qū)動(dòng)程序的入口。因 此,將控制點(diǎn)請(qǐng)求的UPnP服務(wù)與設(shè)備驅(qū)動(dòng)程序接口建立對(duì)應(yīng)關(guān)系后, 前面所述的當(dāng)遠(yuǎn)程計(jì)算機(jī)請(qǐng)求打印服務(wù)時(shí),根據(jù)上述對(duì)應(yīng)關(guān)系找到打印 機(jī)驅(qū)動(dòng)程序接口 ,進(jìn)而調(diào)用打印機(jī)驅(qū)動(dòng)程序執(zhí)行打印動(dòng)作。
對(duì)應(yīng)關(guān)系的建立可以包括以下步驟將服務(wù)信息中的UPnP服務(wù)內(nèi) 容與設(shè)備驅(qū)動(dòng)程序接口建立映射關(guān)系。UPnP服務(wù)內(nèi)容可以是服務(wù)名稱, 服務(wù)動(dòng)作,或者服務(wù)標(biāo)識(shí)(ID),設(shè)備驅(qū)動(dòng)程序接口內(nèi)容可包括指向完 成所述UPnP服務(wù)需要用到的設(shè)備驅(qū)動(dòng)程序存儲(chǔ)地址的指針,或者指向 驅(qū)動(dòng)程序函數(shù)的函數(shù)指針,或者驅(qū)動(dòng)程序函數(shù)名稱。例如,將所述服務(wù) ID與所述函數(shù)指針建立——對(duì)應(yīng)關(guān)系。所述的對(duì)應(yīng)關(guān)系可以集中在一起 形成映射表;或者分散在其他位置,例如將函數(shù)指針嵌入U(xiǎn)PnP服務(wù)描 述文件中,并將函數(shù)指針與所述UPnP服務(wù)建立對(duì)應(yīng)關(guān)系,通過(guò)服務(wù)描 述文件便可找到設(shè)備驅(qū)動(dòng)程序接口 。
以下以 一個(gè)具體的實(shí)施例闡述上述對(duì)應(yīng)關(guān)系的建立。本實(shí)施例定義 了設(shè)備驅(qū)動(dòng)程序接口 (DDI)描述文件,該DDI描述文件描述了設(shè)備驅(qū) 動(dòng)程序接口通過(guò)調(diào)用相應(yīng)設(shè)備驅(qū)動(dòng)程序?qū)崿F(xiàn)對(duì)設(shè)備的使用和控制的方 式。其內(nèi)容可以包括有對(duì)設(shè)備驅(qū)動(dòng)程序進(jìn)行調(diào)用的驅(qū)動(dòng)程序函數(shù)指針。 所述驅(qū)動(dòng)程序函數(shù)指針指向的內(nèi)容為相應(yīng)的驅(qū)動(dòng)程序函數(shù)在存儲(chǔ)器中 的存儲(chǔ)地址。
本發(fā)明所述的UPnP服務(wù)與設(shè)備驅(qū)動(dòng)程序接口的對(duì)應(yīng)關(guān)系在本實(shí)施 例中具體為UPnP服務(wù)描述文件中的服務(wù)ID與設(shè)備驅(qū)動(dòng)程序接口描述文 件中的驅(qū)動(dòng)程序函數(shù)指針的對(duì)應(yīng)關(guān)系,如圖2所示,每個(gè)非UPnP設(shè)備 能夠提供一個(gè)或多個(gè)的服務(wù),對(duì)于UPnP網(wǎng)絡(luò)來(lái)說(shuō),就是一個(gè)或多個(gè)的
UPnP服射以下均稱為UPnP服務(wù)),如非UPnP設(shè)備a可提供三個(gè)UPnP 服務(wù)其標(biāo)識(shí)分別為al、 a2、 a3,分別對(duì)應(yīng)于設(shè)備驅(qū)動(dòng)程序接口中的三個(gè) 驅(qū)動(dòng)程序函數(shù)bl、 b2、 b3。將服務(wù)標(biāo)識(shí)與驅(qū)動(dòng)程序函數(shù)的指針建立對(duì)應(yīng) 關(guān)系,形成映射表。
本實(shí)施例所述的設(shè)備驅(qū)動(dòng)程序,可以與服務(wù)信息一起存放在本地存 儲(chǔ)器,也可以存放在遠(yuǎn)程服務(wù)器上,通過(guò)URL地址訪問(wèn)。若設(shè)備驅(qū)動(dòng) 程序存放在遠(yuǎn)程服務(wù)器,則建立對(duì)應(yīng)關(guān)系的步驟可包括將存放設(shè)備驅(qū) 動(dòng)程序的URL地址嵌入到驅(qū)動(dòng)程序接口描述文件中,并建立URL地址 與UPnP服務(wù)的對(duì)應(yīng)關(guān)系,則對(duì)UPnP服務(wù)的請(qǐng)求,就可以通過(guò)URL地 址讀取并調(diào)用遠(yuǎn)程服務(wù)器上的設(shè)備驅(qū)動(dòng)程序,控制相應(yīng)的非UPnP設(shè)備 完成對(duì)應(yīng)的服務(wù)動(dòng)作。
所述UPnP服務(wù)與所述設(shè)備驅(qū)動(dòng)程序接口的對(duì)應(yīng)關(guān)系是預(yù)先建立好 的,也可以根據(jù)需要為新增的非UPnP設(shè)備建立相應(yīng)的對(duì)應(yīng)關(guān)系,
步驟C、通過(guò)所述設(shè)備驅(qū)動(dòng)程序接口調(diào)用所述非UPnP設(shè)備的設(shè)備 驅(qū)動(dòng)程序,控制所述非UPnP設(shè)備完成所述UPnP服務(wù)。
針對(duì)請(qǐng)求消息中的特定UPnP服務(wù)內(nèi)容,找到對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序 接口之后,通過(guò)該設(shè)備驅(qū)動(dòng)程序接口調(diào)用非UPnP設(shè)備的設(shè)備驅(qū)動(dòng)程序, 控制該非UPnP設(shè)備完成相應(yīng)的服務(wù)。從而實(shí)現(xiàn)了控制點(diǎn)對(duì)非UPnP設(shè) 備的控制。
為了讓控制點(diǎn)了解非UPnP設(shè)備所處的狀態(tài),可以返回相應(yīng)的服務(wù) 動(dòng)作結(jié)果給控制點(diǎn),以侵i空制點(diǎn)決定下一步的動(dòng)作。
根據(jù)上述控制非通用即插即用UPnP設(shè)備的方法,可以使不具備 UPnP功能的設(shè)備(非UPnP設(shè)備),添加入U(xiǎn)PnP網(wǎng)絡(luò)中來(lái),被UPnP 控制點(diǎn)發(fā)現(xiàn)并接受UPnP控制點(diǎn)的服務(wù)調(diào)用。
以上僅是本發(fā)明提供的控制非通用即插即用UPnP設(shè)備的方法的較
佳實(shí)施例,實(shí)際運(yùn)用中,還可以進(jìn)行各種變通,例如本方法并不限定于
在linux環(huán)境中使用,還可以在其它操作系統(tǒng)平臺(tái)上如WINDOWS上使 用,只是具體建立對(duì)應(yīng)關(guān)系的步驟會(huì)相應(yīng)地變化。建立對(duì)應(yīng)關(guān)系也不限 于上述方法,均可根據(jù)具體應(yīng)用需要而調(diào)整。 實(shí)施例二
本發(fā)明實(shí)施例還提供了 一種網(wǎng)絡(luò)設(shè)備適配裝置,如圖3所示,單個(gè) 或多個(gè)非UPnP設(shè)備可以通過(guò)該UPnP適配裝置400連接到UPnP網(wǎng)絡(luò) 中,與控制點(diǎn)進(jìn)行信息交互,接受控制點(diǎn)的控制。
如圖4所示為本發(fā)明實(shí)施例二提供的網(wǎng)絡(luò)設(shè)備適配裝置結(jié)構(gòu)圖,網(wǎng) 絡(luò)設(shè)備適配裝置400包括
存儲(chǔ)模塊401,其存儲(chǔ)有至少一種非UPnP設(shè)備的相關(guān)信息,包括 服務(wù)信息以及設(shè)備馬區(qū)動(dòng)程序接口信息,具體來(lái)說(shuō)是服務(wù)描述文件以及設(shè) 備驅(qū)動(dòng)程序接口描述文件。存儲(chǔ)模塊還存儲(chǔ)有至少一種非UPnP設(shè)備的 設(shè)備驅(qū)動(dòng)程序,通過(guò)相應(yīng)的設(shè)備驅(qū)動(dòng)程序接口可調(diào)用該設(shè)備驅(qū)動(dòng)程序, 來(lái)控制非UPnP設(shè)備完成特定的服務(wù)動(dòng)作。本實(shí)施例中,所有描述文件 均采用UPnP論壇規(guī)定的XML語(yǔ)言格式,實(shí)際運(yùn)用時(shí),可以用其他語(yǔ) 言格式來(lái)描述。存儲(chǔ)模塊401還配置了非UPnP設(shè)備的UPnP服務(wù)與設(shè) 備驅(qū)動(dòng)程序接口之間的對(duì)應(yīng)關(guān)系。存儲(chǔ)模塊所存儲(chǔ)的內(nèi)容可以根據(jù)需要 不斷更新或添加。
接口模塊402,用于提供與非UPnP設(shè)備進(jìn)行通信的接口。接口模 塊402提供了多種接口協(xié)議支持,如串口通信協(xié)議,并口通信協(xié)議,USB 接口通信協(xié)議,IEEE1394接口協(xié)議等,以支持各種類型的非UPnP設(shè)備 的不同通信協(xié)議。
通信模塊404,用于提供與UPnP網(wǎng)絡(luò)的進(jìn)行通信的接口。通信模 塊404提供了多種通信協(xié)議方式,如以太網(wǎng)通信協(xié)議,無(wú)線通信協(xié)議等, 使得所述網(wǎng)絡(luò)設(shè)備適配裝置可通過(guò)多種方式連接到UPnP網(wǎng)絡(luò)。
適配模塊405,用于從所述存儲(chǔ)模塊獲取所述服務(wù)信息,并根據(jù)所 述服務(wù)信息,通過(guò)所述通信模塊向UPnP網(wǎng)絡(luò)中的控制點(diǎn)通知所述非 UPnP設(shè)備的服務(wù)內(nèi)容,以及從所述通信模塊接收所述控制點(diǎn)對(duì)所述非 UPnP設(shè)備的請(qǐng)求消息,根據(jù)所述請(qǐng)求消息中的UPnP服務(wù),通過(guò)所述對(duì) 應(yīng)關(guān)系,找到所述非UPnP設(shè)備對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序接口 ;
驅(qū)動(dòng)模塊403,用于通過(guò)所述設(shè)備驅(qū)動(dòng)程序接口調(diào)用所述非UPnP 設(shè)備的設(shè)備驅(qū)動(dòng)程序,通過(guò)所述接口模塊控制所述非UPnP設(shè)備完成所 述UPnP服務(wù)。
為了便于理解上述各個(gè)模塊的功能以及各模塊之間的關(guān)系,下面加 以-洋細(xì)介紹。
如圖4所示,非UPnP設(shè)備Dl通過(guò)接口模塊402連入網(wǎng)絡(luò)設(shè)備適 配裝置400,適配模塊405檢測(cè)到該非UPnP設(shè)備D1,并從存儲(chǔ)模塊獲 取相應(yīng)的服務(wù)信息,通過(guò)通信模塊404,向UPnP網(wǎng)絡(luò)廣播該設(shè)備的基 本信息,宣布該非UPnP設(shè)備D1的服務(wù)可用。
控制點(diǎn)CI通過(guò)通信模塊404向適配模塊405發(fā)送請(qǐng)求消息,適配 模塊405根據(jù)請(qǐng)求消息中請(qǐng)求的特定UPnP服務(wù)內(nèi)容,通過(guò)UPnP服務(wù) 與非UPnP設(shè)備的設(shè)備驅(qū)動(dòng)程序接口的對(duì)應(yīng)關(guān)系,找到該特定UPnP服 務(wù)對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序接口,并將結(jié)果發(fā)送給驅(qū)動(dòng)模塊403,驅(qū)動(dòng)模塊 403通過(guò)該對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序接口調(diào)用非UPnP設(shè)備Dl的設(shè)備驅(qū)動(dòng)程 序,通過(guò)接口模塊402向非UPnP設(shè)備發(fā)送控制指令,控制非UPnP設(shè) 備Dl完成特定UPnP力良務(wù)對(duì)應(yīng)的動(dòng)作。
可選地,非UPnP設(shè)備Dl返回動(dòng)作結(jié)果,將自身狀態(tài)變化情況通 過(guò)接口模塊402發(fā)送給適配模塊405,適配模塊405可將設(shè)備變化情況 通過(guò)通信模塊404發(fā)送給控制點(diǎn)CI 。
實(shí)施例三
為了使得UPnP設(shè)備裝置可根據(jù)用戶的需要靈活配置,以支持用戶
自定義的設(shè)備或支持更多類型的設(shè)備,如圖5還可在網(wǎng)絡(luò)設(shè)備適配裝置
內(nèi)設(shè)置用戶配置模塊501和信息處理模塊502。
用戶配置模塊501使用戶可以為網(wǎng)絡(luò)設(shè)備適配裝置配置額外的非 UPnP設(shè)^f言息,以使網(wǎng)絡(luò)設(shè)備適配裝置支持更多類型的非UPnP設(shè)備。 如某一特定廠商的特定型號(hào)的非UPnP設(shè)備沒(méi)有被網(wǎng)絡(luò)設(shè)備適配裝置預(yù) 先配置,則用戶只需要通過(guò)用戶配置模塊501輸入簡(jiǎn)單的配置信息如制 造商名稱、設(shè)備型號(hào)、序列號(hào)等,信息處理模塊502可以根據(jù)配置信息 自動(dòng)生成設(shè)備信息和服務(wù)信息,本實(shí)施例指的是設(shè)備描述文件和服務(wù)描 述文件,并保存在存儲(chǔ)模塊401。若開(kāi)發(fā)者想要開(kāi)發(fā)新的UPnP設(shè)備類 型,可以使用本網(wǎng)絡(luò)設(shè)備適配裝置,只需要編寫(xiě)相應(yīng)的設(shè)備描述文件和 服務(wù)描述文件以及相應(yīng)的設(shè)備驅(qū)動(dòng)和設(shè)備驅(qū)動(dòng)程序接口描述文件,通過(guò) 用戶配置模塊501輸入,并保存在存儲(chǔ)模塊401 ,同時(shí)添力。UPnP服務(wù) 與設(shè)備驅(qū)動(dòng)程序接口的對(duì)應(yīng)關(guān)系即可,無(wú)需開(kāi)發(fā)相應(yīng)的UPnP設(shè)備程序。 用戶配置模塊提供了更新網(wǎng)絡(luò)設(shè)備適配裝置內(nèi)存儲(chǔ)模塊內(nèi)容的接口 ,可 以通過(guò)web方式,或者是觸4莫屏,或者^(guò)t盤(pán),或者其它方式來(lái)實(shí)現(xiàn)。
本實(shí)施例提供的網(wǎng)絡(luò)設(shè)備適配裝置,提供了支持更多類型非UPnP 設(shè)備的可能,也為開(kāi)發(fā)新UPnP設(shè)備提供了便利,增強(qiáng)了網(wǎng)絡(luò)設(shè)備適配 裝置的通用性與靈活性。
實(shí)施例四
如圖6所示為本發(fā)明網(wǎng)絡(luò)設(shè)備適配裝置的又一實(shí)施例,在網(wǎng)絡(luò)設(shè)備 適配裝置增加一個(gè)映射模塊601,用于為各種非UPnP設(shè)備建立UPnP 服務(wù)與設(shè)備驅(qū)動(dòng)程序接口的對(duì)應(yīng)關(guān)系。所述對(duì)應(yīng)關(guān)系可以事先配置在存 儲(chǔ)模塊401,也可以在每次非UPnP設(shè)備連入網(wǎng)絡(luò)設(shè)備適配裝置后由映 射模塊601建立。當(dāng)適配模塊405檢測(cè)到非UPnP設(shè)備后,可調(diào)用映射 模塊601,為該設(shè)備的UPnP服務(wù)與對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序接口建立對(duì)應(yīng)
關(guān)系,以后對(duì)該非UPnP設(shè)備的服務(wù)調(diào)用,即可通過(guò)相應(yīng)的設(shè)備驅(qū)動(dòng)程 序接口完成。
此外映射模塊601也可以為新增的非UPnP設(shè)備建立UPnP服務(wù)與 設(shè)備驅(qū)動(dòng)程序接口的對(duì)應(yīng)關(guān)系,并將所述對(duì)應(yīng)關(guān)系保存在存儲(chǔ)模塊401 。
本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)設(shè)備適配裝置,其中的存儲(chǔ)模塊存儲(chǔ)有多 種非UPnP設(shè)備的相關(guān)信息,包括非UPnP設(shè)備的設(shè)備驅(qū)動(dòng)程序,設(shè)備 信息和服務(wù)信息,驅(qū)動(dòng)接口描述文件,UPnP服務(wù)與設(shè)備驅(qū)動(dòng)程序接口 之間的對(duì)應(yīng)關(guān)系等。大部分的非UPnP設(shè)備信息都預(yù)先存儲(chǔ)在存儲(chǔ)模塊 內(nèi),若需要增加新的非UPnP設(shè)備信息,還可以由本發(fā)明網(wǎng)絡(luò)設(shè)備適配 裝置的實(shí)施例三提供的用戶配置模塊、信息處理模塊來(lái)增加并處理新的 非UPnP設(shè)備信息。所述存儲(chǔ)模塊可以包括一個(gè)存儲(chǔ)介質(zhì),提供所有功 能模塊所需的存儲(chǔ)空間,也可以分為多個(gè)存儲(chǔ)介質(zhì),分別為各個(gè)功能模 塊提供存儲(chǔ)空間,或者根據(jù)需要分為多個(gè)存儲(chǔ)子模塊。
本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)設(shè)備適配裝置,其中的各個(gè)模塊,根據(jù)其 功能還可以進(jìn)行細(xì)化,分解為更多的模塊;各個(gè)模塊可以集成在一起, 也可以分狀到各個(gè)地方,只要各模塊能夠協(xié)調(diào)完成本發(fā)明目的即可。例 如,存儲(chǔ)模塊可以和其他;漠塊集成在一起,也可以放在遠(yuǎn)程的服務(wù)器, 本發(fā)明并不作限定。
本發(fā)明實(shí)施例提供的網(wǎng)絡(luò)設(shè)備適配裝置,可以適配多種非UPnP設(shè) 備成為UPnP設(shè)備,具有通用性與靈活性。使用者無(wú)需對(duì)原始非UPnP 設(shè)備作改動(dòng),可以充分利用用原有設(shè)備驅(qū)動(dòng)程序,便可利用本網(wǎng)絡(luò)設(shè)備 適配裝置使非UPnP設(shè)備實(shí)現(xiàn)UPnP功能,縮減了開(kāi)發(fā)UPnP產(chǎn)品的周 期。
實(shí)施例五
本實(shí)施例還提供了一種通信系統(tǒng),包括至少一個(gè)非UPnP設(shè)備、本 發(fā)明提供的網(wǎng)絡(luò)設(shè)備適配裝置、和至少一個(gè)UPnP控制點(diǎn)。本實(shí)施例所
采用的網(wǎng)絡(luò)設(shè)備適配裝置與實(shí)施例二提供的網(wǎng)絡(luò)設(shè)備適配裝置相同,在
此不詳述。所述非UPnP設(shè)備通過(guò)所述接口模塊連接于所述網(wǎng)絡(luò)設(shè)備適 配裝置,所述UPnP裝置通過(guò)所述通信模塊連接到所述UPnP網(wǎng)絡(luò),所 述控制點(diǎn)連接于所述UPnP網(wǎng)絡(luò)。
下面結(jié)合具體的應(yīng)用實(shí)例來(lái)描述本實(shí)施例提供的通信系統(tǒng)。在安防 領(lǐng)域廣泛使用可以控制的云臺(tái)來(lái)承載攝像頭(云臺(tái)攝像頭),實(shí)現(xiàn)遠(yuǎn)程 的視頻監(jiān)控。用戶可以通過(guò)串口來(lái)遠(yuǎn)程控制云臺(tái)的轉(zhuǎn)動(dòng)、鏡頭的焦距和 景深等參數(shù)。對(duì)云臺(tái)和攝像頭的控制,是通過(guò)云臺(tái)解碼器完成的,云臺(tái) 解碼器可以控制云臺(tái)的上下左右轉(zhuǎn)動(dòng)、攝像頭的光圈、變焦、聚焦等。
但是,由于云臺(tái)解碼器本身的資源有限,不能提供UPnP的功能。因此, 可以采用本發(fā)明實(shí)施例二提供的網(wǎng)絡(luò)設(shè)備適配裝置使其成為UPnP云臺(tái) 才i^象頭,如圖7所示,云臺(tái)解碼器702通過(guò)云臺(tái)控制線703與可控云臺(tái) 攝像頭704相連。云臺(tái)解碼器702通過(guò)串口 701與網(wǎng)絡(luò)設(shè)備適配裝置400 的接口模塊402 (接口模塊402提供有串口協(xié)議通信方式)相連接。網(wǎng) 絡(luò)設(shè)備適配裝置400則通過(guò)通信it塊404連接到UPnP網(wǎng)絡(luò)中,與控制 點(diǎn)C2實(shí)現(xiàn)通信。本實(shí)施例中通信才莫塊404以以太網(wǎng)通信方式接入U(xiǎn)PnP 網(wǎng)絡(luò)。以下描述云臺(tái)攝像頭、網(wǎng)絡(luò)設(shè)備適配裝置和控制點(diǎn)之間的通信過(guò) 程。
圖8為控制點(diǎn)控制云臺(tái)招L像頭的過(guò)程示意圖。云臺(tái)解碼器通過(guò)串口 701連接到網(wǎng)絡(luò)設(shè)備適配裝置的接口模塊402,適配模塊405檢測(cè)到非 UPnP設(shè)備云臺(tái)攝像頭704,從存儲(chǔ)模塊401獲取云臺(tái)攝像頭704的服務(wù) 信息,并通過(guò)通信模塊404向UPnP網(wǎng)絡(luò)宣告云臺(tái)攝像頭704的服務(wù)可 用。UPnP網(wǎng)絡(luò)中的控制點(diǎn)C2發(fā)現(xiàn)云臺(tái)攝像頭704,并通過(guò)通信接口 404 向適配模塊405請(qǐng)求設(shè)備描述文件和服務(wù)描述文件,適配模塊405向存 儲(chǔ)模塊401獲取所述設(shè)備描述文件和服務(wù)描述文件并通過(guò)通信模塊404 發(fā)送給控制點(diǎn)C2。接著控制點(diǎn)C2通過(guò)通信模塊404向適配模塊405發(fā)
送服務(wù)請(qǐng)求消息。適配模塊405接受所述請(qǐng)求消息,并根據(jù)請(qǐng)求消息中 請(qǐng)求的特定UPnP服務(wù)內(nèi)容,查詢存儲(chǔ)模塊401中存儲(chǔ)的UPnP服務(wù)與 設(shè)備驅(qū)動(dòng)程序接口的對(duì)應(yīng)關(guān)系,找到云臺(tái)攝像頭704的設(shè)備驅(qū)動(dòng)程序接 口。驅(qū)動(dòng)模塊403通過(guò)該設(shè)備驅(qū)動(dòng)程序接口調(diào)用存儲(chǔ)模塊401中云臺(tái)攝 像頭的設(shè)備驅(qū)動(dòng)程序,通過(guò)接口模塊402向云臺(tái)解碼器702的串口 701 發(fā)送控制指令,云臺(tái)解碼器702將控制命令轉(zhuǎn)換成對(duì)應(yīng)的驅(qū)動(dòng)信號(hào)來(lái)控 制云臺(tái)完成相應(yīng)的動(dòng)作或者設(shè)定攝像頭的參數(shù)。可選地,適配模塊405 通過(guò)通信模塊404向UPnP網(wǎng)絡(luò)中的控制點(diǎn)C2發(fā)送GENA( General Event Notification Architecture,通用事件通知架構(gòu))消息,將對(duì)云臺(tái)攝像頭的 操作結(jié)果以及云臺(tái)攝像頭的狀態(tài)改變情況通知給控制點(diǎn)C2,從而實(shí)現(xiàn)了 控制點(diǎn)C2對(duì)云臺(tái):IIH象頭的遠(yuǎn)程控制。
由以上實(shí)施例可見(jiàn),本發(fā)明的有益效果是,本發(fā)明能夠使各種資源 有限、不具有UPnP功能的設(shè)備,通過(guò)采用本發(fā)明提供的控制非通用即 插即用UPnP設(shè)備的方法及其裝置和UPnP網(wǎng)絡(luò),成為UPnP設(shè)備,實(shí) 現(xiàn)UPnP的各種功能,接受UPnP控制點(diǎn)的調(diào)用。用戶無(wú)需對(duì)設(shè)備進(jìn)行 改動(dòng),只需通過(guò)簡(jiǎn)單的配置,便可使多種類型的非UPnP設(shè)備實(shí)現(xiàn)UPnP 功能;若開(kāi)發(fā)者需要開(kāi)發(fā)UPnP設(shè)備,只需要設(shè)計(jì)相應(yīng)的設(shè)備描述文件、 服務(wù)描述文件和設(shè)備驅(qū)動(dòng)程序接口描述文件,便可利用本發(fā)明提供的網(wǎng) 絡(luò)設(shè)備適配裝置快速開(kāi)發(fā)UPnP設(shè)備,無(wú)需開(kāi)發(fā)相應(yīng)的UPnP設(shè)備程序, 開(kāi)發(fā)周期短,節(jié)省成本。
以上對(duì)本發(fā)明實(shí)施例提供的控制非通用即插即用UPnP設(shè)備的方法 及其裝置、UPnP網(wǎng)絡(luò)系統(tǒng)進(jìn)行了詳細(xì)介紹,目的在于幫助理解本發(fā)明 的核心思想,本領(lǐng)域的普通技術(shù)人員根據(jù)本說(shuō)明書(shū)公開(kāi)的內(nèi)容,可以對(duì) 本發(fā)明的方法進(jìn)行改變,或?qū)Ρ景l(fā)明提供的裝置,根據(jù)其原理及功能對(duì) 各模塊進(jìn)行分解或改變,因此本說(shuō)明書(shū)內(nèi)容不能理解為對(duì)本發(fā)明的限 制。
權(quán)利要求
1、一種控制非通用即插即用UPnP設(shè)備的方法,其特征在于,包括以下步驟根據(jù)所述非UPnP設(shè)備的服務(wù)信息向UPnP網(wǎng)絡(luò)中的控制點(diǎn)通知所述非UPnP設(shè)備的服務(wù)內(nèi)容;接收所述UPnP網(wǎng)絡(luò)中控制點(diǎn)對(duì)所述非UPnP設(shè)備的請(qǐng)求消息,根據(jù)所述請(qǐng)求消息中請(qǐng)求的UPnP服務(wù),通過(guò)所述UPnP服務(wù)與所述非UPnP設(shè)備的設(shè)備驅(qū)動(dòng)程序接口的對(duì)應(yīng)關(guān)系,查找到所述非UPnP設(shè)備對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序接口,其中所述UPnP服務(wù)是所述服務(wù)內(nèi)容中的至少一種;通過(guò)所述設(shè)備驅(qū)動(dòng)程序接口調(diào)用所述非UPnP設(shè)備的設(shè)備驅(qū)動(dòng)程序,控制所述非UPnP設(shè)備完成所述UPnP服務(wù)。
2、 根據(jù)權(quán)利要求1所述的控制非通用即插即用UPnP設(shè)備的方法, 其特征在于,所述服務(wù)信息具體為服務(wù)描述文件,所述設(shè)備驅(qū)動(dòng)程序接 口對(duì)應(yīng)有設(shè)備驅(qū)動(dòng)程序接口描述文件,所述設(shè)備驅(qū)動(dòng)程序接口描述文件 描述了設(shè)備驅(qū)動(dòng)程序接口調(diào)用相應(yīng)設(shè)備驅(qū)動(dòng)程序以實(shí)現(xiàn)對(duì)設(shè)備的使用 和控制的方式。
3、 根據(jù)權(quán)利要求2所述的控制非通用即插即用UPnP設(shè)備的方法, 其特征在于,所述服務(wù)描述文件、設(shè)備驅(qū)動(dòng)程序接口描述文件采用XML 語(yǔ)言描述。
4、 根據(jù)權(quán)利要求1所述的控制非通用即插即用UPnP設(shè)備的方法, 其特征在于,所述對(duì)應(yīng)關(guān)系的建立包括以下步驟將所述UPnP服務(wù)的服務(wù)ID與所述設(shè)備驅(qū)動(dòng)程序接口中指向設(shè)備驅(qū) 動(dòng)程序存儲(chǔ)地址的指針建立對(duì)應(yīng)關(guān)系。
5、 根據(jù)權(quán)利要求1所述的控制非通用即插即用UPnP設(shè)備的方法, 其特征在于,所述對(duì)應(yīng)關(guān)系表現(xiàn)為映射關(guān)系表。
6、 根據(jù)權(quán)利要求2所述的控制非通用即插即用UPnP設(shè)備的方法, 其特征在于,所述對(duì)應(yīng)關(guān)系的建立包括以下步驟將所述設(shè)備驅(qū)動(dòng)程序接口描述文件中的驅(qū)動(dòng)程序函數(shù)指針嵌入到 所述服務(wù)描述文件中,并將所述驅(qū)動(dòng)程序函數(shù)指針與所述UPnP服務(wù)建 立對(duì)應(yīng)關(guān)系。
7、 根據(jù)權(quán)利要求2所述的控制非通用即插即用UPnP設(shè)備的方法, 其特征在于,所述設(shè)備驅(qū)動(dòng)程序存放于遠(yuǎn)程服務(wù)器,所述對(duì)應(yīng)關(guān)系的建 立包括以下步驟將所述設(shè)備驅(qū)動(dòng)程序的存放URL地址嵌入到所述設(shè)備驅(qū)動(dòng)程序接 口描述文件中,并將所述存放URL地址與所述UPnP服務(wù)建立對(duì)應(yīng)關(guān)系。
8、 一種網(wǎng)絡(luò)設(shè)備適配裝置,其特征在于,包括存儲(chǔ)模塊,用于存儲(chǔ)至少一種非UPnP設(shè)備的相關(guān)信息,所述相關(guān) 信息包括所述非UPnP設(shè)備的服務(wù)信息、所述非UPnP設(shè)備的設(shè)備驅(qū)動(dòng) 程序以及所述UPnP服務(wù)與所述非UPnP設(shè)備的設(shè)備驅(qū)動(dòng)程序接口的對(duì) 應(yīng)關(guān)系,其中所述服務(wù)信息包含所述非UPnP設(shè)備的服務(wù)內(nèi)容,所述 UPnP服務(wù)是所述服務(wù)內(nèi)容中的至少 一種;接口模塊,用于提供與非UPnP設(shè)備進(jìn)行通信的接口; 通信模塊,用于提供與UPnP網(wǎng)絡(luò)進(jìn)行通信的接口 ; 適配模塊,用于從所述存儲(chǔ)模塊獲取所述服務(wù)信息,并根據(jù)所述服 務(wù)信息,通過(guò)所述通信^t塊向UPnP網(wǎng)絡(luò)中的控制點(diǎn)通知所述非UPnP 設(shè)備的服務(wù)內(nèi)容,以及從所述通信模塊接收所述控制點(diǎn)對(duì)所述非UPnP 設(shè)備的請(qǐng)求消息,根據(jù)所述請(qǐng)求消息中的UPnP服務(wù),通過(guò)所述對(duì)應(yīng)關(guān) 系,找到所述非UPnP設(shè)備對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序接口 ;驅(qū)動(dòng)模塊,用于通過(guò)所述設(shè)備驅(qū)動(dòng)程序接口調(diào)用所述非UPnP設(shè)備 的設(shè)備驅(qū)動(dòng)程序,通過(guò)所述接口模塊控制所述非UPnP設(shè)備完成所述 UPnP服務(wù)。
9、 根據(jù)權(quán)利要求8所述的網(wǎng)絡(luò)設(shè)備適配裝置,其特征在于,還包括用戶配置模塊,用于輸入新增的所述非UPnP設(shè)備的配置信息或設(shè) 備信息,更新所述存儲(chǔ)模塊的內(nèi)容。
10、 根據(jù)權(quán)利要求9所述的網(wǎng)絡(luò)設(shè)備適配裝置,其特征在于,還包括信息處理模塊,用于根據(jù)所述配置信息,生成相應(yīng)的設(shè)備信息和服 務(wù)信息。
11、 根據(jù)權(quán)利要求8所述的網(wǎng)絡(luò)設(shè)備適配裝置,其特征在于,還包括映射模塊,用于為所述UPnP服務(wù)與所述非UPnP設(shè)備的設(shè)備驅(qū)動(dòng) 程序接口建立所述對(duì)應(yīng)關(guān)系。
12、 根據(jù)權(quán)利要求8所述的網(wǎng)絡(luò)設(shè)備適配裝置,其特征在于,所述 接口模塊支持至少一種接口協(xié)議,所述接口協(xié)議包括串口協(xié)議,并口協(xié) 議,USB接口協(xié)議和IEEE1394接口協(xié)議。
13、 根據(jù)權(quán)利要求8所述的網(wǎng)絡(luò)設(shè)備適配裝置,其特征在于,所述 通信接口支持至少一種通信協(xié)議,所述通信協(xié)議包括以太網(wǎng)協(xié)議和無(wú)線 通信協(xié)議。
14、 一種通信系統(tǒng),其特征在于,包括至少一個(gè)非UPnP設(shè)備、網(wǎng) 絡(luò)設(shè)備適配裝置、UPnP網(wǎng)絡(luò)和至少一個(gè)UPnP控制點(diǎn),所述網(wǎng)絡(luò)設(shè)備適 配裝置包括存儲(chǔ)模塊,用于存儲(chǔ)至少一種非UPnP設(shè)備的相關(guān)信息,所述相關(guān) 信息包括所述非UPnP設(shè)備的服務(wù)信息、所述非UPnP設(shè)備的設(shè)備驅(qū)動(dòng) 程序以及所述UPnP服務(wù)與所述非UPnP設(shè)備的設(shè)備驅(qū)動(dòng)程序接口的對(duì) 應(yīng)關(guān)系,其中所述服務(wù)信息包含所述非UPnP設(shè)備的服務(wù)內(nèi)容,所述UPnP服務(wù)是所述服務(wù)內(nèi)容中的至少一種;接口模塊,用于提供與非UPnP設(shè)備進(jìn)行通信的接口 ;通信模塊,用于提供與UPnP網(wǎng)絡(luò)進(jìn)行通信的接口 ;適配模塊,用于從所述存儲(chǔ)模塊獲取所述服務(wù)信息,并根據(jù)所述服務(wù)信息,通過(guò)所述通信模塊向UPnP網(wǎng)絡(luò)中的控制點(diǎn)通知所述非UPnP設(shè)備的服務(wù)內(nèi)容,以及從所述通信模塊接收所述控制點(diǎn)對(duì)所述非UPnP設(shè)備的請(qǐng)求消息,根據(jù)所述請(qǐng)求消息中的UPnP服務(wù),通過(guò)所述對(duì)應(yīng)關(guān)系,找到所述非UPnP設(shè)備對(duì)應(yīng)的設(shè)備驅(qū)動(dòng)程序接口 ;驅(qū)動(dòng)模塊,用于通過(guò)所述設(shè)備驅(qū)動(dòng)程序接口調(diào)用所述非UPnP設(shè)備的設(shè)備驅(qū)動(dòng)程序,通過(guò)所述接口模塊控制所述非UPnP設(shè)備完成所述UPnP服務(wù)。
15、根據(jù)權(quán)利要求14所述的通信系統(tǒng),其特征在于,所述非UPnP 設(shè)備為云臺(tái)攝像頭,所述云臺(tái)攝像頭通過(guò)控制線與云臺(tái)解碼器相連,所述 云臺(tái)解碼器包含有串口,所述串口與所述接口模塊相連接。
全文摘要
本發(fā)明提供了一種控制非通用即插即用UPnP設(shè)備的方法,當(dāng)接收到控制點(diǎn)發(fā)送服務(wù)請(qǐng)求消息后,根據(jù)請(qǐng)求消息中請(qǐng)求的UPnP服務(wù)內(nèi)容,查詢UPnP服務(wù)與非UPnP設(shè)備驅(qū)動(dòng)程序接口的對(duì)應(yīng)關(guān)系,查找到所述非UPnP的設(shè)備驅(qū)動(dòng)程序接口,進(jìn)而驅(qū)動(dòng)設(shè)備完成相應(yīng)的服務(wù)動(dòng)作。利用本發(fā)明提供的控制非通用即插即用UPnP設(shè)備的方法,可以使不具有UPnP功能的非UPnP設(shè)備,無(wú)須作改動(dòng)便可實(shí)現(xiàn)UPnP功能,接受UPnP網(wǎng)絡(luò)中控制點(diǎn)的控制,實(shí)現(xiàn)信息交互和資源共享。本發(fā)明還提供了一種網(wǎng)絡(luò)設(shè)備適配裝置和一種通信系統(tǒng)。
文檔編號(hào)H04L12/66GK101184063SQ200710123828
公開(kāi)日2008年5月21日 申請(qǐng)日期2007年10月11日 優(yōu)先權(quán)日2007年10月11日
發(fā)明者嚴(yán)海峰, 劉三衛(wèi), 意 孫, 糜正琨, 俊 饒 申請(qǐng)人:華為技術(shù)有限公司