亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

多設(shè)備的智能控制方法及服務(wù)器與流程

文檔序號:11460168閱讀:241來源:國知局
多設(shè)備的智能控制方法及服務(wù)器與流程

本發(fā)明涉及智能控制技術(shù)領(lǐng)域,尤其涉及一種多設(shè)備的智能控制方法及服務(wù)器。



背景技術(shù):

目前,隨著物聯(lián)網(wǎng)技術(shù)的快速發(fā)展,作為物聯(lián)網(wǎng)中重要部分的智能家居的應(yīng)用越來越廣泛。每個公司都會提供一個app應(yīng)用程序,控制該公司的智能家居設(shè)備進行相互通信,以及控制該智能家居設(shè)備與合作公司的智能家居設(shè)備之間進行相互通信。

由于各個公司的應(yīng)用程序的通信協(xié)議不同,使得各個應(yīng)用程序無法進行通信,用戶只能通過各自的應(yīng)用程序控制對應(yīng)的智能家居設(shè)備,且無法實現(xiàn)不同公司的智能家居設(shè)備之間的通信,影響用戶的體驗。



技術(shù)實現(xiàn)要素:

本發(fā)明提供一種多設(shè)備的智能控制方法及服務(wù)器,旨在解決目前無法實現(xiàn)不同公司的智能家居設(shè)備之間的通信的技術(shù)問題。

為實現(xiàn)上述目的,本發(fā)明提供的一種多設(shè)備的智能控制方法,所述多設(shè)備的智能控制方法包括以下步驟:

在接收到第一客戶端發(fā)送的運行參數(shù)信息時,服務(wù)器解析所述運行參數(shù)信息以獲得狀態(tài)變化信息,其中,在第一客戶端對應(yīng)的第一設(shè)備的狀態(tài)改變時,所述第一客戶端基于所述第一設(shè)備的狀態(tài)變化信息生成所述運行參數(shù)信息并將所述運行參數(shù)信息發(fā)送至所述服務(wù)器;

獲取所述狀態(tài)變化信息對應(yīng)的場景數(shù)據(jù),并解析所述場景數(shù)據(jù),以獲得所述場景數(shù)據(jù)對應(yīng)的第二設(shè)備的標(biāo)識信息、所述第二設(shè)備對應(yīng)的第二客戶端及參數(shù)變化信息;

將所述參數(shù)變化信息發(fā)送至所述第二客戶端,以供所述第二客戶端基于所述參數(shù)變化信息控制所述第二設(shè)備。

優(yōu)選地,所述獲取所述狀態(tài)變化信息對應(yīng)的場景數(shù)據(jù)的步驟包括:

所述服務(wù)器將所述狀態(tài)變化信息發(fā)送至云端服務(wù)器,以供云端服務(wù)器在場景數(shù)據(jù)庫中所述狀態(tài)變化信息對應(yīng)的場景數(shù)據(jù),并將查找到的上述場景數(shù)據(jù)發(fā)送至所述服務(wù)器。

優(yōu)選地,所述在接收到第一客戶端發(fā)送的運行參數(shù)信息時,服務(wù)器解析所述運行參數(shù)信息以獲得狀態(tài)變化信息的步驟之前,所述多設(shè)備的智能控制方法還包括:

在指定目錄下生成aidl文件,并通過自定義類myscenesevice重新構(gòu)造onbind方法;

在manifest文件中添加客戶端的應(yīng)用程序?qū)?yīng)的啟動功能。

優(yōu)選地,所述將所述參數(shù)變化信息發(fā)送至所述第二客戶端,以供所述第二客戶端基于所述參數(shù)變化信息控制所述第二設(shè)備的步驟包括:

發(fā)送啟動指令至所述第二客戶端,以供所述第二客戶端在接收到所述啟動指令時,啟動所述參數(shù)變化信息對應(yīng)的應(yīng)用程序,并反饋所述應(yīng)用程序的運行狀態(tài)信息至服務(wù)器;

在接收到所述運行狀態(tài)信息時,將所述參數(shù)變化信息發(fā)送至所述第二客戶端,以供所述第二客戶端通過所述應(yīng)用程序基于所述參數(shù)變化信息控制所述第二設(shè)備。

優(yōu)選地,所述運行參數(shù)信息包括所述第一設(shè)備當(dāng)前的狀態(tài)信息以及所述第一設(shè)備的狀態(tài)改變時發(fā)生變化的數(shù)據(jù)信息。

此外,為實現(xiàn)上述目的,本發(fā)明還提供一種服務(wù)器,所述服務(wù)器包括:

解析模塊,用于在接收到第一客戶端發(fā)送的運行參數(shù)信息時,解析所述運行參數(shù)信息以獲得狀態(tài)變化信息,其中,在第一客戶端對應(yīng)的第一設(shè)備的狀態(tài)改變時,所述第一客戶端基于所述第一設(shè)備的狀態(tài)變化信息生成所述運行參數(shù)信息并將所述運行參數(shù)信息發(fā)送至所述服務(wù)器;

