P和局域網(wǎng)IP。
[0027]進(jìn)一步,由于所述服務(wù)器內(nèi)可以存儲(chǔ)多個(gè)UPnP設(shè)備的廣域網(wǎng)IP及局域網(wǎng)IP,從而UPnP設(shè)備在上報(bào)其廣域網(wǎng)IP及局域網(wǎng)IP的同時(shí),還上報(bào)唯一標(biāo)識(shí)所述UPnP設(shè)備的設(shè)備標(biāo)識(shí),這樣可以確定廣域網(wǎng)IP及局域網(wǎng)IP對(duì)應(yīng)的UPnP設(shè)備。其中,所述設(shè)備標(biāo)識(shí)可以是設(shè)備號(hào)。在實(shí)際應(yīng)用中,所述UPnP設(shè)備可以將所述廣域網(wǎng)IP、局域網(wǎng)IP及設(shè)備標(biāo)識(shí)綁定作為一條信息上傳服務(wù)器,可以將廣域網(wǎng)IP、局域網(wǎng)IP及設(shè)備標(biāo)識(shí)單獨(dú)的信息上傳服務(wù)器。服務(wù)器將UPnP設(shè)備上報(bào)的廣域網(wǎng)IP、局域網(wǎng)IP及設(shè)備標(biāo)識(shí)對(duì)應(yīng)存儲(chǔ),其存儲(chǔ)方式可以為:(設(shè)備標(biāo)識(shí)、廣域網(wǎng)IP、局域網(wǎng)IP)。
[0028]進(jìn)一步,同一設(shè)備上報(bào)廣域網(wǎng)IP、局域網(wǎng)IP及設(shè)備標(biāo)識(shí)時(shí),服務(wù)器還可以包括一個(gè)查找過(guò)程,具體過(guò)程可以為:所述服務(wù)器根據(jù)所述設(shè)備標(biāo)識(shí)查找是否已經(jīng)存儲(chǔ)所述設(shè)備標(biāo)識(shí)的廣域網(wǎng)IP及局域網(wǎng)IP信息,如果未存儲(chǔ)廣域網(wǎng)IP及局域網(wǎng)IP信息,那么服務(wù)器為所述UPnP設(shè)備分配存儲(chǔ)空間并存儲(chǔ)所述UPnP設(shè)備的廣域網(wǎng)IP、局域網(wǎng)IP及設(shè)備標(biāo)識(shí)。如果已經(jīng)存儲(chǔ)廣域網(wǎng)IP及局域網(wǎng)IP信息,那么采用本次上報(bào)的廣域網(wǎng)IP及局域網(wǎng)IP更新已經(jīng)存儲(chǔ)的廣域網(wǎng)IP及局域網(wǎng)IP。這樣一方面可以節(jié)約服務(wù)器的存儲(chǔ)空間。另一方面可以避免服務(wù)器內(nèi)存儲(chǔ)多個(gè)UPnP設(shè)備的廣域網(wǎng)IP及局域網(wǎng)IP,從而無(wú)法確定哪個(gè)是當(dāng)前使用的廣域網(wǎng)IP及局域網(wǎng)IP的問(wèn)題。
[0029]S2、當(dāng)訪問(wèn)設(shè)備訪問(wèn)所述UPnP設(shè)備時(shí),所述訪問(wèn)設(shè)備從所述服務(wù)器獲取所述UPnP設(shè)備對(duì)應(yīng)的廣域網(wǎng)IP及局域網(wǎng)IP。
[0030]具體地,所述訪問(wèn)設(shè)備訪問(wèn)所述UPnP設(shè)備時(shí),可以先獲取所述UPnP設(shè)備的設(shè)備標(biāo)識(shí)。其可以通過(guò)預(yù)先將所述訪問(wèn)設(shè)備與所述UPnP設(shè)備進(jìn)行關(guān)聯(lián)的方式獲取設(shè)備標(biāo)識(shí)。在實(shí)際應(yīng)用中,兩者可以通過(guò)藍(lán)牙等方法先建立連接,之后獲取UPnP設(shè)備的設(shè)備標(biāo)識(shí)。所述訪問(wèn)設(shè)備獲取所述UPnP設(shè)備的設(shè)備標(biāo)識(shí)后,根據(jù)所述設(shè)備標(biāo)識(shí)從所述服務(wù)器獲取所述UPnP設(shè)備對(duì)應(yīng)的廣域網(wǎng)IP及局域網(wǎng)IP。
[0031]在一個(gè)實(shí)施例中,所述步驟S2可以包括:
521、當(dāng)訪問(wèn)設(shè)備訪問(wèn)所述UPnP設(shè)備時(shí),所述訪問(wèn)設(shè)備獲取所述UPnP設(shè)備的設(shè)備標(biāo)識(shí),并根據(jù)所述設(shè)備標(biāo)識(shí)向服務(wù)器發(fā)送獲取所述設(shè)備標(biāo)識(shí)對(duì)應(yīng)的廣域網(wǎng)IP及局域網(wǎng)IP的請(qǐng)求;
522、所述服務(wù)器接收所述請(qǐng)求,并根據(jù)所述設(shè)備標(biāo)識(shí)查找其對(duì)應(yīng)的廣域網(wǎng)IP及局域網(wǎng)
IP;
523、當(dāng)所述服務(wù)器查找到所述設(shè)備標(biāo)識(shí)對(duì)應(yīng)的廣域網(wǎng)IP及局域網(wǎng)IP時(shí),將所述廣域網(wǎng)IP及局域網(wǎng)IP反饋給所述訪問(wèn)設(shè)備。
[0032]具體地,所述訪問(wèn)設(shè)備可以通過(guò)藍(lán)牙等方式從服務(wù)器獲取設(shè)備標(biāo)識(shí)對(duì)應(yīng)的廣域網(wǎng)IP及局域網(wǎng)IP。
[0033]S3、所述訪問(wèn)設(shè)備根據(jù)UPnP設(shè)備的廣域網(wǎng)IP及局域網(wǎng)IP分別向所述UPnP設(shè)備發(fā)送HTTP請(qǐng)求,并監(jiān)聽(tīng)所述廣域網(wǎng)IP請(qǐng)求及局域網(wǎng)IP請(qǐng)求的反饋信息。
[0034]具體地,所述訪問(wèn)設(shè)備根據(jù)UPnP設(shè)備的廣域網(wǎng)IP及局域網(wǎng)IP分別向所述UPnP設(shè)備發(fā)送HTTP請(qǐng)求可通過(guò)如下過(guò)程實(shí)現(xiàn):
當(dāng)所述訪問(wèn)設(shè)備獲取UPnP設(shè)備的廣域網(wǎng)IP及局域網(wǎng)IP后,訪問(wèn)設(shè)備創(chuàng)建子線程A和子線程B;并通過(guò)子線程A向UPnP設(shè)備的廣域網(wǎng)IP發(fā)送一個(gè)HTTP請(qǐng)求,通過(guò)子線程B向UPnP設(shè)備局域網(wǎng)IP發(fā)送一個(gè)HTTP請(qǐng)求。其中,所述訪問(wèn)設(shè)備同時(shí)創(chuàng)建子線程A和子線程B,并同時(shí)向UPnP設(shè)備的廣域網(wǎng)IP和局域網(wǎng)IP發(fā)送通過(guò)子線程A和子線程B發(fā)送HTTP請(qǐng)求。
[0035]進(jìn)一步,當(dāng)訪問(wèn)設(shè)備通過(guò)子線程A和子線程B同時(shí)向UPnP設(shè)備局的廣域網(wǎng)IP及局域網(wǎng)IP發(fā)送請(qǐng)求后,訪問(wèn)設(shè)備監(jiān)聽(tīng)所述請(qǐng)求的反饋信息。在實(shí)際應(yīng)用中,訪問(wèn)設(shè)備通過(guò)子線程A和子線程B同時(shí)向UPnP設(shè)備局的廣域網(wǎng)IP及局域網(wǎng)IP發(fā)送請(qǐng)求的同時(shí),其啟動(dòng)用于判斷是否監(jiān)聽(tīng)到反饋信息的定時(shí)器,所述定時(shí)器設(shè)置第一預(yù)定時(shí)間。其中,第一預(yù)定時(shí)間為預(yù)先設(shè)定的,其可以是訪問(wèn)設(shè)備預(yù)先設(shè)定的,也可以是用戶自行設(shè)定。其可以為30秒、40秒等。
[0036]進(jìn)一步,所述UPnP設(shè)備若接收到所述子線程A及子線程B的請(qǐng)求,UPnP設(shè)備分別對(duì)子線程A及子線程B反饋。即向訪問(wèn)設(shè)備發(fā)送子線程A及子線程B的反饋信息。這里,UPnP設(shè)備對(duì)子線程A及子線程B發(fā)送的反饋信息。
[0037]S4、若所述訪問(wèn)設(shè)備第一預(yù)定時(shí)間內(nèi)監(jiān)聽(tīng)到所述局域網(wǎng)IP請(qǐng)求的反饋信息,則所述訪問(wèn)設(shè)備將所述UPnP設(shè)備的局域網(wǎng)IP設(shè)置為默認(rèn)IP,并與所述UPnP設(shè)備建立連接。
[0038]具體地,在第一預(yù)定時(shí)間內(nèi),所述訪問(wèn)設(shè)備可能監(jiān)聽(tīng)到UPnP設(shè)備通過(guò)子線程A對(duì)UPnP設(shè)備廣域網(wǎng)IP發(fā)送請(qǐng)求的反饋信息,也可能接收到UPnP設(shè)備通過(guò)子線程B對(duì)UPnP設(shè)備局域網(wǎng)IP發(fā)送請(qǐng)求的反饋信息。所述訪問(wèn)設(shè)備先判斷是否接聽(tīng)到子線程B的反饋信息,若在第一預(yù)定時(shí)間內(nèi)監(jiān)聽(tīng)到子線程B的反饋信息,那么無(wú)論子線程A是否收到UPnP設(shè)備返回的消息,訪問(wèn)設(shè)備都將UPnP設(shè)備默認(rèn)訪問(wèn)IP設(shè)置為局域網(wǎng)IP。
[0039]進(jìn)一步,若在第一預(yù)定時(shí)間內(nèi)未監(jiān)聽(tīng)到子線程B的反饋信息,那么訪問(wèn)設(shè)備檢測(cè)在所述第一預(yù)定時(shí)間內(nèi)是否監(jiān)聽(tīng)到子線程A的反饋信息;若監(jiān)聽(tīng)到子線程A的反饋信息,則所述訪問(wèn)設(shè)備將所述UPnP設(shè)備的廣域網(wǎng)IP設(shè)置為默認(rèn)IP,并與所述UPnP設(shè)備建立連接。如果所述訪問(wèn)設(shè)備在所述第一預(yù)定時(shí)間內(nèi)未監(jiān)聽(tīng)到子線程A及子線程B的反饋信息,則所述訪問(wèn)設(shè)備與所述UPnP設(shè)備連接失敗。
[0040]進(jìn)一步,當(dāng)訪問(wèn)設(shè)備與所述UPnP設(shè)備連接失敗時(shí),訪問(wèn)設(shè)備可以提示用戶連接失敗。在實(shí)際應(yīng)用中,可以通過(guò)響鈴、震動(dòng)等方式提示用戶。
[0041]為了進(jìn)一步理解所述UPnP設(shè)備遠(yuǎn)程互連方法,下面結(jié)合幾個(gè)具體實(shí)施加以說(shuō)明。
[0042]實(shí)施例一
一種UPnP設(shè)備遠(yuǎn)程互連方法,應(yīng)用于同一局域網(wǎng)內(nèi)的訪問(wèn)設(shè)備與UPnP的第一連接,如圖2所示,其包括:
A10、所述UPnP設(shè)備啟動(dòng),并上報(bào)廣域網(wǎng)IP和局域網(wǎng)IP到服務(wù)器。
[0043 ] A20、所述訪問(wèn)設(shè)備準(zhǔn)備訪問(wèn)UPnP設(shè)備時(shí),從服務(wù)器獲取UPnP設(shè)備的廣域網(wǎng)IP和局域網(wǎng)IP。
[0044]A30、所述訪問(wèn)設(shè)備獲取所述UPnP設(shè)備的廣域網(wǎng)IP和局域網(wǎng)IP后,同時(shí)創(chuàng)建子線程A和子線程B,并分別通過(guò)子線程A向UPnP設(shè)備的廣域網(wǎng)IP發(fā)送一個(gè)HTTP請(qǐng)求,通過(guò)子線程B向UPnP設(shè)備的局域網(wǎng)IP發(fā)送一個(gè)HTTP請(qǐng)求。
[0045]A40、若訪問(wèn)設(shè)備的子線程B在第一預(yù)定時(shí)間內(nèi)收到UPnP設(shè)備返回的消息,則將UPnP設(shè)備默認(rèn)訪問(wèn)IP設(shè)置為局域網(wǎng)IP。
[0046]A50、若訪問(wèn)設(shè)備的子線程B在第一預(yù)定時(shí)間內(nèi)未收到UPnP設(shè)備返回的消息,而訪問(wèn)設(shè)備的子線程A在第一預(yù)定時(shí)間內(nèi)收到UPnP設(shè)備返回的消息則將UPnP設(shè)備默認(rèn)訪問(wèn)IP設(shè)置為廣域網(wǎng)IP。
[0047]A60、若訪問(wèn)設(shè)備的子線程A和子線程B在第一預(yù)定時(shí)間內(nèi)都未收到UPnP設(shè)備返回的消息,則判斷連接失敗。
[0048]實(shí)施例二
一種UPnP設(shè)備遠(yuǎn)程互連方法,其應(yīng)用于訪問(wèn)設(shè)備與所述UPnP設(shè)備已經(jīng)建立連接,且所述訪問(wèn)設(shè)備改變網(wǎng)絡(luò)環(huán)境,首先采用局域網(wǎng)IP發(fā)送請(qǐng)求,驗(yàn)證是否在同一局域網(wǎng),若請(qǐng)求失敗,則采用廣域網(wǎng)IP通信。如圖3所示,其包括:
BlO、所述訪問(wèn)設(shè)備采用已獲取的UPnP設(shè)備的局域網(wǎng)IP向所述UPnP設(shè)備發(fā)送HTTP請(qǐng)求,并監(jiān)聽(tīng)所述請(qǐng)求的反饋信息;
B20、若在所述第一預(yù)定時(shí)間內(nèi)監(jiān)聽(tīng)到所述請(qǐng)求的反饋信息,則采用所述UPnP設(shè)備的局域網(wǎng)IP繼續(xù)通信;
B30、若在所述第一預(yù)定時(shí)間內(nèi)未監(jiān)聽(tīng)到所述請(qǐng)求的反饋信息,則將所述UPnP設(shè)備的默認(rèn)IP設(shè)置為廣域網(wǎng)IP。
[0049] 實(shí)施例三
一種UPnP設(shè)備遠(yuǎn)程互連方法,訪問(wèn)設(shè)備通過(guò)UPnP設(shè)備廣域網(wǎng)IP與UPnP設(shè)備建立連接后,若利用已經(jīng)獲取的UPnP設(shè)備廣域網(wǎng)IP向UPnP設(shè)備發(fā)送HTTP請(qǐng)求之后無(wú)法得到UPnP設(shè)備的響應(yīng),則主動(dòng)改成UPnP設(shè)備局域網(wǎng)IP進(jìn)行訪問(wèn),如圖4所示,其具體過(guò)程如下:
ClO、所述訪問(wèn)設(shè)備通過(guò)UPnP設(shè)備廣域網(wǎng)IP向其發(fā)送HTTP請(qǐng)求未得到響應(yīng)。
[0050 ] C20、所述訪問(wèn)設(shè)備用已獲取的UPnP設(shè)備局域網(wǎng)IP向其發(fā)送HTTP請(qǐng)求。
[0051]C30、若所述訪問(wèn)設(shè)備在第一預(yù)定時(shí)間段內(nèi)未到UPnP設(shè)備返回的消息,則判斷連接超時(shí)。
[0052]C40、若所述訪問(wèn)設(shè)備成功收到UPnP設(shè)備返回的消息,則將UPnP設(shè)備默認(rèn)IP改為UPnP設(shè)備局域網(wǎng)IP。
[0053]實(shí)施例四
一種UPnP設(shè)備