一種基于Alljoyn網(wǎng)關(guān)間的設(shè)備服務(wù)調(diào)用方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信技術(shù)領(lǐng)域,具體而言,涉及一種基于Alljoyn網(wǎng)關(guān)間的設(shè)備服務(wù)調(diào)用方法及裝置。
【背景技術(shù)】
[0002]Alljoyn(All to join in the fun,All joyn 通信協(xié)議)是一種基于 C/S 架構(gòu)的設(shè)備之間點(diǎn)對(duì)點(diǎn)通信框架,由總線守護(hù)進(jìn)程(Bus Daemon)和終端節(jié)點(diǎn)組成。Bus Daemon負(fù)責(zé)終端節(jié)點(diǎn)之間的消息路由,服務(wù)發(fā)現(xiàn)等功能。終端節(jié)點(diǎn)是指運(yùn)行在設(shè)備上的應(yīng)用程序,啟動(dòng)后需要連接到Bus Daemon上。終端節(jié)點(diǎn)如果提供服務(wù),則向Bus Daemon注冊(cè)一個(gè)服務(wù)名稱,由Bus Daemon廣播出去。如果作為客戶端,那么可以通過服務(wù)名稱來查找服務(wù),并通過遠(yuǎn)程調(diào)用來完成指定功能。
[0003]為了使Alljoyn更好的支持智能家居場(chǎng)景,Alljoyn的智能家居服務(wù)(Smart homeservice)提出了集中式管理的概念,即Smart Home service運(yùn)行在網(wǎng)關(guān)上,其它All joyn設(shè)備向網(wǎng)關(guān)注冊(cè)自己提供的服務(wù)。Alljoyn設(shè)備間的所有通信均通過Alljoyn網(wǎng)關(guān)。Alljoyn網(wǎng)關(guān)對(duì)所有的注冊(cè)的Alljoyn設(shè)備進(jìn)行統(tǒng)一管理。從而將Alljoyn點(diǎn)對(duì)點(diǎn)的分布式通信模式擴(kuò)展為集中式通信模式,同時(shí)保證通信過程中的安全性。但是這種集中式的通信模式只能是基于所有設(shè)備必須得先注冊(cè)到同一網(wǎng)關(guān)上的前提條件下,設(shè)備間才能進(jìn)行通信。如果說網(wǎng)絡(luò)中存在兩個(gè)以上這種網(wǎng)關(guān)設(shè)備,那么不同網(wǎng)關(guān)上注冊(cè)設(shè)備之間則沒辦法進(jìn)行通信,這顯然不符合智能家居的場(chǎng)景。
【發(fā)明內(nèi)容】
[0004]本發(fā)明旨在提供一種基于Alljoyn網(wǎng)關(guān)間的設(shè)備服務(wù)調(diào)用方法,以解決現(xiàn)有技術(shù)中注冊(cè)到不同網(wǎng)關(guān)上的All joyn設(shè)備相互之間無法通信的問題。
[0005]在一些說明性實(shí)施例中,所述基于Alljoyn網(wǎng)關(guān)間的設(shè)備服務(wù)調(diào)用方法,用于注冊(cè)有客戶端設(shè)備的第一網(wǎng)關(guān)設(shè)備,包括:接收所述客戶端設(shè)備發(fā)送的請(qǐng)求消息;如果判斷出本網(wǎng)關(guān)設(shè)備的注冊(cè)設(shè)備不提供所述請(qǐng)求消息所需要調(diào)用的目標(biāo)服務(wù),則將攜帶有所述目標(biāo)服務(wù)的標(biāo)識(shí)及本網(wǎng)關(guān)設(shè)備的網(wǎng)絡(luò)地址的注冊(cè)邀請(qǐng)消息向外廣播;接收具有所述目標(biāo)服務(wù)的服務(wù)端設(shè)備的注冊(cè)信息,建立與所述服務(wù)端設(shè)備之間的連接;根據(jù)所述請(qǐng)求消息調(diào)用所述服務(wù)端設(shè)備上的所述目標(biāo)服務(wù)。
[0006]在一些說明性實(shí)施例中,所述基于Alljoyn網(wǎng)關(guān)間的設(shè)備服務(wù)調(diào)用方法,用于第二網(wǎng)關(guān)設(shè)備,包括:接收第一網(wǎng)關(guān)設(shè)備廣播的注冊(cè)邀請(qǐng)消息;其中,所述注冊(cè)邀請(qǐng)消息中包含有第一網(wǎng)關(guān)設(shè)備的網(wǎng)絡(luò)地址和目標(biāo)服務(wù)的標(biāo)識(shí);如果在本網(wǎng)關(guān)設(shè)備的注冊(cè)信息表中查找出具有所述目標(biāo)服務(wù)標(biāo)識(shí)的服務(wù)端設(shè)備,則將所述第一網(wǎng)關(guān)設(shè)備的網(wǎng)絡(luò)地址發(fā)送至所述服務(wù)端設(shè)備。
[0007]在一些說明性實(shí)施例中,所述基于Alljoyn網(wǎng)關(guān)間的設(shè)備服務(wù)調(diào)用方法,用于服務(wù)端設(shè)備,包括:接收第二網(wǎng)關(guān)設(shè)備發(fā)送的注冊(cè)有客戶端設(shè)備的第一網(wǎng)關(guān)設(shè)備的網(wǎng)關(guān)地址;按照所述第一網(wǎng)關(guān)設(shè)備的網(wǎng)絡(luò)地址向所述第一網(wǎng)關(guān)設(shè)備發(fā)送注冊(cè)信息,建立與所述第一網(wǎng)關(guān)設(shè)備之間的連接;在所述連接建立完成后,接受所述第一網(wǎng)關(guān)設(shè)備的服務(wù)調(diào)用操作。
[0008]在一些說明性實(shí)施例中,所述基于Alljoyn網(wǎng)關(guān)間的設(shè)備服務(wù)調(diào)用方法,用于注冊(cè)在第一網(wǎng)關(guān)設(shè)備上的客戶端設(shè)備,包括:向所述第一網(wǎng)關(guān)設(shè)備發(fā)送請(qǐng)求消息;如果接收到所述第一網(wǎng)關(guān)設(shè)備發(fā)送的第二網(wǎng)關(guān)設(shè)備的網(wǎng)絡(luò)地址,則按照所述第二網(wǎng)關(guān)設(shè)備的網(wǎng)絡(luò)地址向所述第二網(wǎng)關(guān)設(shè)備發(fā)送注冊(cè)信息,建立與所述第二網(wǎng)關(guān)設(shè)備之間的連接;接收所述第二網(wǎng)關(guān)設(shè)備轉(zhuǎn)發(fā)的結(jié)果通知消息。
[0009]在一些說明性實(shí)施例中,所述基于Alljoyn網(wǎng)關(guān)間的設(shè)備服務(wù)調(diào)用方法,用于注冊(cè)有客戶端設(shè)備的第一網(wǎng)關(guān)設(shè)備,包括:接收客戶端設(shè)備發(fā)送的請(qǐng)求消息;如果判斷出本網(wǎng)關(guān)設(shè)備的注冊(cè)設(shè)備不提供所述請(qǐng)求消息所需要調(diào)用的目標(biāo)服務(wù),則將攜帶有目標(biāo)服務(wù)的標(biāo)識(shí)的搜尋消息或所述請(qǐng)求消息向外廣播;接收包含注冊(cè)有具有目標(biāo)服務(wù)的服務(wù)端設(shè)備的第二網(wǎng)關(guān)設(shè)備的網(wǎng)絡(luò)地址的注冊(cè)邀請(qǐng)消息;將所述注冊(cè)邀請(qǐng)消息中的所述第二網(wǎng)關(guān)設(shè)備的網(wǎng)絡(luò)地址發(fā)送至所述客戶端設(shè)備。
[0010]在一些說明性實(shí)施例中,所述基于Alljoyn網(wǎng)關(guān)間的設(shè)備服務(wù)調(diào)用方法,用于第二網(wǎng)關(guān)設(shè)備,包括:接收第一網(wǎng)關(guān)設(shè)備廣播的搜尋消息或請(qǐng)求消息;如果在本網(wǎng)關(guān)設(shè)備的注冊(cè)信息表中查找出具有所述搜尋消息或請(qǐng)求消息指示的目標(biāo)服務(wù)的服務(wù)端設(shè)備,則將攜帶有本網(wǎng)關(guān)設(shè)備的網(wǎng)絡(luò)地址的注冊(cè)邀請(qǐng)消息向外廣播;接收客戶端設(shè)備發(fā)送的注冊(cè)信息,建立與所述客戶端設(shè)備之間的連接;根據(jù)所述客戶端設(shè)備的需求,調(diào)用服務(wù)端設(shè)備上的目標(biāo)服務(wù)。
[0011]本發(fā)明的另一個(gè)目的是提供一種基于Alljoyn網(wǎng)關(guān)間的設(shè)備服務(wù)調(diào)用裝置。
[0012]在一些說明性實(shí)施例中,所述基于Alljoyn網(wǎng)關(guān)間的設(shè)備服務(wù)調(diào)用裝置,用于注冊(cè)有客戶端設(shè)備的第一網(wǎng)關(guān)設(shè)備,包括:第一接收模塊,用于接收所述客戶端設(shè)備發(fā)送的請(qǐng)求消息;發(fā)送模塊,用于如果判斷出本網(wǎng)關(guān)設(shè)備的注冊(cè)設(shè)備不提供所述請(qǐng)求消息所需要調(diào)用的目標(biāo)服務(wù),則將攜帶有目標(biāo)服務(wù)的標(biāo)識(shí)及本網(wǎng)關(guān)設(shè)備的網(wǎng)絡(luò)地址的注冊(cè)邀請(qǐng)消息向外廣播;第二接收模塊,用于接收具有所述目標(biāo)服務(wù)的服務(wù)端設(shè)備的注冊(cè)信息,建立與所述服務(wù)端設(shè)備之間的連接;服務(wù)調(diào)用模塊,用于根據(jù)所述請(qǐng)求消息調(diào)用所述服務(wù)端設(shè)備上的所述目標(biāo)服務(wù)。
[0013]在一些說明性實(shí)施例中,所述基于Alljoyn網(wǎng)關(guān)間的設(shè)備服務(wù)調(diào)用裝置,用于第二網(wǎng)關(guān)設(shè)備,包括:接收模塊,用于接收第一網(wǎng)關(guān)設(shè)備廣播的注冊(cè)邀請(qǐng)消息;其中,所述注冊(cè)邀請(qǐng)消息中包含有第一網(wǎng)關(guān)設(shè)備的網(wǎng)絡(luò)地址和目標(biāo)服務(wù)的標(biāo)識(shí);發(fā)送模塊,用于如果在本網(wǎng)關(guān)設(shè)備的注冊(cè)信息表中查找出具有所述目標(biāo)服務(wù)標(biāo)識(shí)的服務(wù)端設(shè)備,則將所述第一網(wǎng)關(guān)設(shè)備的網(wǎng)絡(luò)地址發(fā)送至所述服務(wù)端設(shè)備。
[0014]在一些說明性實(shí)施例中,所述基于Alljoyn網(wǎng)關(guān)間的設(shè)備服務(wù)調(diào)用裝置,用于服務(wù)端設(shè)備,包括:第一接收模塊,用于接收第二網(wǎng)關(guān)設(shè)備發(fā)送的注冊(cè)有客戶端設(shè)備的第一網(wǎng)關(guān)設(shè)備的網(wǎng)關(guān)地址;發(fā)送模塊,用于按照所述第一網(wǎng)關(guān)設(shè)備的網(wǎng)絡(luò)地址向所述第一網(wǎng)關(guān)設(shè)備發(fā)送注冊(cè)信息,建立與所述第一網(wǎng)關(guān)設(shè)備之間的連接;執(zhí)行模塊,用于在所述連接建立完成后,接受所述第一網(wǎng)關(guān)設(shè)備的服務(wù)調(diào)用操作。
[0015]在一些說明性實(shí)施例中,所述基于Alljoyn網(wǎng)關(guān)間的設(shè)備服務(wù)調(diào)用裝置,用于注冊(cè)在第一網(wǎng)關(guān)設(shè)備上的客戶端設(shè)備,包括:第一發(fā)送模塊,用于向所述第一網(wǎng)關(guān)設(shè)備發(fā)送請(qǐng)求消息;第一接收模塊,用于接收到所述第一網(wǎng)關(guān)設(shè)備發(fā)送的第二網(wǎng)關(guān)設(shè)備的網(wǎng)絡(luò)地址;第二發(fā)送模塊,用于按照所述第二網(wǎng)關(guān)設(shè)備的網(wǎng)絡(luò)地址向所述第二網(wǎng)關(guān)設(shè)備發(fā)送注冊(cè)信息,建立與所述第二網(wǎng)關(guān)設(shè)備之間的連接;第二接收模塊,用于接收所述第二網(wǎng)關(guān)設(shè)備轉(zhuǎn)發(fā)的結(jié)果通知消息。
[0016]在一些說明性實(shí)施例中,所述基于Alljoyn網(wǎng)關(guān)間的設(shè)備服務(wù)調(diào)用裝置,用于注冊(cè)有客戶端設(shè)備的第一網(wǎng)關(guān)設(shè)備,包括:第一接收模塊,用于接收客戶端設(shè)備發(fā)送的請(qǐng)求消息;第一發(fā)送模塊,用于如果判斷出本網(wǎng)關(guān)設(shè)備的注冊(cè)設(shè)備不提供所述請(qǐng)求消息所需要調(diào)用的目標(biāo)服務(wù),則將攜帶有目標(biāo)服務(wù)的標(biāo)識(shí)的搜尋消息或所述請(qǐng)求消息向外廣播;第二接收模塊,用于接收包含注冊(cè)有具有目標(biāo)服務(wù)的服務(wù)端設(shè)備的第二網(wǎng)關(guān)設(shè)備的網(wǎng)絡(luò)地址的注冊(cè)邀請(qǐng)消息;第二發(fā)送模塊,用于將所述注冊(cè)邀請(qǐng)消息中的所述第二網(wǎng)關(guān)設(shè)備的網(wǎng)絡(luò)地址發(fā)送至所述客戶端設(shè)備。
[0017]在一些說明性實(shí)施例中,所述基于Alljoyn網(wǎng)關(guān)間的設(shè)備服務(wù)調(diào)用裝置,用于第二網(wǎng)關(guān)設(shè)備,包括:第一接收模塊,用于接收第一網(wǎng)關(guān)設(shè)備廣播的搜尋消息或請(qǐng)求消息;第一發(fā)送模塊,用于如果在本網(wǎng)關(guān)設(shè)備的注冊(cè)信息表中查找出具有所述搜尋消息或請(qǐng)求消息指示的目標(biāo)服務(wù)的服務(wù)端設(shè)備,則將攜帶有本網(wǎng)關(guān)設(shè)備的網(wǎng)絡(luò)地址的注冊(cè)邀請(qǐng)消息向外廣播;第二接收模塊,用于接收客戶端設(shè)備發(fā)送的注冊(cè)信息,建立與所述客戶端設(shè)備之間的連接;服務(wù)調(diào)用模塊,用于根據(jù)所述客戶端設(shè)備的需求,調(diào)用服務(wù)端設(shè)備上的目標(biāo)服務(wù)。
[0018]與現(xiàn)有技術(shù)相比,本發(fā)明的說明性實(shí)施例包括以下優(yōu)點(diǎn):
[0019]通過網(wǎng)關(guān)設(shè)備間廣播自身的網(wǎng)絡(luò)地址和臨時(shí)注冊(cè)密碼,使注冊(cè)在不同網(wǎng)關(guān)設(shè)備上的機(jī)器設(shè)備可以自動(dòng)的注冊(cè)在同一個(gè)網(wǎng)關(guān)設(shè)備上,實(shí)現(xiàn)注冊(cè)在不同網(wǎng)關(guān)上的機(jī)器設(shè)備可以相互通信,并且繼承了集中式管理概念,使機(jī)器設(shè)備必須通過網(wǎng)關(guān)設(shè)備去訪問其他機(jī)器設(shè)備,從而保證系統(tǒng)的安全性和穩(wěn)定性。
【附圖說明】
[0020]此處所說明的附圖用來提供對(duì)本發(fā)明的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的不當(dāng)限定。在附圖中:
[0021]圖1示出了說明性實(shí)施例的設(shè)備服務(wù)調(diào)用的流程圖;
[0022]圖2示出了說明性實(shí)施例的設(shè)備服務(wù)調(diào)用的流程圖;
[0023]圖3示出了說明性實(shí)施例的設(shè)備服務(wù)調(diào)用的流程圖;
[0024]圖4示出了說明性實(shí)施例的設(shè)備服務(wù)調(diào)用的流程圖;
[0025]圖5示出了說明性實(shí)施例的設(shè)備服務(wù)調(diào)用的流程圖;
[0026]圖6示出了說明性實(shí)施例的設(shè)備服務(wù)調(diào)用的流程圖;
[0027]圖7示出了說明性實(shí)施例的設(shè)備服務(wù)調(diào)用的流程圖;
[0028]圖8示出了說明性實(shí)施例的設(shè)備服務(wù)調(diào)用的流程圖;
[0029]圖9示出了說明性實(shí)施例的設(shè)備服務(wù)調(diào)用的裝置框圖;
[0030]圖10示出了說明性實(shí)施例的設(shè)備服務(wù)調(diào)用的裝置框圖;
[0031]圖11示出了說明性實(shí)施例的設(shè)備服務(wù)調(diào)用的裝置框圖;
[0032]圖12示出了說明性實(shí)施例的設(shè)備服務(wù)調(diào)用的裝置框圖;
[0033]圖13示出了說明性實(shí)施例的設(shè)備服務(wù)調(diào)用的裝置框圖;
[0034]圖14示出了說明性實(shí)