獲取模塊,用于獲取所述狀態(tài)變化信息對應(yīng)的場景數(shù)據(jù),并解析所述場景數(shù)據(jù),以獲得所述場景數(shù)據(jù)對應(yīng)的第二設(shè)備的標(biāo)識信息、所述第二設(shè)備對應(yīng)的第二客戶端及參數(shù)變化信息;

發(fā)送模塊,用于將所述參數(shù)變化信息發(fā)送至所述第二客戶端,以供所述第二客戶端基于所述參數(shù)變化信息控制所述第二設(shè)備。

優(yōu)選地,所述獲取模塊還用于將所述狀態(tài)變化信息發(fā)送至云端服務(wù)器,以供云端服務(wù)器在場景數(shù)據(jù)庫中所述狀態(tài)變化信息對應(yīng)的場景數(shù)據(jù),并將查找到的上述場景數(shù)據(jù)發(fā)送至所述服務(wù)器。

優(yōu)選地,所述服務(wù)器還包括:

生成模塊,用于在指定目錄下生成aidl文件,并通過自定義類myscenesevice重新構(gòu)造onbind方法;

添加模塊,用于在manifest文件中添加客戶端的應(yīng)用程序?qū)?yīng)的啟動功能。

優(yōu)選地,所述發(fā)送模塊包括:

第一發(fā)送單元,用于發(fā)送啟動指令至所述第二客戶端,以供所述第二客戶端在接收到所述啟動指令時,啟動所述參數(shù)變化信息對應(yīng)的應(yīng)用程序,并反饋所述應(yīng)用程序的運行狀態(tài)信息至服務(wù)器;

第二發(fā)送單元,用于在接收到所述運行狀態(tài)信息時,將所述參數(shù)變化信息發(fā)送至所述第二客戶端,以供所述第二客戶端通過所述應(yīng)用程序基于所述參數(shù)變化信息控制所述第二設(shè)備。

優(yōu)選地,所述運行參數(shù)信息包括所述第一設(shè)備當(dāng)前的狀態(tài)信息以及所述第一設(shè)備的狀態(tài)改變時發(fā)生變化的數(shù)據(jù)信息。

本發(fā)明通過在接收到第一客戶端發(fā)送的運行參數(shù)信息時,服務(wù)器解析所述運行參數(shù)信息以獲得狀態(tài)變化信息,接著獲取所述狀態(tài)變化信息對應(yīng)的場景數(shù)據(jù),并解析所述場景數(shù)據(jù),以獲得所述場景數(shù)據(jù)對應(yīng)的第二設(shè)備的標(biāo)識信息、所述第二設(shè)備對應(yīng)的第二客戶端及參數(shù)變化信息,而后將所述參數(shù)變化信息發(fā)送至所述第二客戶端,以供所述第二客戶端基于所述參數(shù)變化信息控制所述第二設(shè)備,進而實現(xiàn)通過該運行參數(shù)信息控制對應(yīng)的第二設(shè)備,以實現(xiàn)不同廠商的設(shè)備之間的聯(lián)動控制,使得用戶能夠通過某一設(shè)備的應(yīng)用程序控制其他廠商的設(shè)備,在不更改設(shè)備的硬件及通信協(xié)議前提下實現(xiàn)智能場景中各個設(shè)備的聯(lián)動,極大的提升了智能家居的體驗。

附圖說明

圖1為本發(fā)明多設(shè)備的智能控制方法第一實施例的流程示意圖;

圖2為本發(fā)明多設(shè)備的智能控制方法第二實施例的流程示意圖;

圖3為本發(fā)明多設(shè)備的智能控制方法第三實施例中將所述參數(shù)變化信息發(fā)送至所述第二客戶端步驟的細(xì)化流程示意圖;

圖4為本發(fā)明服務(wù)器第一實施例的功能模塊示意圖;

圖5為本發(fā)明服務(wù)器第二實施例的功能模塊示意圖;

圖6為本發(fā)明服務(wù)器第三實施例中發(fā)送模塊的細(xì)化功能模塊示意圖。

本發(fā)明目的的實現(xiàn)、功能特點及優(yōu)點將結(jié)合實施例,參照附圖做進一步說明。

具體實施方式

應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。

本發(fā)明提供一種多設(shè)備的智能控制方法。參照圖1,圖1為本發(fā)明多設(shè)備的智能控制方法第一實施例的流程示意圖。

在本實施例中,該多設(shè)備的智能控制方法包括:

步驟s10,在接收到第一客戶端發(fā)送的運行參數(shù)信息時,服務(wù)器解析所述運行參數(shù)信息以獲得狀態(tài)變化信息,其中,在第一客戶端對應(yīng)的第一設(shè)備狀態(tài)改變時,所述第一客戶端基于所述第一設(shè)備的狀態(tài)變化信息生成所述運行參數(shù)信息并將所述運行參數(shù)信息發(fā)送至所述服務(wù)器;

