專利名稱:一種對機(jī)房設(shè)施進(jìn)行遠(yuǎn)程控制的系統(tǒng)及方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)技術(shù)領(lǐng)域,尤其是一種對機(jī)房設(shè)施進(jìn)行遠(yuǎn)程控制的系統(tǒng)及方法。
技術(shù)背景
隨著信息化的飛速發(fā)展,很多企業(yè)的信息化設(shè)備越來越多,各個(gè)企業(yè)的機(jī)房是信息化保證的核心,對機(jī)房設(shè)施的日常監(jiān)控和運(yùn)維任務(wù)日益增多,這就需要我們的監(jiān)控系統(tǒng)能夠?qū)崟r(shí)監(jiān)控機(jī)房設(shè)施,并對一些設(shè)備進(jìn)行遠(yuǎn)程控制以實(shí)現(xiàn)時(shí)效性。然而傳統(tǒng)的機(jī)房監(jiān)控系統(tǒng)只專注于如何對機(jī)房設(shè)備進(jìn)行監(jiān)控和故障報(bào)警,無法實(shí)時(shí)通過遠(yuǎn)程操作對故障做出響應(yīng),這就導(dǎo)致機(jī)房設(shè)施的故障無法得到及時(shí)處理,并且對機(jī)房設(shè)施的維護(hù)也帶來不便。發(fā)明內(nèi)容
本發(fā)明提供了一種對機(jī)房設(shè)施進(jìn)行遠(yuǎn)程控制的系統(tǒng)和方法,通過插件的方式調(diào)用機(jī)房設(shè)施的各接口,使得機(jī)房監(jiān)控系統(tǒng)對新型設(shè)備的遠(yuǎn)程控制需求可擴(kuò)展,同時(shí)也降低了監(jiān)控系統(tǒng)的維護(hù)成本。
鑒于現(xiàn)有技術(shù)的缺陷,本發(fā)明提供一種對機(jī)房設(shè)施進(jìn)行遠(yuǎn)程控制的系統(tǒng),包括如下部分
兩個(gè)或兩個(gè)以上的遠(yuǎn)程控制插件,用于通過機(jī)房設(shè)施的API對機(jī)房設(shè)施進(jìn)行遠(yuǎn)程控制;
展現(xiàn)模塊,作為用戶操作界面,向任務(wù)處理模塊發(fā)送用戶指令;
任務(wù)處理模塊,用于根據(jù)預(yù)置的觸發(fā)設(shè)置或者展示模塊的用戶指令向控制模塊發(fā)送控制指令;
控制模塊,根據(jù)任務(wù)處理模塊發(fā)送的控制指令,選擇相應(yīng)遠(yuǎn)程控制插件實(shí)現(xiàn)遠(yuǎn)程控制,并接收機(jī)房設(shè)施的反饋信息。
進(jìn)一步,系統(tǒng)還包括數(shù)據(jù)庫,負(fù)責(zé)保存遠(yuǎn)程控制的消息記錄以及實(shí)時(shí)監(jiān)控?cái)?shù)據(jù)。
進(jìn)一步,所述遠(yuǎn)程控制插件與遠(yuǎn)程控制策略一一對應(yīng),通過更新遠(yuǎn)程控制插件來擴(kuò)展對機(jī)房設(shè)施進(jìn)行的各種遠(yuǎn)程調(diào)度。
進(jìn)一步,所述任務(wù)處理模塊中預(yù)置的觸發(fā)設(shè)置包括
用戶操作觸發(fā)通過展現(xiàn)模塊中用戶的觸發(fā)向控制模塊發(fā)送控制指令;
定時(shí)設(shè)置觸發(fā)通過預(yù)先設(shè)置的既定時(shí)長向控制模塊發(fā)送控制指令;
閾值事件觸發(fā)根據(jù)預(yù)先設(shè)置的閾值,在發(fā)生違反閾值的事件時(shí)向控制模塊發(fā)送控制指令。
進(jìn)一步,所述觸發(fā)設(shè)置用XML腳本來實(shí)現(xiàn)。
進(jìn)一步,所述展現(xiàn)模塊根據(jù)用戶的觸發(fā)對數(shù)據(jù)庫中信息進(jìn)行展現(xiàn)。
本發(fā)明還公開了一種對機(jī)房設(shè)施進(jìn)行遠(yuǎn)程控制的方法,包括如下步驟
步驟S1:根據(jù)機(jī)房設(shè)施的API,制作對機(jī)房設(shè)施進(jìn)行遠(yuǎn)程控制的遠(yuǎn)程控制插件;
步驟S2 :在用戶操作界面上接受用戶的觸發(fā),發(fā)送用戶指令;
步驟S3 :根據(jù)預(yù)置的觸發(fā)設(shè)置或者接收到的用戶指令發(fā)送控制指令;
步驟S4 :根據(jù)控制指令選擇相應(yīng)遠(yuǎn)程控制插件實(shí)現(xiàn)遠(yuǎn)程控制,并接收機(jī)房設(shè)施的反饋信息。
進(jìn)一步,方法還包括步驟S5 :將遠(yuǎn)程控制的消息記錄以及實(shí)時(shí)監(jiān)控?cái)?shù)據(jù)保存至數(shù)據(jù)庫中。
進(jìn)一步,所述遠(yuǎn)程控制插件與遠(yuǎn)程控制策略一一對應(yīng),通過更新遠(yuǎn)程控制插件來擴(kuò)展對機(jī)房設(shè)施進(jìn)行的各種遠(yuǎn)程調(diào)度。
進(jìn)一步,所述接收的機(jī)房設(shè)施的反饋信息在用戶操作界面上進(jìn)行顯示。
本發(fā)明一種對機(jī)房設(shè)施進(jìn)行遠(yuǎn)程控制的系統(tǒng)和方法,通過兩個(gè)或兩個(gè)以上的遠(yuǎn)程控制插件,通過機(jī)房設(shè)施的API對機(jī)房設(shè)施進(jìn)行遠(yuǎn)程控制,使得機(jī)房監(jiān)控系統(tǒng)對新型機(jī)房設(shè)備的遠(yuǎn)程控制需求可擴(kuò)展,從而支持了多種網(wǎng)絡(luò)協(xié)議下的遠(yuǎn)程調(diào)用,例如,SNMP協(xié)議的 set操作,c語言編寫的底模塊插件的WMI遠(yuǎn)程操作,以及其他專屬設(shè)備的遠(yuǎn)程操作命令等。 當(dāng)有新設(shè)備增加遠(yuǎn)程控制方式時(shí),只需要編寫對應(yīng)的遠(yuǎn)程控制插件,并安裝到指定位置改寫配置文件,即可實(shí)現(xiàn)該遠(yuǎn)程控制方式的集成和對新設(shè)備的遠(yuǎn)程控制操作,改變了以往的監(jiān)控系統(tǒng)只能監(jiān)控,缺乏遠(yuǎn)程維護(hù)的情況。
圖1為本發(fā)明所述的一種對機(jī)房設(shè)施進(jìn)行遠(yuǎn)程控制的系統(tǒng)對應(yīng)的系統(tǒng)結(jié)構(gòu)圖2為本發(fā)明所述的一種對機(jī)房設(shè)施進(jìn)行遠(yuǎn)程控制的方法對應(yīng)的方法流程圖。
具體實(shí)施方式
為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)更加明顯易懂,下面結(jié)合附圖和具體實(shí)施方式
對本發(fā)明作進(jìn)一步詳細(xì)的說明。
機(jī)房設(shè)施通常指一些涉及動(dòng)力、安防和環(huán)境監(jiān)測的電氣設(shè)備,例如空調(diào),ups,配電柜,傳感 器等,這些設(shè)備有部分可以通過繼電器開關(guān)實(shí)現(xiàn)開啟和關(guān)閉,實(shí)際中往往需要通過遠(yuǎn)程控制對這些繼電器以及類似的開關(guān)裝置進(jìn)行控制,從而簡化了維護(hù)人員的工作強(qiáng)度。
本發(fā)明公開了一種對機(jī)房設(shè)施進(jìn)行遠(yuǎn)程控制的系統(tǒng)包括如下部分如圖1所示, 展現(xiàn)模塊101、任務(wù)處理模塊102、控制模塊103和兩個(gè)或兩個(gè)以上的遠(yuǎn)程控制插件104。下面具體介紹個(gè)部分
(I)展現(xiàn)模塊,作為用戶操作界面,向任務(wù)處理模塊發(fā)送用戶指令;首先用戶可以通過頁面按鈕點(diǎn)擊操作,將命令封裝成一個(gè)HTTP請求發(fā)送到任務(wù)處理模塊,HTTP請求包括相應(yīng)的HTTP參數(shù)信息,例如ip,端口,命令字等;
(2)任務(wù)處理模塊,用于對本系統(tǒng)進(jìn)行配置,根據(jù)預(yù)置的觸發(fā)設(shè)置或者展示模塊的用戶指令向控制模塊發(fā)送控制指令;
a.用戶操作觸發(fā)任務(wù)處理模塊接收到展現(xiàn)模塊發(fā)出的HTTP請求后,取HTTP請求中的各項(xiàng)參數(shù),將各項(xiàng)參數(shù)封裝至控制模塊對應(yīng)定義的控制對象(POJO)中,并根據(jù)參數(shù)中的遠(yuǎn)程控制插件的key值,調(diào)用相應(yīng)的遠(yuǎn)程控制插件;
b.定時(shí)設(shè)置觸發(fā)由固定時(shí)間點(diǎn)觸發(fā),對控制模塊定義的控制對象(POJO)進(jìn)行封裝,根據(jù)配置的遠(yuǎn)程控制插件的key值,調(diào)用相應(yīng)的遠(yuǎn)程控制插件;
c.閾值事件觸發(fā),由監(jiān)控指標(biāo)與預(yù)先設(shè)置的閾值相比,實(shí)時(shí)進(jìn)行數(shù)值觸發(fā),一旦滿足預(yù)先設(shè)置的閾值,觸發(fā)控制操作,對控制模塊定義的控制對象(POJO)進(jìn)行封裝,調(diào)用相應(yīng)的遠(yuǎn)程控制插件。
(3)控制模塊,作為遠(yuǎn)程控制插件的運(yùn)行平臺,根據(jù)任務(wù)處理模塊的控制指令,選擇調(diào)度機(jī)制,調(diào)用相應(yīng)控制插件實(shí)現(xiàn)遠(yuǎn)程調(diào)用以及接收控制反饋信息。接收到任務(wù)處理模塊的控制指令后,控制模塊根據(jù)控制方式調(diào)用到相應(yīng)的控制插件。
具體對任務(wù)處理模塊的響應(yīng)實(shí)現(xiàn)為接收到控制指令后,第一步根據(jù)控制指令中的遠(yuǎn)程控制插件key對遠(yuǎn)程控制插件進(jìn)行實(shí)例化,第二步根據(jù)控制指令中的觸發(fā)方式啟動(dòng)一個(gè)實(shí)時(shí)進(jìn)程或者定時(shí)執(zhí)行的進(jìn)程來處理控制,第三步根據(jù)控制指令中的命令字調(diào)用遠(yuǎn)程控制插件對應(yīng)的API接口。
(4)控制插件,用于調(diào)用遠(yuǎn)程機(jī)房設(shè)施的相應(yīng)API接口,發(fā)送控制指令,實(shí)現(xiàn)對機(jī)房設(shè)施進(jìn)行遠(yuǎn)程控制。
為了實(shí)現(xiàn)可擴(kuò)展的遠(yuǎn)程控制機(jī)房設(shè)施,需要對不同的遠(yuǎn)程控制方法進(jìn)行抽象,把不同遠(yuǎn)程控制方法制作成可以隨意的安裝卸載的插件,在控制方式上需要支持對機(jī)房設(shè)施進(jìn)行實(shí)時(shí)控制,定時(shí)控制,故障觸發(fā)控制。
本發(fā)明提出了遠(yuǎn)程控制插件的概念,遠(yuǎn)程控制插件是指基于不同的通訊方式,通過統(tǒng)一的插件接口實(shí)現(xiàn)通用控制方法的一類插件。有了遠(yuǎn)程控制插件的支持,機(jī)房設(shè)施就可以通過統(tǒng)一的插件接口連接不同的機(jī)房架構(gòu),并實(shí)現(xiàn)可擴(kuò)展的遠(yuǎn)程控制。如果有新的機(jī)房設(shè)施加入,就可以通過編寫遠(yuǎn)程控制插件,設(shè)立統(tǒng)一接口和統(tǒng)一的通訊方式,將新機(jī)房設(shè)施通過插件控制納入到遠(yuǎn)程控制系統(tǒng)。
進(jìn)一步,本發(fā)明所述的對機(jī)房設(shè)施進(jìn)行遠(yuǎn)程控制的系統(tǒng),可以通過更新遠(yuǎn)程控制插件來實(shí)現(xiàn)對不同機(jī)房設(shè)施的控制。由于本發(fā)明用控制插件來描述對某類設(shè)備的遠(yuǎn)程控制,所以可支持多種網(wǎng)絡(luò)協(xié)議下的遠(yuǎn)程調(diào)用。例如,snmp協(xié)議的set操作,c語言編寫的底模塊插件的遠(yuǎn)程wmi操作,以及其他專屬設(shè)備的遠(yuǎn)程操作命令等。如果有新增加的控制方式,只需要對應(yīng)編寫新的遠(yuǎn)程控制插件,通過將該遠(yuǎn)程控制插件安裝到機(jī)房設(shè)施的指定位置,從而改寫機(jī)房設(shè)施對應(yīng)的配置文件,即可實(shí)現(xiàn)新控制方式的集成和對新設(shè)備的控制操作。
例如,某個(gè)設(shè)備可以通過TCP或UDP協(xié)議用socket通訊的方式對設(shè)備本身的一個(gè)設(shè)定參數(shù)遠(yuǎn)程調(diào)整,則需要開發(fā)一個(gè)TCP控制插件
1.編寫一個(gè)程序并命名為DataFetchTCP,在里邊實(shí)現(xiàn)API的遠(yuǎn)程調(diào)用;
2.在配置文件room_config. properties中增加一行,添加此插件類的key和類路徑
control_plugin_tcp = com. mocha, bsm. room, fetch. DataFetchTCP
3.任務(wù)處理模塊在配置中定義某個(gè)指標(biāo)的遠(yuǎn)程控制插件的key為control_ plugin_tcp,并配置相應(yīng)的命令參數(shù),例如設(shè)置的值等。
進(jìn)一步,本系統(tǒng)所述的可擴(kuò)展的遠(yuǎn)程 控制機(jī)房設(shè)施的系統(tǒng),其特征在于所述的任務(wù)處理模塊包括三種觸發(fā)模式
用戶操作觸發(fā)用戶通過展現(xiàn)模塊的操作,觸發(fā)任務(wù)處理模塊,向控制模塊發(fā)送控制指令;一般說來,用戶操作屬于實(shí)時(shí)控制,是同步操作,必須等待控制指令返回再刷新數(shù)據(jù),這就需要超時(shí)機(jī)制,而定時(shí)設(shè)置控制和閾值設(shè)置控制是異步操作,不需要等待控制指令返回。
定時(shí)設(shè)置觸發(fā)由固定時(shí)間點(diǎn)觸發(fā),系統(tǒng)預(yù)先設(shè)定好定時(shí)設(shè)置(XML中增加一段配置信息),當(dāng)任務(wù)處理模塊發(fā)現(xiàn)時(shí)間觸發(fā)定時(shí)設(shè)置時(shí),監(jiān)控進(jìn)程會自動(dòng)啟動(dòng)一個(gè)進(jìn)程,觸發(fā)任務(wù)處理模塊,向控制模塊發(fā)送控制指令;一般說來,系統(tǒng)啟動(dòng)時(shí)會通過一個(gè)默認(rèn)加載的程序注冊定時(shí)執(zhí)行任務(wù),或者用戶修改控制配置時(shí),也會對啟動(dòng)時(shí)加載的這個(gè)定時(shí)執(zhí)行任務(wù)先刪除,再注冊修改后的定時(shí)執(zhí)行任務(wù)。
閾值事件觸發(fā)由監(jiān)控指標(biāo)與預(yù)先設(shè)置的閾值相比,實(shí)時(shí)進(jìn)行數(shù)值觸發(fā)。系統(tǒng)根據(jù)預(yù)先設(shè)定好的閾值設(shè)置(XML中增加一段配置信息),在發(fā)生違反閾值的事件時(shí),監(jiān)控進(jìn)程會自動(dòng)啟動(dòng)一個(gè)進(jìn)程,觸發(fā)任務(wù)處理模塊,向控制模塊發(fā)送控制指令;監(jiān)控進(jìn)程會自動(dòng)啟動(dòng)一個(gè)進(jìn)程,修改遠(yuǎn)程控制配置中的關(guān)聯(lián)指標(biāo)引起的違反閾值觸發(fā)的任務(wù)。遠(yuǎn)程控制操作完成后,接收機(jī)房設(shè)施的反饋信息,更新實(shí)時(shí)監(jiān)控?cái)?shù)據(jù)并保存到數(shù)據(jù)庫。
用戶操作觸發(fā)、定時(shí)設(shè)置觸發(fā)和閾值事件觸發(fā)的方式,滿足了對不同機(jī)房設(shè)施進(jìn)行控制的情形。例如,空調(diào)可能需要根據(jù)定時(shí)設(shè)置觸發(fā)來進(jìn)行啟停,門禁可能需要用戶操作觸發(fā)來進(jìn)行操作開關(guān),溫控箱可能需要由環(huán)境溫濕度觸發(fā)啟停。這三種方式觸發(fā)時(shí),任務(wù)處理模塊讀取控制配置中的參數(shù)和值,例如,控制方式,IP,端口,需要設(shè)置的值等,然后將其封裝為控制指令,發(fā)送給控制模塊。
進(jìn)一步,所述觸發(fā)設(shè)置用XML的格式來實(shí)現(xiàn),把控制配置定義在代表設(shè)備運(yùn)行狀態(tài)的開關(guān)量指標(biāo)中。
以下為一個(gè)XML樣例(斜體部分為控制配置,正常部分為取值配置):
〈metric id=〃mram_smokew name=〃LRl〃 desc=〃〃><basic>
權(quán)利要求
1.一種對機(jī)房設(shè)施進(jìn)行遠(yuǎn)程控制的系統(tǒng),其特征在于,包括如下部分兩個(gè)或兩個(gè)以上的遠(yuǎn)程控制插件,用于通過機(jī)房設(shè)施的API對機(jī)房設(shè)施進(jìn)行遠(yuǎn)程控制;展現(xiàn)模塊,作為用戶操作界面,向任務(wù)處理模塊發(fā)送用戶指令;任務(wù)處理模塊,用于根據(jù)預(yù)置的觸發(fā)設(shè)置或者展示模塊的用戶指令向控制模塊發(fā)送控制指令;控制模塊,根據(jù)任務(wù)處理模塊發(fā)送的控制指令,選擇相應(yīng)遠(yuǎn)程控制插件實(shí)現(xiàn)遠(yuǎn)程控制, 并接收機(jī)房設(shè)施的反饋信息。
2.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,還包括數(shù)據(jù)庫,負(fù)責(zé)保存遠(yuǎn)程控制的消息記錄以及實(shí)時(shí)監(jiān)控?cái)?shù)據(jù)。
3.根據(jù)權(quán)利要求1或2所述的系統(tǒng),其特征在于所述遠(yuǎn)程控制插件與遠(yuǎn)程控制策略一一對應(yīng),通過更新遠(yuǎn)程控制插件來擴(kuò)展對機(jī)房設(shè)施進(jìn)行的各種遠(yuǎn)程調(diào)度。
4.根據(jù)權(quán)利要求1或2所述的系統(tǒng),其特征在于所述任務(wù)處理模塊中預(yù)置的觸發(fā)設(shè)置包括用戶操作觸發(fā)通過展現(xiàn)模塊中用戶的觸發(fā)向控制模塊發(fā)送控制指令;定時(shí)設(shè)置觸發(fā)通過預(yù)先設(shè)置的既定時(shí)長向控制模塊發(fā)送控制指令;閾值事件觸發(fā)根據(jù)預(yù)先設(shè)置的閾值,在發(fā)生違反閾值的事件時(shí)向控制模塊發(fā)送控制指令。
5.根據(jù)權(quán)利要求4所述的系統(tǒng),其特征在于所述觸發(fā)設(shè)置用XML腳本來實(shí)現(xiàn)。
6.根據(jù)權(quán)利要求2所述的系統(tǒng),其特征在于所述展現(xiàn)模塊根據(jù)用戶的觸發(fā)對數(shù)據(jù)庫中信息進(jìn)行展現(xiàn)。
7.一種對機(jī)房設(shè)施進(jìn)行遠(yuǎn)程控制的方法,其特征在于,包括如下步驟步驟S1:根據(jù)機(jī)房設(shè)施的API,制作對機(jī)房設(shè)施進(jìn)行遠(yuǎn)程控制的遠(yuǎn)程控制插件;步驟S2 :在用戶操作界面上接受用戶的觸發(fā),發(fā)送用戶指令;步驟S3 :根據(jù)預(yù)置的觸發(fā)設(shè)置或者接收到的用戶指令發(fā)送控制指令;步驟S4 :根據(jù)控制指令選擇相應(yīng)遠(yuǎn)程控制插件實(shí)現(xiàn)遠(yuǎn)程控制,并接收機(jī)房設(shè)施的反饋信息。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于還包括步驟S5:將遠(yuǎn)程控制的消息記錄以及實(shí)時(shí)監(jiān)控?cái)?shù)據(jù)保存至數(shù)據(jù)庫中。
9.根據(jù)權(quán)利要求7或8所述的方法,其特征在于所述遠(yuǎn)程控制插件與遠(yuǎn)程控制策略一一對應(yīng),通過更新遠(yuǎn)程控制插件來擴(kuò)展對機(jī)房設(shè)施進(jìn)行的各種遠(yuǎn)程調(diào) 度。
10.根據(jù)權(quán)利要求7或8所述的方法,其特征在于,所述接收的機(jī)房設(shè)施的反饋信息在用戶操作界面上進(jìn)行顯示。
全文摘要
本發(fā)明公開了一種對機(jī)房設(shè)施進(jìn)行遠(yuǎn)程控制的系統(tǒng)及方法,屬于網(wǎng)絡(luò)技術(shù)領(lǐng)域。系統(tǒng)包括兩個(gè)或兩個(gè)以上的遠(yuǎn)程控制插件,用于通過機(jī)房設(shè)施的API對機(jī)房設(shè)施進(jìn)行遠(yuǎn)程控制;展現(xiàn)模塊,作為用戶操作界面,向任務(wù)處理模塊發(fā)送用戶指令;任務(wù)處理模塊,用于根據(jù)預(yù)置的觸發(fā)設(shè)置或者展示模塊的用戶指令向控制模塊發(fā)送控制指令;控制模塊,根據(jù)任務(wù)處理模塊發(fā)送的控制指令,選擇相應(yīng)遠(yuǎn)程控制插件實(shí)現(xiàn)遠(yuǎn)程控制,并接收機(jī)房設(shè)施的反饋信息。本發(fā)明通過兩個(gè)或兩個(gè)以上的遠(yuǎn)程控制插件對機(jī)房設(shè)施進(jìn)行遠(yuǎn)程控制,使得機(jī)房監(jiān)控系統(tǒng)對新型機(jī)房設(shè)備的遠(yuǎn)程控制需求可擴(kuò)展,從而支持了多種網(wǎng)絡(luò)協(xié)議下的遠(yuǎn)程調(diào)用,改變了以往的監(jiān)控系統(tǒng)只能監(jiān)控,缺乏遠(yuǎn)程維護(hù)的情況。
文檔編號H04L12/24GK103002003SQ20121033337
公開日2013年3月27日 申請日期2012年9月11日 優(yōu)先權(quán)日2012年9月11日
發(fā)明者何宇 申請人:摩卡軟件(天津)有限公司