代理服務(wù)器及其指令傳輸方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通訊網(wǎng)絡(luò)領(lǐng)域,尤其涉及一種代理服務(wù)器及其指令傳輸方法。
【背景技術(shù)】
[0002]隨著科技的進(jìn)步,各種智能終端的發(fā)展日新月異,使得對(duì)各智能終端的使用越發(fā)方便越發(fā)多樣性,例如使各智能終端間能輕易地互相"通話"。但是,由于不同智能終端所使用的協(xié)議不同,底層操作困難,使得智能終端的開(kāi)發(fā)成本較高。
【發(fā)明內(nèi)容】
[0003]本發(fā)明要解決的技術(shù)問(wèn)題在于,針對(duì)現(xiàn)有技術(shù)的上述開(kāi)發(fā)成本高的缺陷,提供一種代理服務(wù)器及其指令傳輸方法,能降低終端的開(kāi)發(fā)成本。
[0004]本發(fā)明解決其技術(shù)問(wèn)題所采用的技術(shù)方案是:構(gòu)造一種指令傳輸方法,包括:
[0005]接口模塊接收來(lái)自客戶端的指令,并判斷來(lái)自客戶端的指令是否為實(shí)時(shí)指令,所述實(shí)時(shí)指令包括目標(biāo)裝置的信息及命令信息;
[0006]在來(lái)自客戶端的指令為實(shí)時(shí)指令時(shí),會(huì)話管理模塊根據(jù)目標(biāo)裝置的信息建立與相應(yīng)目標(biāo)裝置之間的聯(lián)機(jī)通道,并將所述聯(lián)機(jī)通道的端口號(hào)與相應(yīng)目標(biāo)裝置進(jìn)行綁定;
[0007]會(huì)話管理模塊將命令信息轉(zhuǎn)換為相應(yīng)目標(biāo)裝置的協(xié)議格式,然后發(fā)送至相應(yīng)目標(biāo)
目.ο
[0008]進(jìn)一步地,還包括:
[0009]在會(huì)話結(jié)束后,會(huì)話管理模塊釋放相應(yīng)實(shí)時(shí)指令的內(nèi)存空間及解除端口號(hào)的綁定。
[0010]進(jìn)一步地,在會(huì)話管理模塊根據(jù)目標(biāo)裝置的信息建立與相應(yīng)目標(biāo)裝置之間的聯(lián)機(jī)通道,并將所述聯(lián)機(jī)通道的端口號(hào)與相應(yīng)目標(biāo)裝置進(jìn)行綁定的步驟之后,還包括:
[0011]會(huì)話管理模塊產(chǎn)生所述聯(lián)機(jī)通道所對(duì)應(yīng)的令牌;
[0012]會(huì)話管理模塊管理不同令牌所對(duì)應(yīng)的端口號(hào),并維持所述端口號(hào)與相應(yīng)目標(biāo)設(shè)備之間的聯(lián)機(jī)狀態(tài)。
[0013]本發(fā)明還構(gòu)造一種指令傳輸方法,包括:
[0014]接口模塊接收來(lái)自客戶端的指令,并判斷來(lái)自客戶端的指令是否為條件指令,所述條件指令包括目標(biāo)裝置的信息、條件信息及命令信息;
[0015]在來(lái)自客戶端的指令為條件指令時(shí),腳本解析模塊將所述條件信息由描述語(yǔ)言解析為機(jī)器語(yǔ)言;
[0016]邏輯引擎模塊在接收到解析后的條件信息后,向會(huì)話管理模塊發(fā)送第一通知,并根據(jù)所述解析后的條件信息監(jiān)控當(dāng)下條件,且在當(dāng)下條件滿足觸發(fā)條件時(shí),向會(huì)話管理模塊發(fā)送第二通知;
[0017]會(huì)話管理模塊在收到所述第一通知后,根據(jù)目標(biāo)裝置的信息建立與相應(yīng)目標(biāo)裝置之間的聯(lián)機(jī)通道,并將所述聯(lián)機(jī)通道的端口號(hào)與相應(yīng)目標(biāo)裝置進(jìn)行綁定;會(huì)話管理模塊在收到所述第二通知后,將命令信息轉(zhuǎn)換為相應(yīng)目標(biāo)裝置的協(xié)議格式,然后發(fā)送至相應(yīng)目標(biāo)
目.Ο
[0018]進(jìn)一步地,還包括:
[0019]在會(huì)話結(jié)束后,會(huì)話管理模塊釋放相應(yīng)條件指令的內(nèi)存空間及解除端口號(hào)的綁定。
[0020]進(jìn)一步地,在腳本解析模塊將所述條件信息由描述語(yǔ)言解析為機(jī)器語(yǔ)言的步驟之后,還包括:
[0021 ] 腳本解析模塊產(chǎn)生所述聯(lián)機(jī)通道所對(duì)應(yīng)的令牌;
[0022]會(huì)話管理模塊管理不同令牌所對(duì)應(yīng)的端口號(hào),并維持所述端口號(hào)與相應(yīng)目標(biāo)設(shè)備之間的聯(lián)機(jī)狀態(tài)。
[0023]本發(fā)明還構(gòu)造一種代理服務(wù)器,用于將來(lái)自客戶端的指令傳送到目標(biāo)裝置,包括:
[0024]接口模塊,用于接收來(lái)自客戶端的指令,并判斷來(lái)自客戶端的指令是否為條件指令,所述條件指令包括目標(biāo)裝置的信息、條件信息及命令信息;
[0025]腳本解析模塊,連接于所述接口模塊,且用于在來(lái)自客戶端的指令為條件指令時(shí),將所述條件信息由描述語(yǔ)言解析為機(jī)器語(yǔ)言;
[0026]邏輯引擎模塊,連接于所述腳本解析模塊,且用于在接收到解析后的條件信息后,向會(huì)話管理模塊發(fā)送第一通知;還用于根據(jù)所述解析后的條件信息監(jiān)控當(dāng)下條件,且在當(dāng)下條件滿足觸發(fā)條件時(shí),向會(huì)話管理模塊發(fā)送第二通知;
[0027]會(huì)話管理模塊,連接于所述邏輯引擎模塊,且用于,在收到所述第一通知后,根據(jù)目標(biāo)裝置的信息建立與相應(yīng)目標(biāo)裝置之間的聯(lián)機(jī)通道,并將所述聯(lián)機(jī)通道的端口號(hào)與相應(yīng)目標(biāo)裝置進(jìn)行綁定;而且,在收到所述第二通知后,將命令信息轉(zhuǎn)換為相應(yīng)目標(biāo)裝置的協(xié)議格式,然后發(fā)送至相應(yīng)目標(biāo)裝置。
[0028]進(jìn)一步地,
[0029]所述接口模塊,還用于判斷來(lái)自客戶端的指令是否為實(shí)時(shí)指令,所述實(shí)時(shí)指令包括目標(biāo)裝置的信息及命令信息;
[0030]所述會(huì)話管理模塊,還連接于所述接口模塊,且用于在來(lái)自客戶端的指令為實(shí)時(shí)指令時(shí),根據(jù)目標(biāo)裝置的信息建立與相應(yīng)目標(biāo)裝置之間的聯(lián)機(jī)通道,并將所述聯(lián)機(jī)通道的端口號(hào)與相應(yīng)目標(biāo)裝置進(jìn)行綁定,而且,將命令信息轉(zhuǎn)換為相應(yīng)目標(biāo)裝置的協(xié)議格式,然后發(fā)送至相應(yīng)目標(biāo)裝置;
[0031]進(jìn)一步地,還包括:
[0032]多個(gè)連接服務(wù)模塊,連接在所述會(huì)話管理模塊與相應(yīng)目標(biāo)裝置之間,且用于維持所述聯(lián)機(jī)通道及根據(jù)所述協(xié)議格式進(jìn)行信息轉(zhuǎn)發(fā)。
[0033]進(jìn)一步地,
[0034]所述會(huì)話管理模塊,還用于在會(huì)話結(jié)束后,釋放相應(yīng)實(shí)時(shí)指令或條件指令的內(nèi)存空間及解除端口號(hào)的綁定。
[0035]進(jìn)一步地,
[0036]所述腳本解析模塊,還用于在來(lái)自客戶端的指令為條件指令時(shí),產(chǎn)生所述聯(lián)機(jī)通道所對(duì)應(yīng)的令牌;
[0037]所述會(huì)話管理模塊,還用于在來(lái)自客戶端的指令為實(shí)時(shí)指令時(shí),產(chǎn)生所述聯(lián)機(jī)通道所對(duì)應(yīng)的令牌;
[0038]所述會(huì)話管理模塊,還用于管理不同令牌所對(duì)應(yīng)的端口號(hào),并維持所述端口號(hào)與相應(yīng)目標(biāo)設(shè)備之間的聯(lián)機(jī)狀態(tài)。
[0039]實(shí)施本發(fā)明的技術(shù)方案,具有以下有益效果:
[0040]1.因協(xié)議轉(zhuǎn)換及條件判斷(在需要時(shí))皆有代理服務(wù)器完成,所以減少了客戶端和目標(biāo)裝置的開(kāi)發(fā)成本,使客戶端和目標(biāo)裝置端都無(wú)需較高規(guī)格,而且,減少在不同設(shè)備整合成本。
[0041]2.因維持聯(lián)機(jī)方法可交由代理服務(wù)器來(lái)維持,即使設(shè)備不在線,也可將指令保留在代理服務(wù)器端,等待目標(biāo)裝置上線后發(fā)送,可以減少客戶端的電力消耗。
【附圖說(shuō)明】
[0042]下面將結(jié)合附圖及實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明,附圖中:
[0043]圖1是本發(fā)明代理服務(wù)器實(shí)施例一的邏輯圖;
[0044]圖2是本發(fā)明信息傳輸系統(tǒng)實(shí)施例一的邏輯圖;
[0045]圖3是本發(fā)明指令傳輸方法實(shí)施例一的流程圖;
[0046]圖4是本發(fā)明指令傳輸方法實(shí)施例二的流程圖;
[0047]圖5是本發(fā)明指令傳輸方法實(shí)施例三的流程圖;
[0048]圖6是本發(fā)明指令傳輸方法實(shí)施例四的流程圖;
[0049]圖7是本發(fā)明指令傳輸方法實(shí)施例五的流程圖;
[0050]圖8是本發(fā)明指令傳輸方法實(shí)施例六的流程圖;
[0051]圖9是本發(fā)明指令傳輸方法實(shí)施例七的流程圖。
【具體實(shí)施方式】
[0052]圖1是本發(fā)明代理服務(wù)器實(shí)施例一的邏輯圖,代理服務(wù)器用于將來(lái)自客戶端的指令傳輸?shù)侥繕?biāo)裝置,且該實(shí)施例的代理服務(wù)器包括接口模塊11、腳本解析(Script Parser)模塊12、邏輯引擎(Logical Engine)模塊13、會(huì)話管理(sess1n manager)模塊14和多個(gè)連接服務(wù)(socket service)模塊15、…、15',而且,腳本解析模塊12和會(huì)話管理模塊14分別與接口模塊11連接,邏輯引擎模塊13分別與腳本解析模塊12和會(huì)話管理模塊14連接,多個(gè)連接服務(wù)模塊15、…、15'也分別和會(huì)話管理模塊14連接。下面分別說(shuō)明每個(gè)模塊的邏輯結(jié)構(gòu):
[0053]接口模塊11用于接收來(lái)自客戶端的指令,即開(kāi)始會(huì)話,并判斷來(lái)自客戶端的指令為實(shí)時(shí)指令或條件指令,其中,所述實(shí)時(shí)指令包括目標(biāo)裝置的信息及命令信息時(shí),所述條件指令包括目標(biāo)裝置的信息、條件信息及命令信息。目標(biāo)裝置的信息例如包括目標(biāo)裝置的ID、目標(biāo)裝置所對(duì)應(yīng)的密碼、目標(biāo)裝置所使用的協(xié)議等;條件信息例如包括何時(shí)條件、何處條件、事件條件、復(fù)合條件等;命令信息包括命令或動(dòng)作。該接口模塊11例如為SPI (ServiceProgramming Interface,服務(wù)編程接口)接口模塊,其溝通方式很多元,可用REST API作為接收方法來(lái)讓用戶呼叫并傳輸相關(guān)信息。
[0054]腳本解析模塊12用于在來(lái)自客戶端的條件指令時(shí),將所述條件信息由描述語(yǔ)言解析為機(jī)器語(yǔ)言。
[0055]邏輯引擎模塊13用于在接收到解析后的條件信息后,向會(huì)話管理模塊14發(fā)送第一通知;還用于根據(jù)解析后的條件信息監(jiān)控當(dāng)下條件,且在當(dāng)下條件滿足觸發(fā)條件時(shí),向會(huì)話管理模塊14發(fā)送第二通知。
[0056]會(huì)話管理模塊14用于在來(lái)自客戶端的指令為實(shí)時(shí)指令時(shí),根據(jù)目標(biāo)裝置的信息建立與相應(yīng)目標(biāo)裝置之間的聯(lián)機(jī)通道,并將所述聯(lián)機(jī)通道的端口號(hào)與相應(yīng)目標(biāo)裝置進(jìn)行綁定;而且,將命令信息轉(zhuǎn)換為相應(yīng)目標(biāo)裝置的協(xié)議格式,然后發(fā)送至相應(yīng)目標(biāo)裝置;還用于在來(lái)自客戶