在本實施例中,在步驟s10之前,服務(wù)器自動在根目錄下與r文件的相同目錄中生成一個以iscene.aidl文件命名的iscene.java文件。并定義一個繼承自service的myscenesevice類,并基于myscenesevice類重新構(gòu)造onbind方法,進而能夠?qū)scene.stub()中兩個方法的對象(參數(shù))通過onbind(intentintent)方法返回給客戶端;服務(wù)器在manifest文件中注冊服務(wù)類并添加各個客戶端的應(yīng)用程序?qū)?yīng)的啟動功能即特定的啟動action,以便客戶端綁定該服務(wù)器、使得服務(wù)器能夠啟動客戶端的應(yīng)用程序。與服務(wù)器進行通信的各個客戶端,需要把iscene.aidl文件拷貝到與服務(wù)器的iscene.aidl文件相同目錄下,進而通過調(diào)用bindservice(intent,connect,service.bind_auto_create)方法綁定服務(wù)器的應(yīng)用程序,并獲取服務(wù)器提供的ibinder對象。其中,iscene.aidl方法的定義如下:

stringupdatedata();

voidchangemessage(stringmessage)。

在實現(xiàn)客戶端與服務(wù)器之間的綁定之后,在客戶端對應(yīng)的設(shè)備的狀態(tài)發(fā)生變化時,該客戶端基于設(shè)備變化的狀態(tài)(包括變化前的狀態(tài)以及變化后的狀態(tài))、變化數(shù)據(jù)的大小、變化后的值等相關(guān)的數(shù)據(jù),生成message信息即運行參數(shù)信息,具體地,生成預(yù)設(shè)格式的message字符串,而后建立與服務(wù)器的通信連接,通過獲得的服務(wù)器提供的ibinder對象調(diào)用changemessage(stringmessage)方法把message信息傳遞給服務(wù)器。

在本實施例中,服務(wù)器在接收到第一客戶端發(fā)生的運行參數(shù)信息時,解析該運行參數(shù)信息,得到第一設(shè)備的狀態(tài)變化信息,其中,第一設(shè)備包括冰箱、空調(diào)、洗衣機、電視、電飯煲以及熱水器等,運行參數(shù)信息包括所述第一設(shè)備當(dāng)前的狀態(tài)信息以及所述第一設(shè)備的狀態(tài)改變時發(fā)生變化的數(shù)據(jù)信息。

步驟s20,獲取所述狀態(tài)變化信息對應(yīng)的場景數(shù)據(jù),并解析所述場景數(shù)據(jù),以獲得所述場景數(shù)據(jù)對應(yīng)的第二設(shè)備的標(biāo)識信息、所述第二設(shè)備對應(yīng)的第二客戶端及參數(shù)變化信息;

在本實施例中,在獲取到第一設(shè)備的狀態(tài)變化信息時,服務(wù)器首先獲取狀態(tài)變化信息對應(yīng)的場景數(shù)據(jù),具體地,服務(wù)器或數(shù)據(jù)庫中存儲有不同設(shè)備的狀態(tài)變化信息對應(yīng)的預(yù)設(shè)場景數(shù)據(jù),在獲取到第一設(shè)備的狀態(tài)變化信息時,可根據(jù)該狀態(tài)變化信息在服務(wù)器或數(shù)據(jù)庫的預(yù)設(shè)場景數(shù)據(jù)中查找對應(yīng)的場景數(shù)據(jù);或者,不同設(shè)備的狀態(tài)變化信息對應(yīng)的預(yù)設(shè)場景數(shù)據(jù)存儲在云端服務(wù)器或與云端服務(wù)器通信連接的數(shù)據(jù)庫中,在獲取到第一設(shè)備的狀態(tài)變化信息時,服務(wù)器發(fā)送該狀態(tài)變化信息至云端服務(wù)器,云端服務(wù)器在預(yù)設(shè)場景數(shù)據(jù)中查找該狀態(tài)變化信息對應(yīng)的場景數(shù)據(jù),并將查找到的場景數(shù)據(jù)發(fā)送至服務(wù)器,即本實施例中,步驟s20包括:服務(wù)器將所述狀態(tài)變化信息發(fā)送至云端服務(wù)器,以供云端服務(wù)器在場景數(shù)據(jù)庫中所述狀態(tài)變化信息對應(yīng)的場景數(shù)據(jù),并將查找到的上述場景數(shù)據(jù)發(fā)送至所述服務(wù)器。

在本實施例中,服務(wù)器在獲取到場景數(shù)據(jù)時,解析該場景數(shù)據(jù),以獲得所述場景數(shù)據(jù)對應(yīng)的第二設(shè)備的標(biāo)識信息、所述第二設(shè)備對應(yīng)的第二客戶端及參數(shù)變化信息,即通過解析該場景數(shù)據(jù)獲得與第一設(shè)備聯(lián)動的設(shè)備即第二設(shè)備的標(biāo)識信息、以及該第二設(shè)備對應(yīng)的第二客戶端、以及該第二設(shè)備對應(yīng)參數(shù)變化信息等,其中,該參數(shù)變化信息是指該第二設(shè)備需要做出的動作及以及該動作對應(yīng)的數(shù)據(jù),第二終端可以與該第一終端相同,即第一設(shè)備對應(yīng)的app與第二設(shè)備對應(yīng)的app可安裝于同一終端。

步驟s30,將所述參數(shù)變化信息發(fā)送至所述第二客戶端,以供所述客戶端基于所述參數(shù)變化信息控制所述第二設(shè)備。

在本實施例中,在獲取到第二設(shè)備的標(biāo)識信息、所述第二設(shè)備對應(yīng)的第二客戶端及參數(shù)變化信息時,服務(wù)器將參數(shù)變化信息以及第二設(shè)備的標(biāo)識信息發(fā)送至所述第二客戶端,第二客戶端在接收到參數(shù)變化信息以及第二設(shè)備的標(biāo)識信息時,根據(jù)該參數(shù)變化信息控制該第二設(shè)備,進而實現(xiàn)不同公司的設(shè)備之間的聯(lián)動控制,使得用戶可在調(diào)節(jié)任一設(shè)備時,能夠自動調(diào)節(jié)與該設(shè)備關(guān)聯(lián)的其他設(shè)備。

例如,第一設(shè)備為燃?xì)庠?、第二設(shè)備為油煙機,若用戶需要使用燃?xì)庠钭鲲垼诖蜷_燃?xì)庠顣r,該燃?xì)庠顚?yīng)的第一客戶端能夠同時接收到燃?xì)庠畹臓顟B(tài)變化信息,并根據(jù)該狀態(tài)變化信息生成運行參數(shù)信息發(fā)送至服務(wù)器,服務(wù)器根據(jù)解析接收到的運行參數(shù)信息得到該狀態(tài)變化信息,進而獲取該狀態(tài)變化信息對應(yīng)的場景數(shù)據(jù),并解析所述場景數(shù)據(jù),以獲得所述場景數(shù)據(jù)對應(yīng)的第二設(shè)備的標(biāo)識信息、所述第二設(shè)備對應(yīng)的第二客戶端及參數(shù)變化信息,即油煙機的標(biāo)識信息以及該油煙機對應(yīng)的第二客戶端和開機啟動的參數(shù)變化信息,而后服務(wù)器將該參數(shù)變化信息發(fā)送至第二客戶端,第二客戶端在接收到該參數(shù)變化信息時控制該油煙機開機啟動,進而實現(xiàn)不同公司的設(shè)備之間的聯(lián)動控制。當(dāng)然,上述方式還可以運用于其他的場景,例如,用戶在開啟客廳的電視時,自動開機客廳內(nèi)的空調(diào),或者,用戶在開啟臥室的電視時,自動開機臥室內(nèi)的空調(diào),或者,用戶在關(guān)閉臥室內(nèi)的等燈時,將臥室內(nèi)的空調(diào)調(diào)節(jié)至睡覺模式等,進而能夠大大提高用戶體驗。

本實施例提出的多設(shè)備的智能控制方法,通過在接收到第一客戶端發(fā)送的運行參數(shù)信息時,服務(wù)器解析所述運行參數(shù)信息以獲得狀態(tài)變化信息,接著獲取所述狀態(tài)變化信息對應(yīng)的場景數(shù)據(jù),并解析所述場景數(shù)據(jù),以獲得所述場景數(shù)據(jù)對應(yīng)的第二設(shè)備的標(biāo)識信息、所述第二設(shè)備對應(yīng)的第二客戶端及參數(shù)變化信息,而后將所述參數(shù)變化信息發(fā)送至所述第二客戶端,以供所述第二客戶端基于所述參數(shù)變化信息控制所述第二設(shè)備,進而實現(xiàn)通過該運行參數(shù)信息控制對應(yīng)的第二設(shè)備,以實現(xiàn)不同廠商的設(shè)備之間的聯(lián)動控制,使得用戶能夠通過某一設(shè)備的應(yīng)用程序控制其他廠商的設(shè)備,在不更改設(shè)備的硬件及通信協(xié)議前提下實現(xiàn)智能場景中各個設(shè)備的聯(lián)動,極大的提升了智能家居的體驗。

基于第一實施例提出本發(fā)明多設(shè)備的智能控制方法的第二實施例,參照圖2,在本實施例中,

步驟s40,在指定目錄下生成aidl文件,并通過自定義類myscenesevice重新構(gòu)造onbind方法;

在本實施例中,服務(wù)器自動在根目錄下與r文件的目錄相同目錄中生成一個以iscene.aidl文件命名的iscene.java文件,即該指定目錄為服務(wù)器的根目錄下r文件的目錄。而后,服務(wù)器定義一個繼承自service的myscenesevice類,并基于myscenesevice類重新構(gòu)造onbind方法,進而能夠?qū)scene.stub()中兩個方法的對象(參數(shù))通過onbind(intentintent)方法返回給客戶端。其中,iscene.aidl方法的定義如下:

stringupdatedata();

voidchangemessage(stringmessage)。

步驟s50,在manifest文件中添加客戶端的應(yīng)用程序?qū)?yīng)的啟動功能。

在本實施例中,服務(wù)器首先在manifest文件中注冊服務(wù)類,并同時在manifest文件中添加各個客戶端的應(yīng)用程序?qū)?yīng)的啟動功能即特定的啟動action,以便客戶端綁定該服務(wù)器、使得服務(wù)器能夠啟動客戶端的應(yīng)用程序。與服務(wù)器進行通信的各個客戶端,需要把iscene.aidl文件拷貝到與服務(wù)器的iscene.aidl文件相同目錄下,進而通過調(diào)用bindservice(intent,connect,service.bind_auto_create)方法綁定服務(wù)器的應(yīng)用程序,并獲取服務(wù)器提供的ibinder對象。

本實施例提出的多設(shè)備的智能控制方法,通過在指定目錄下生成aidl文件,并通過自定義類myscenesevice重新構(gòu)造onbind方法,接著在manifest文件中添加客戶端的應(yīng)用程序?qū)?yīng)的啟動功能,進而能夠使得服務(wù)器能夠自動啟動各個客戶端的應(yīng)用程序,便于與客戶端進行通信,以提供客戶端控制對應(yīng)的設(shè)備,便于實現(xiàn)智能場景中各個設(shè)備的聯(lián)動。

基于第二實施例提出本發(fā)明多設(shè)備的智能控制方法的第三實施例,參照圖3,在本實施例中,步驟s30包括:

步驟s31發(fā)送啟動指令至所述第二客戶端,以供所述第二客戶端在接收到所述啟動指令時,啟動所述參數(shù)變化信息對應(yīng)的應(yīng)用程序,并反饋所述應(yīng)用程序的運行狀態(tài)信息至服務(wù)器;

一般情況下,第二客戶端中該第二設(shè)備的應(yīng)用程序處于關(guān)閉狀態(tài),以降低,該第二終端的電量消耗,因此,服務(wù)器首先確定該第二設(shè)備的應(yīng)用程序是否處于運行狀態(tài),在該第二設(shè)備的應(yīng)用程序未運行時,發(fā)送啟動指令至該第二客戶端,在接收到啟動指令時,第二客戶端啟動參數(shù)變化信息對應(yīng)的應(yīng)用程序。

在本實施例中,可直接發(fā)送啟動指令至該第二客戶端,在參數(shù)變化信息對應(yīng)的應(yīng)用程序未運行時,第二客戶端根據(jù)該啟動指令啟動參數(shù)變化信息對應(yīng)的應(yīng)用程序,并發(fā)送應(yīng)用程序的運行狀態(tài)信息至服務(wù)器,在參數(shù)變化信息對應(yīng)的應(yīng)用程序處于運行狀態(tài)時,第二客戶端發(fā)送應(yīng)用程序的運行狀態(tài)信息至服務(wù)器,其中,該運行狀態(tài)信息是指該應(yīng)用程序處于運行狀態(tài)的運行狀態(tài)信息。在該應(yīng)用程序啟動后,該第二客戶端通過該應(yīng)用程序連接該服務(wù)器,以建立第二終端與服務(wù)器之間的通信連接,并通知該服務(wù)器該應(yīng)用程序已處于運行狀態(tài)。

步驟s32,在接收到所述運行狀態(tài)信息時,將所述參數(shù)變化信息發(fā)送至所述第二客戶端,以供所述第二客戶端通過所述應(yīng)用程序基于所述參數(shù)變化信息控制所述第二設(shè)備。

在本實施例中,在接收到運行狀態(tài)信息時,第二客戶端的應(yīng)用程序已啟動且第二客戶端與服務(wù)器之間已成功建立通信連接,服務(wù)器將參數(shù)變化信息發(fā)送至第二客戶端,第二客戶端通過該應(yīng)用程序基于參數(shù)變化信息控制第二設(shè)備,其中,在第二客戶端與服務(wù)器之間建立通信連接時,第二客戶端通過從服務(wù)器獲取的ibinder對象的updatedata()方法獲取服務(wù)器傳過來的聯(lián)動數(shù)據(jù)即參數(shù)變化信息。

本實施例提出的多設(shè)備的智能控制方法,通過發(fā)送啟動指令至所述第二客戶端,以供所述第二客戶端在接收到所述啟動指令時,啟動所述參數(shù)變化信息對應(yīng)的應(yīng)用程序,并反饋所述應(yīng)用程序的運行狀態(tài)信息至服務(wù)器,接著在接收到所述運行狀態(tài)信息時,將所述參數(shù)變化信息發(fā)送至所述第二客戶端,以供所述第二客戶端通過所述應(yīng)用程序基于所述參數(shù)變化信息控制所述第二設(shè)備,進而能夠確保第二客戶端的應(yīng)用程序處于運行狀態(tài),以保證第二客戶端能夠通過所述應(yīng)用程序控制第二設(shè)備,進而實現(xiàn)不同廠商的設(shè)備之間的聯(lián)動控制,使得用戶能夠通過某一設(shè)備的應(yīng)用程序控制其他廠商的設(shè)備。

本發(fā)明進一步提供一種服務(wù)器。參照圖4,圖4為本發(fā)明服務(wù)器第一實施例的功能模塊示意圖。

在本實施例中,該服務(wù)器包括:

解析模塊10,用于在接收到第一客戶端發(fā)送的運行參數(shù)信息時,解析所述運行參數(shù)信息以獲得狀態(tài)變化信息,其中,在第一客戶端對應(yīng)的第一設(shè)備的狀態(tài)改變時,所述第一客戶端基于所述第一設(shè)備的狀態(tài)變化信息生成所述運行參數(shù)信息并將所述運行參數(shù)信息發(fā)送至所述服務(wù)器;

在本實施例中,服務(wù)器自動在根目錄下與r文件的相同目錄中生成一個以iscene.aidl文件命名的iscene.java文件。并定義一個繼承自service的myscenesevice類,并基于myscenesevice類重新構(gòu)造onbind方法,進而能夠?qū)scene.stub()中兩個方法的對象(參數(shù))通過onbind(intentintent)方法返回給客戶端;服務(wù)器在manifest文件中注冊服務(wù)類并添加各個客戶端的應(yīng)用程序?qū)?yīng)的啟動功能即特定的啟動action,以便客戶端綁定該服務(wù)器、使得服務(wù)器能夠啟動客戶端的應(yīng)用程序。與服務(wù)器進行通信的各個客戶端,需要把iscene.aidl文件拷貝到與服務(wù)器的iscene.aidl文件相同目錄下,進而通過調(diào)用bindservice(intent,connect,service.bind_auto_create)方法綁定服務(wù)器的應(yīng)用程序,并獲取服務(wù)器提供的ibinder對象。其中,iscene.aidl方法的定義如下:

stringupdatedata();

voidchangemessage(stringmessage)。

在實現(xiàn)客戶端與服務(wù)器之間的綁定之后,在客戶端對應(yīng)的設(shè)備的狀態(tài)發(fā)生變化時,該客戶端基于設(shè)備變化的狀態(tài)(包括變化前的狀態(tài)以及變化后的狀態(tài))、變化數(shù)據(jù)的大小、變化后的值等相關(guān)的數(shù)據(jù),生成message信息即運行參數(shù)信息,具體地,生成預(yù)設(shè)格式的message字符串,而后建立與服務(wù)器的通信連接,通過獲得的服務(wù)器提供的ibinder對象調(diào)用changemessage(stringmessage)方法把message信息傳遞給服務(wù)器。

在本實施例中,在接收到第一客戶端發(fā)生的運行參數(shù)信息時,解析模塊10解析該運行參數(shù)信息,得到第一設(shè)備的狀態(tài)變化信息,其中,第一設(shè)備包括冰箱、空調(diào)、洗衣機、電視、電飯煲以及熱水器等,運行參數(shù)信息包括所述第一設(shè)備當(dāng)前的狀態(tài)信息以及所述第一設(shè)備的狀態(tài)改變時發(fā)生變化的數(shù)據(jù)信息。

獲取模塊20,用于獲取所述狀態(tài)變化信息對應(yīng)的場景數(shù)據(jù),并解析所述場景數(shù)據(jù),以獲得所述場景數(shù)據(jù)對應(yīng)的第二設(shè)備的標(biāo)識信息、所述第二設(shè)備對應(yīng)的第二客戶端及參數(shù)變化信息;

在本實施例中,在獲取到第一設(shè)備的狀態(tài)變化信息時,獲取模塊20獲取狀態(tài)變化信息對應(yīng)的場景數(shù)據(jù),具體地,服務(wù)器或數(shù)據(jù)庫中存儲有不同設(shè)備的狀態(tài)變化信息對應(yīng)的預(yù)設(shè)場景數(shù)據(jù),在獲取到第一設(shè)備的狀態(tài)變化信息時,可根據(jù)該狀態(tài)變化信息在服務(wù)器或數(shù)據(jù)庫的預(yù)設(shè)場景數(shù)據(jù)中查找對應(yīng)的場景數(shù)據(jù);或者,不同設(shè)備的狀態(tài)變化信息對應(yīng)的預(yù)設(shè)場景數(shù)據(jù)存儲在云端服務(wù)器或與云端服務(wù)器通信連接的數(shù)據(jù)庫中,在獲取到第一設(shè)備的狀態(tài)變化信息時,服務(wù)器發(fā)送該狀態(tài)變化信息至云端服務(wù)器,云端服務(wù)器在預(yù)設(shè)場景數(shù)據(jù)中查找該狀態(tài)變化信息對應(yīng)的場景數(shù)據(jù),并將查找到的場景數(shù)據(jù)發(fā)送至服務(wù)器,即本實施例中,獲取模塊20還用于將所述狀態(tài)變化信息發(fā)送至云端服務(wù)器,以供云端服務(wù)器在場景數(shù)據(jù)庫中所述狀態(tài)變化信息對應(yīng)的場景數(shù)據(jù),并將查找到的上述場景數(shù)據(jù)發(fā)送至所述服務(wù)器。

在本實施例中,在獲取到場景數(shù)據(jù)時,獲取模塊20解析該場景數(shù)據(jù),以獲得所述場景數(shù)據(jù)對應(yīng)的第二設(shè)備的標(biāo)識信息、所述第二設(shè)備對應(yīng)的第二客戶端及參數(shù)變化信息,即通過解析該場景數(shù)據(jù)獲得與第一設(shè)備聯(lián)動的設(shè)備即第二設(shè)備的標(biāo)識信息、以及該第二設(shè)備對應(yīng)的第二客戶端、以及該第二設(shè)備對應(yīng)參數(shù)變化信息等,其中,該參數(shù)變化信息是指該第二設(shè)備需要做出的動作及以及該動作對應(yīng)的數(shù)據(jù),第二終端可以與該第一終端相同,即第一設(shè)備對應(yīng)的app與第二設(shè)備對應(yīng)的app可安裝于同一終端。

發(fā)送模塊30,用于將所述參數(shù)變化信息發(fā)送至所述第二客戶端,以供所述第二客戶端基于所述參數(shù)變化信息控制所述第二設(shè)備。

在本實施例中,在獲取到第二設(shè)備的標(biāo)識信息、所述第二設(shè)備對應(yīng)的第二客戶端及參數(shù)變化信息時,發(fā)送模塊30將參數(shù)變化信息以及第二設(shè)備的標(biāo)識信息發(fā)送至所述第二客戶端,第二客戶端在接收到參數(shù)變化信息以及第二設(shè)備的標(biāo)識信息時,根據(jù)該參數(shù)變化信息控制該第二設(shè)備,進而實現(xiàn)不同公司的設(shè)備之間的聯(lián)動控制,使得用戶可在調(diào)節(jié)任一設(shè)備時,能夠自動調(diào)節(jié)與該設(shè)備關(guān)聯(lián)的其他設(shè)備。

例如,第一設(shè)備為燃?xì)庠?、第二設(shè)備為油煙機,若用戶需要使用燃?xì)庠钭鲲垼诖蜷_燃?xì)庠顣r,該燃?xì)庠顚?yīng)的第一客戶端能夠同時接收到燃?xì)庠畹臓顟B(tài)變化信息,并根據(jù)該狀態(tài)變化信息生成運行參數(shù)信息發(fā)送至服務(wù)器,服務(wù)器根據(jù)解析接收到的運行參數(shù)信息得到該狀態(tài)變化信息,進而獲取該狀態(tài)變化信息對應(yīng)的場景數(shù)據(jù),并解析所述場景數(shù)據(jù),以獲得所述場景數(shù)據(jù)對應(yīng)的第二設(shè)備的標(biāo)識信息、所述第二設(shè)備對應(yīng)的第二客戶端及參數(shù)變化信息,即油煙機的標(biāo)識信息以及該油煙機對應(yīng)的第二客戶端和開機啟動的參數(shù)變化信息,而后服務(wù)器將該參數(shù)變化信息發(fā)送至第二客戶端,第二客戶端在接收到該參數(shù)變化信息時控制該油煙機開機啟動,進而實現(xiàn)不同公司的設(shè)備之間的聯(lián)動控制。當(dāng)然,上述方式還可以運用于其他的場景,例如,用戶在開啟客廳的電視時,自動開機客廳內(nèi)的空調(diào),或者,用戶在開啟臥室的電視時,自動開機臥室內(nèi)的空調(diào),或者,用戶在關(guān)閉臥室內(nèi)的等燈時,將臥室內(nèi)的空調(diào)調(diào)節(jié)至睡覺模式等,進而能夠大大提高用戶體驗。

本實施例提出的服務(wù)器,通過在接收到第一客戶端發(fā)送的運行參數(shù)信息時,解析模塊10解析所述運行參數(shù)信息以獲得狀態(tài)變化信息,接著獲取模塊20獲取所述狀態(tài)變化信息對應(yīng)的場景數(shù)據(jù),并解析所述場景數(shù)據(jù),以獲得所述場景數(shù)據(jù)對應(yīng)的第二設(shè)備的標(biāo)識信息、所述第二設(shè)備對應(yīng)的第二客戶端及參數(shù)變化信息,而后發(fā)送模塊30將所述參數(shù)變化信息發(fā)送至所述第二客戶端,以供所述第二客戶端基于所述參數(shù)變化信息控制所述第二設(shè)備,進而實現(xiàn)通過該運行參數(shù)信息控制對應(yīng)的第二設(shè)備,以實現(xiàn)不同廠商的設(shè)備之間的聯(lián)動控制,使得用戶能夠通過某一設(shè)備的應(yīng)用程序控制其他廠商的設(shè)備,在不更改設(shè)備的硬件及通信協(xié)議前提下實現(xiàn)智能場景中各個設(shè)備的聯(lián)動,極大的提升了智能家居的體驗。

基于第一實施例提出本發(fā)明服務(wù)器的第二實施例,參照圖2,在本實施例中,服務(wù)器還包括:

生成模塊40,用于在指定目錄下生成aidl文件,并通過自定義類myscenesevice重新構(gòu)造onbind方法;

在本實施例中,生成模塊40自動在根目錄下與r文件的目錄相同目錄中生成一個以iscene.aidl文件命名的iscene.java文件,即該指定目錄為服務(wù)器的根目錄下r文件的目錄。而后,生成模塊40定義一個繼承自service的myscenesevice類,并基于myscenesevice類重新構(gòu)造onbind方法,進而能夠?qū)scene.stub()中兩個方法的對象(參數(shù))通過onbind(intentintent)方法返回給客戶端。其中,iscene.aidl方法的定義如下:

stringupdatedata();

voidchangemessage(stringmessage)。

添加模塊50,用于在manifest文件中添加客戶端的應(yīng)用程序?qū)?yīng)的啟動功能。

在本實施例中,添加模塊50首先在manifest文件中注冊服務(wù)類,并同時在manifest文件中添加各個客戶端的應(yīng)用程序?qū)?yīng)的啟動功能即特定的啟動action,以便客戶端綁定該服務(wù)器、使得服務(wù)器能夠啟動客戶端的應(yīng)用程序。與服務(wù)器進行通信的各個客戶端,需要把iscene.aidl文件拷貝到與服務(wù)器的iscene.aidl文件相同目錄下,進而通過調(diào)用bindservice(intent,connect,service.bind_auto_create)方法綁定服務(wù)器的應(yīng)用程序,并獲取服務(wù)器提供的ibinder對象。

本實施例提出的服務(wù)器,通過生成模塊40在指定目錄下生成aidl文件,并通過自定義類myscenesevice重新構(gòu)造onbind方法,接著添加模塊50在manifest文件中添加客戶端的應(yīng)用程序?qū)?yīng)的啟動功能,進而能夠使得服務(wù)器能夠自動啟動各個客戶端的應(yīng)用程序,便于與客戶端進行通信,以提供客戶端控制對應(yīng)的設(shè)備,便于實現(xiàn)智能場景中各個設(shè)備的聯(lián)動。

基于第一實施例提出本發(fā)明服務(wù)器的第三實施例,參照圖3,在本實施例中,發(fā)送模塊30包括:

第一發(fā)送單元21,用于發(fā)送啟動指令至所述第二客戶端,以供所述第二客戶端在接收到所述啟動指令時,啟動所述參數(shù)變化信息對應(yīng)的應(yīng)用程序,并反饋所述應(yīng)用程序的運行狀態(tài)信息至服務(wù)器;

一般情況下,第二客戶端中該第二設(shè)備的應(yīng)用程序處于關(guān)閉狀態(tài),以降低,該第二終端的電量消耗,因此,第一發(fā)送單元21首先確定該第二設(shè)備的應(yīng)用程序是否處于運行狀態(tài),在該第二設(shè)備的應(yīng)用程序未運行時,發(fā)送啟動指令至該第二客戶端,在接收到啟動指令時,第二客戶端啟動參數(shù)變化信息對應(yīng)的應(yīng)用程序。

在本實施例中,可直接發(fā)送啟動指令至該第二客戶端,在參數(shù)變化信息對應(yīng)的應(yīng)用程序未運行時,第二客戶端根據(jù)該啟動指令啟動參數(shù)變化信息對應(yīng)的應(yīng)用程序,并發(fā)送應(yīng)用程序的運行狀態(tài)信息至服務(wù)器,在參數(shù)變化信息對應(yīng)的應(yīng)用程序處于運行狀態(tài)時,第二客戶端發(fā)送應(yīng)用程序的運行狀態(tài)信息至服務(wù)器,其中,該運行狀態(tài)信息是指該應(yīng)用程序處于運行狀態(tài)的運行狀態(tài)信息。在該應(yīng)用程序啟動后,該第二客戶端通過該應(yīng)用程序連接該服務(wù)器,以建立第二終端與服務(wù)器之間的通信連接,并通知該服務(wù)器該應(yīng)用程序已處于運行狀態(tài)。

第二發(fā)送單元32,用于在接收到所述運行狀態(tài)信息時,將所述參數(shù)變化信息發(fā)送至所述第二客戶端,以供所述第二客戶端通過所述應(yīng)用程序基于所述參數(shù)變化信息控制所述第二設(shè)備。

在本實施例中,在接收到運行狀態(tài)信息時,第二客戶端的應(yīng)用程序已啟動且第二客戶端與服務(wù)器之間已成功建立通信連接,第二發(fā)送單元32將參數(shù)變化信息發(fā)送至第二客戶端,第二客戶端通過該應(yīng)用程序基于參數(shù)變化信息控制第二設(shè)備,其中,在第二客戶端與服務(wù)器之間建立通信連接時,第二客戶端通過從服務(wù)器獲取的ibinder對象的updatedata()方法獲取服務(wù)器傳過來的聯(lián)動數(shù)據(jù)即參數(shù)變化信息。

本實施例提出的服務(wù)器,通過第一發(fā)送單元21發(fā)送啟動指令至所述第二客戶端,以供所述第二客戶端在接收到所述啟動指令時,啟動所述參數(shù)變化信息對應(yīng)的應(yīng)用程序,并反饋所述應(yīng)用程序的運行狀態(tài)信息至服務(wù)器,接著在接收到所述運行狀態(tài)信息時,第二發(fā)送單元32將所述參數(shù)變化信息發(fā)送至所述第二客戶端,以供所述第二客戶端通過所述應(yīng)用程序基于所述參數(shù)變化信息控制所述第二設(shè)備,進而能夠確保第二客戶端的應(yīng)用程序處于運行狀態(tài),以保證第二客戶端能夠通過所述應(yīng)用程序控制第二設(shè)備,進而實現(xiàn)不同廠商的設(shè)備之間的聯(lián)動控制,使得用戶能夠通過某一設(shè)備的應(yīng)用程序控制其他廠商的設(shè)備。

以上僅為本發(fā)明的優(yōu)選實施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護范圍內(nèi)。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1