一種多屏互動設(shè)備管理方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明適用于多媒體【技術(shù)領(lǐng)域】,提供了一種多屏互動設(shè)備管理方法及系統(tǒng)。本發(fā)明中,控制點啟動后啟動預(yù)先創(chuàng)建的設(shè)備檢測子線程,通過設(shè)備檢測子線程周期性遍歷訪問設(shè)備列表中的設(shè)備的描述信息,如果設(shè)備沒有響應(yīng)或者有錯誤響應(yīng),則將沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備從設(shè)備列表中刪除,若沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備是正在與客戶端連接操作的設(shè)備,則結(jié)束操作,并提示客戶端所述沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備已下線,實現(xiàn)了不管設(shè)備正常、異常離線,控制點都能及時的了解設(shè)備狀態(tài),如果客戶端用戶正在和已離線的設(shè)備互動,就可以及時的提醒用戶設(shè)備離線,避免了異常的問題出現(xiàn)。
【專利說明】一種多屏互動設(shè)備管理方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于多媒體【技術(shù)領(lǐng)域】,尤其涉及一種多屏互動設(shè)備管理方法。
【背景技術(shù)】
[0002]多屏互動應(yīng)用是目前智能電視常用的一種互動類應(yīng)用,即多個屏幕之間互相控制和互相分享數(shù)據(jù)。多屏互動可以實現(xiàn)在不同平臺的不同多媒體終端上,進行多媒體(音頻,視頻,圖片)內(nèi)容的傳輸,解析,展示,控制等一系列操作,豐富用戶的多媒體生活。多屏互動的交互協(xié)議基本上采用的是UPnP (Universal Plug and Play,通用即插即用)協(xié)議,用于實現(xiàn)設(shè)備發(fā)現(xiàn)和媒體分享等功能。UPnP定義了設(shè)備之間、設(shè)備和控制點、控制點之間的通訊協(xié)議。多屏互動應(yīng)用主要用到了控制點和設(shè)備之間的通訊協(xié)議。多屏互動移動客戶端實現(xiàn)的是UPnP控制點的功能,電視端實現(xiàn)的是UPnP設(shè)備的功能(服務(wù)設(shè)備或呈現(xiàn)設(shè)備)。
[0003]一旦控制點和設(shè)備位于同一個局域網(wǎng)絡(luò)中,控制點就可以發(fā)現(xiàn)感興趣的設(shè)備,并獲取設(shè)備的描述信息(即描述設(shè)備的所具有的能力的信息)??刂泣c也可以查詢當前局域網(wǎng)中的所有設(shè)備,偵聽設(shè)備狀態(tài),并將設(shè)備信息展示給用戶。如果一個設(shè)備加入到網(wǎng)絡(luò)中時,該設(shè)備會向網(wǎng)絡(luò)上的控制點告知它的存在和提供的服務(wù),離開網(wǎng)絡(luò)時告知控制點他要離開了。但是當設(shè)備異常離開網(wǎng)絡(luò)時,比如斷電,沒有來得及發(fā)送離線通知,就已經(jīng)離開了網(wǎng)絡(luò),控制點就無法及時知道這種情況的設(shè)備離開。比如用戶在使用多屏互動應(yīng)用的過程中,對于電視的關(guān)閉一般就是直接斷電,POWER電源按鍵斷電或者直接切斷電源(不像PC有個關(guān)機系統(tǒng),慢慢的關(guān)機)。這樣就會出現(xiàn),電視已經(jīng)斷電關(guān)閉了,多屏互動的移動客戶端還在顯示這個設(shè)備存在的錯誤現(xiàn)象,或者如果客戶端正在和這個設(shè)備進行互動操作,會造成操作的一些異?,F(xiàn)象。
[0004]此外,目前多屏互動的設(shè)備管理實現(xiàn)方法是手動的。應(yīng)用啟動時,需要用戶去設(shè)置中手動刷新設(shè)備列表,查找一遍局域網(wǎng)中的設(shè)備,然后選擇一個設(shè)備連接使用。查找時,先清空設(shè)備列表,然后向局域網(wǎng)中發(fā)送查找請求,等待設(shè)備響應(yīng)一段時間,等待時間結(jié)束后,顯示查找到的設(shè)備。等待時間內(nèi),如果網(wǎng)絡(luò)環(huán)境比較差或者報文阻塞,設(shè)備沒有及時的發(fā)出響應(yīng),或者控制點沒有及時的收到某個設(shè)備的響應(yīng)信息,就會造成控制點查詢不到設(shè)備的情況;而且手動操作不方便使用,需要用戶學(xué)習(xí),影響用戶的使用體驗。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的目的在于提供一種通過檢測子線程周期性檢測設(shè)備列表中的設(shè)備從而獲取設(shè)備信息的多屏互動設(shè)備管理方法,旨在解決現(xiàn)有的多屏互動設(shè)備管理方法當設(shè)備異常離開網(wǎng)絡(luò)時無法及時知道設(shè)備離線從而造成客戶端顯示錯誤及操作異常的問題。
[0006]本發(fā)明提供了一種多屏互動設(shè)備管理方法,包括:
[0007]當控制點啟動后,啟動設(shè)備檢測子線程,所述設(shè)備檢測子線程是預(yù)先創(chuàng)建的;
[0008]通過所述設(shè)備檢測子線程周期性遍歷訪問設(shè)備列表中的設(shè)備的描述信息,如果設(shè)備沒有響應(yīng)或者有錯誤響應(yīng),則將沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備從設(shè)備列表中刪除;[0009]若所述沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備是正在與客戶端連接操作的設(shè)備,則結(jié)束操作,并提示客戶端所述沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備已下線。
[0010]進一步,為了解決手動多屏互動的設(shè)備管理方法由于等待時間內(nèi)網(wǎng)絡(luò)環(huán)境比較差或者報文阻塞,設(shè)備沒有及時的發(fā)出響應(yīng),或者控制點沒有及時的收到某個設(shè)備的響應(yīng)信息,就會造成控制點查詢不到設(shè)備的問題以及手動操作不方便使用的問題,本發(fā)明提供的一種多屏互動設(shè)備管理方法,還包括:
[0011]當控制點啟動時或設(shè)備列表的設(shè)備為空時,啟動設(shè)備查詢子線程,所述設(shè)備查詢子線程是預(yù)先創(chuàng)建的;
[0012]通過所述設(shè)備查詢子線程查詢設(shè)備,如果有設(shè)備響應(yīng)且響應(yīng)設(shè)備不在設(shè)備列表中,則將響應(yīng)設(shè)備添加到設(shè)備列表中,若響應(yīng)設(shè)備已經(jīng)在設(shè)備列表中則更新響應(yīng)設(shè)備的信息;如果第一時間段內(nèi)沒有查詢到任何設(shè)備,則進行再次查詢,直到查詢到設(shè)備為止。
[0013]本發(fā)明還提供了一種多屏互動設(shè)備管理系統(tǒng),包括:
[0014]第一創(chuàng)建模塊,用于創(chuàng)建設(shè)備檢測子線程;
[0015]第一啟動模塊,用于當控制點啟動后,啟動設(shè)備檢測子線程,通過所述設(shè)備檢測子線程周期性遍歷訪問設(shè)備列表中的設(shè)備的描述信息;
[0016]第一刪除模塊,用于當所述設(shè)備檢測子線程周期性遍歷訪問設(shè)備列表中的設(shè)備的描述信息時,如果設(shè)備沒有響應(yīng)或者有錯誤響應(yīng),則將沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備從設(shè)備列表中刪除;
[0017]結(jié)束提示模塊,用于若所述沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備是正在與客戶端連接操作的設(shè)備,則結(jié)束操作,并提示客戶端所述沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備已下線。
[0018]進一步的,所述多屏互動設(shè)備管理系統(tǒng),還包括:
[0019]第二創(chuàng)建模塊,用于創(chuàng)建設(shè)備查詢子線程;
[0020]第二啟動模塊,用于當控制點啟動時或設(shè)備列表的設(shè)備為空時,啟動設(shè)備查詢子線程,通過所述設(shè)備查詢子線程查詢設(shè)備,如果第一時間段內(nèi)沒有查詢到任何設(shè)備,則進行再次查詢,直到查詢到設(shè)備為止;
[0021]第一添加模塊,用于當所述設(shè)備查詢子線程查詢設(shè)備時,如果有設(shè)備響應(yīng)且響應(yīng)設(shè)備不在設(shè)備列表中,則將響應(yīng)設(shè)備添加到設(shè)備列表中;
[0022]更新模塊,用于當所述設(shè)備查詢子線程查詢設(shè)備時,如果有設(shè)備響應(yīng)且響應(yīng)設(shè)備已經(jīng)在設(shè)備列表中,更新響應(yīng)設(shè)備的信息。
[0023]本發(fā)明中,在控制點啟動后啟動預(yù)先創(chuàng)建的設(shè)備檢測子線程,通過設(shè)備檢測子線程周期性遍歷訪問設(shè)備列表中的設(shè)備的描述信息,如果設(shè)備沒有響應(yīng)或者有錯誤響應(yīng),則將沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備從設(shè)備列表中刪除,若沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備是正在與客戶端連接操作的設(shè)備,則結(jié)束操作,并提示客戶端所述沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備已下線,實現(xiàn)了不管設(shè)備正常、異常離線,控制點都能及時的了解設(shè)備狀態(tài),如果客戶端用戶正在和已離線的設(shè)備互動,就可以及時的提醒用戶設(shè)備離線,避免了異常的問題出現(xiàn)。
【專利附圖】
【附圖說明】
[0024]圖1是本發(fā)明實施例提供的多屏互動設(shè)備管理方法的實現(xiàn)流程圖;[0025]圖2是本發(fā)明實施例提供的多屏互動設(shè)備管理方法中設(shè)備查詢子線程查詢設(shè)備的實現(xiàn)流程圖;
[0026]圖3是本發(fā)明實施例提供的多屏互動設(shè)備管理方法中設(shè)備監(jiān)聽子線程監(jiān)聽上線信息和離線信息的實現(xiàn)流程圖;
[0027]圖4是本發(fā)明實施例提供的多屏互動設(shè)備管理系統(tǒng)的結(jié)構(gòu)框圖;
[0028]圖5是圖4中第一刪除模塊、第一添加模塊、第二添加模塊以及第二刪除模塊的結(jié)構(gòu)框圖。
【具體實施方式】
[0029]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進行進一步詳細說明。應(yīng)當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0030]圖1示出了本發(fā)明實施例提供的一種多屏互動設(shè)備管理方法的實現(xiàn)流程,詳述如下:
[0031]步驟101、當控制點啟動后,啟動設(shè)備檢測子線程,該設(shè)備檢測子線程是預(yù)先創(chuàng)建的。
[0032]本發(fā)明實施例在UPnP協(xié)議標準的設(shè)備管理的基礎(chǔ)上,當控制點啟動時,在控制點主線程下預(yù)先創(chuàng)建設(shè)備檢測子線程。當控制點啟動后,如果設(shè)備列表中有至少一個設(shè)備時,啟動設(shè)備檢測子線程。
[0033]步驟102、通過上述設(shè)備檢測子線程周期性遍歷訪問設(shè)備列表中的設(shè)備的描述信息,如果設(shè)備沒有響應(yīng)或者有錯誤響應(yīng),則將沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備從設(shè)備列表中刪除。
[0034]具體的,設(shè)備檢測子線程每隔一段時間,遍歷的訪問設(shè)備列表中的設(shè)備的描述信息,描述信息即描述設(shè)備的所具有的能力的信息,如果設(shè)備在線會立即回復(fù)控制點;如果IP在,但設(shè)備離線,也會立即回復(fù)控制點一個出錯的信息;如果IP不在了(顯然設(shè)備也不在了),就沒有響應(yīng)。也就是說,設(shè)備檢測子線程訪問設(shè)備列表中的設(shè)備描述信息時,如果設(shè)備有正確的響應(yīng),說明設(shè)備在線。如果有錯誤的響應(yīng),說明IP存在,但設(shè)備已離線;如果沒有響應(yīng),說明設(shè)備的IP已經(jīng)斷開,設(shè)備也就離線了。設(shè)備離線后,將設(shè)備包括有錯誤響應(yīng)的設(shè)備和沒有響應(yīng)的設(shè)備,從控制點設(shè)備列表中刪除,上述一段時間可以根據(jù)需要進行設(shè)定,t匕如2秒鐘或者5秒鐘等等。
[0035]進一步的,通常多個線程訪問同一個設(shè)備列表,有刪除設(shè)備的,有添加設(shè)備的,就有可能會沖突。為了解決這一問題,本發(fā)明實施例中,采用加鎖的方式進行刪除,將沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備從設(shè)備列表中刪除,具體為:先獲取設(shè)備列表的數(shù)據(jù),并鎖住設(shè)備列表的數(shù)據(jù),然后從設(shè)備列表中刪除沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備,刪除任務(wù)完成后再解鎖被鎖住的設(shè)備列表的數(shù)據(jù)。這樣通過加鎖解鎖的處理,同一時間只能有一個線程在修改設(shè)備列表中的數(shù)據(jù),所以可以保證設(shè)備列表數(shù)據(jù)的一致性。
[0036]步驟103、若上述沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備是正在與客戶端連接操作的設(shè)備,則結(jié)束操作,并提示客戶端所述沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備已下線。
[0037]如果有錯誤響應(yīng)的設(shè)備和沒有響應(yīng)的設(shè)備是用戶正在連接操作的設(shè)備,結(jié)束操作,提示用戶設(shè)備已下線,請選擇其他的設(shè)備繼續(xù)使用。
[0038]本發(fā)明實施例中,通過設(shè)備檢測子線程自動檢測設(shè)備離線情況,可以實現(xiàn)不管設(shè)備正常、異常離線,都能及時的了解設(shè)備狀態(tài),如果客戶端用戶正在和已離線的設(shè)備互動,就可以及時的提醒用戶設(shè)備離線,避免異常的問題出現(xiàn),及時提醒用戶,增強了用戶使用體驗感。
[0039]進一步,為了解決手動多屏互動的設(shè)備管理方法由于等待時間內(nèi)網(wǎng)絡(luò)環(huán)境比較差或者報文阻塞,設(shè)備沒有及時發(fā)出響應(yīng),或者控制點沒有及時收到某個設(shè)備的響應(yīng)信息,就會造成控制點查詢不到設(shè)備的問題以及手動操作不方便使用的問題,本發(fā)明實施例一提供的一種多屏互動設(shè)備管理方法,還包括通過設(shè)備查詢子線程查詢設(shè)備,圖2為設(shè)備查詢子線程查詢設(shè)備實現(xiàn)流程圖。本發(fā)明實施例結(jié)合附圖2對設(shè)備查詢子線程查詢設(shè)備,做以下詳細描述:
[0040]步驟201、當控制點啟動時或設(shè)備列表的設(shè)備為空時,啟動設(shè)備查詢子線程,該設(shè)備查詢子線程是預(yù)先創(chuàng)建的。
[0041]本發(fā)明實施例在UPnP協(xié)議標準的設(shè)備管理的基礎(chǔ)上,當控制點啟動時,在控制點主線程下預(yù)先創(chuàng)建設(shè)備查詢子線程。當控制點啟動時或設(shè)備列表的設(shè)備為空時,啟動設(shè)備查詢子線程。
[0042]步驟202、通過上述設(shè)備查詢子線程查詢設(shè)備,如果有設(shè)備響應(yīng)且響應(yīng)設(shè)備不在設(shè)備列表中,則將響應(yīng)設(shè)備添加到設(shè)備列表中,若響應(yīng)設(shè)備已經(jīng)在設(shè)備列表中則更新響應(yīng)設(shè)備的信息;如果第一時間段內(nèi)沒有查詢到任何設(shè)備,則進行再次查詢,直到查詢到設(shè)備為止。
[0043]設(shè)備查詢子線程查詢局域網(wǎng)中的所有設(shè)備,將查詢響應(yīng)的設(shè)備添加到設(shè)備列表中,并記憶性連接上次連接過的設(shè)備。同樣的,為了避免多個線程同時修改同一個設(shè)備列表數(shù)據(jù),即同一時刻有可能多個線程從設(shè)備列表中刪除設(shè)備,另外又可能有一個或者多個線程又往設(shè)備列表中添加設(shè)備,從而造成多線程修改同一內(nèi)存數(shù)據(jù)的沖突。本發(fā)明實施例中,采用加鎖的方式進行數(shù)據(jù)保護,具體為:線程先獲取設(shè)備列表的數(shù)據(jù),并鎖住設(shè)備列表的數(shù)據(jù),然后將響應(yīng)設(shè)備添加到設(shè)備列表中,添加任務(wù)完成后再解鎖鎖住的設(shè)備列表的數(shù)據(jù)。這樣通過加鎖解鎖的處理,同一時間只能有一個線程在修改設(shè)備列表中的數(shù)據(jù),所以可以保證設(shè)備列表數(shù)據(jù)的一致性。
[0044]如果第一時間段內(nèi)(比如10秒鐘內(nèi))沒有查詢到任何設(shè)備,會再次發(fā)送查詢命令,直到有設(shè)備被查詢到為止。且設(shè)備查詢子線程第一時間段結(jié)束后,仍然繼續(xù)監(jiān)聽設(shè)備查詢響應(yīng)信息,收到新的設(shè)備響應(yīng)信息后會將其加入到設(shè)備列表中。如果只查詢到一臺設(shè)備,就直接連接該設(shè)備,供用戶使用;如果查詢到多臺設(shè)備,優(yōu)先連接上次連接的設(shè)備,供用戶使用;上次無連接或者上次連接的設(shè)備不在設(shè)備列表中,可以任意選擇設(shè)備進行連接,也可以彈出設(shè)備選擇界面,提示用戶選一個設(shè)備使用。
[0045]本發(fā)明實施例通過設(shè)備查詢子線程,自動查詢設(shè)備,如果沒有查詢到設(shè)備會繼續(xù)查詢,這樣在網(wǎng)絡(luò)環(huán)境比較差或者報文阻塞,設(shè)備沒有及時的發(fā)出響應(yīng),或者控制點沒有及時的收到某個設(shè)備的響應(yīng)信息,控制點查詢不到設(shè)備時,會進行再次查詢,避免了查詢不到設(shè)備的情況,改善了移動客戶端控制的設(shè)備查詢效果,省去了用戶手動操作的步驟,用戶不用關(guān)心設(shè)備的查詢和連接,就可以直接進行媒體分享、互動操作等,提高了用戶使用體驗感。
[0046]進一步的,實施例一、二提供的方法還包括設(shè)備監(jiān)聽子線程監(jiān)聽上線信息和離線信息,圖3為設(shè)備監(jiān)聽子線程監(jiān)聽上線信息和離線信息的實現(xiàn)流程圖,結(jié)合附圖3本發(fā)明實施例對設(shè)備監(jiān)聽子線程監(jiān)聽上線信息和離線信息做以下詳細的描述:
[0047]步驟301、當控制點啟動后,啟動設(shè)備監(jiān)聽子線程,該設(shè)備監(jiān)聽子線程是預(yù)先創(chuàng)建的。
[0048]本發(fā)明實施例在UPnP協(xié)議標準的設(shè)備管理的基礎(chǔ)上,當控制點啟動時,在控制點主線程下預(yù)先創(chuàng)建設(shè)備監(jiān)聽子線程。當控制點啟動后,啟動設(shè)備監(jiān)聽子線程。
[0049]步驟302、通過上述設(shè)備監(jiān)聽子線程監(jiān)聽上線信息與離線信息,如果收到上線信息且所述上線信息對應(yīng)的設(shè)備不在設(shè)備列表中,則將上線信息對應(yīng)的設(shè)備添加到設(shè)備列表中;如果收到離線信息且離線信息對應(yīng)的設(shè)備在設(shè)備列表中,則將離線信息對應(yīng)的設(shè)備從設(shè)備列表中刪除。
[0050]通過設(shè)備監(jiān)聽子線程監(jiān)聽上線信息與離線信息,如果收到設(shè)備上線信息,判斷如果該設(shè)備不在控制點的設(shè)備列表中,將其加入控制點的設(shè)備列表中;如果收到設(shè)備離線信息,判斷如果該設(shè)備在控制點的設(shè)備列表中,將其從控制點的設(shè)備列表中刪除,更新設(shè)備列表信息,并通知應(yīng)用界面層。同樣的,若從設(shè)備列表中刪除的設(shè)備是正在被操作的設(shè)備,則結(jié)束操作,并提示所述用戶對應(yīng)的設(shè)備已下線。上述將上線信息對應(yīng)的設(shè)備添加到設(shè)備列表中以及將離線信息對應(yīng)的設(shè)備從設(shè)備列表中刪除,其中添加和刪除方法也是采用前述實施例一和實施例二中描述的加鎖方式進行的,具體的:先獲取設(shè)備列表的數(shù)據(jù),并鎖住設(shè)備列表的數(shù)據(jù),然后將上線信息對應(yīng)的設(shè)備添加到設(shè)備列表中或者將離線信息對應(yīng)的設(shè)備從設(shè)備列表中刪除,添加任務(wù)或刪除任務(wù)完成后再解鎖鎖住的設(shè)備列表的數(shù)據(jù)。
[0051]本發(fā)明實施例通過設(shè)備監(jiān)聽子線程實時自動監(jiān)聽或接收上線信息與離線信息,能實時發(fā)現(xiàn)上線設(shè)備和實時監(jiān)測離線設(shè)備,這樣在多屏互動設(shè)備管理中,為進一步實時了解設(shè)備動態(tài)提供了又一道保障。
[0052]需要說明的是,對于前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明,某些步驟可以采用其他順序或者同時進行。
[0053]圖4是本發(fā)明實施提供的一種多屏互動設(shè)備管理系統(tǒng)的結(jié)構(gòu)框圖,該多屏互動設(shè)備管理系統(tǒng)能實現(xiàn)前述方法實施例所述的方法。為了便于說明,僅示出了與本實施例相關(guān)的部分,參照圖4,該多屏互動設(shè)備管理系統(tǒng),包括:第一創(chuàng)建模塊401,第一啟動模塊402,第一刪除模塊403,結(jié)束提示模塊404。
[0054]第一創(chuàng)建模塊401,用于創(chuàng)建設(shè)備檢測子線程。第一啟動模塊402,用于當控制點啟動后,啟動設(shè)備檢測子線程,通過所述設(shè)備檢測子線程周期性遍歷訪問設(shè)備列表中的設(shè)備的描述信息。具體的,設(shè)備檢測子線程每隔一段時間,遍歷的訪問設(shè)備列表中的設(shè)備的描述信息,描述信息即描述設(shè)備的所具有的能力的信息,如果設(shè)備在線會立即回復(fù)控制點;如果IP在,但設(shè)備離線,也會立即回復(fù)控制點一個出錯的信息;如果IP不在了(顯然設(shè)備也不在了),就沒有響應(yīng)。也就是說,設(shè)備檢測子線程訪問設(shè)備列表中的設(shè)備時,如果設(shè)備有正確的響應(yīng),說明設(shè)備在線。否則,如果有錯誤的響應(yīng),說明IP存在,但設(shè)備已離線;沒有響應(yīng)說明設(shè)備的IP已經(jīng)斷開,設(shè)備也就離線了。設(shè)備離線后,將設(shè)備包括有錯誤響應(yīng)的設(shè)備和沒有響應(yīng)的設(shè)備,從控制點設(shè)備列表中刪除,上述一段時間可以根據(jù)需要進行設(shè)定,比如2秒鐘或者5秒鐘等等。
[0055]第一刪除模塊403,用于當所述設(shè)備檢測子線程周期性遍歷訪問設(shè)備列表中的設(shè)備的描述信息時,如果設(shè)備沒有響應(yīng)或者有錯誤響應(yīng),則將沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備從設(shè)備列表中刪除。
[0056]結(jié)束提示模塊404,用于若所述沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備是正在與客戶端連接操作的設(shè)備,則結(jié)束操作,并提示客戶端所述沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備已下線。
[0057]本發(fā)明實施例中,通過第一創(chuàng)建模塊401創(chuàng)建的設(shè)備檢測子線程自動檢測設(shè)備離線情況,可以實現(xiàn)不管設(shè)備正常、異常離線,都能及時的了解設(shè)備狀態(tài),如果客戶端用戶正在和已離線的設(shè)備互動,就可以及時的提醒用戶設(shè)備離線,避免異常的問題出現(xiàn),及時提醒用戶,增強了用戶使用體驗感。
[0058]進一步的,上述多屏互動設(shè)備管理系統(tǒng)還包括:第二創(chuàng)建模塊405、第二啟動模塊406、第一添加模塊407以及更新模塊408。
[0059]第二創(chuàng)建模塊405,用于創(chuàng)建查詢子線程;第二啟動模塊406,用于當控制點啟動時或設(shè)備列表的設(shè)備為空時,啟動查詢子線程,通過所述查詢子線程查詢設(shè)備,如果第一時間段內(nèi)沒有查詢到任何設(shè)備,則進行再次查詢,直到查詢到設(shè)備為止;第一添加模塊407,用于當所述查詢子線程查詢設(shè)備時,如果有設(shè)備響應(yīng)且響應(yīng)設(shè)備不在設(shè)備列表中,則將響應(yīng)設(shè)備添加到設(shè)備列表中;更新模塊408,用于當所述查詢子線程查詢設(shè)備時,如果有設(shè)備響應(yīng)且響應(yīng)設(shè)備已經(jīng)在設(shè)備列表中,更新響應(yīng)設(shè)備的信息。進一步的,該多屏互動設(shè)備管理系統(tǒng)還包括:連接模塊409,用于若只查詢到一臺設(shè)備,則直接連接到該設(shè)備;若查詢到多臺設(shè)備,則優(yōu)先連接上次連接的設(shè)備,上次無連接或者上次連接的設(shè)備不在設(shè)備列表中,則可以任意選擇設(shè)備進行連接。
[0060]本發(fā)明實施例通過第二創(chuàng)建模塊405創(chuàng)建的設(shè)備查詢子線程,自動查詢設(shè)備,如果沒有查詢到設(shè)備會繼續(xù)查詢,這樣在網(wǎng)絡(luò)環(huán)境比較差或者報文阻塞,設(shè)備沒有及時的發(fā)出響應(yīng),或者控制點沒有及時的收到某個設(shè)備的響應(yīng)信息,控制點查詢不到設(shè)備時,會進行再次查詢,避免了查詢不到設(shè)備的情況,改善了移動客戶端控制的設(shè)備查詢效果,省去了用戶手動操作的步驟,用戶不用關(guān)心設(shè)備的查詢連接,就可以直接進行媒體分享、互動操作等,提聞了用戶使用體驗感。
[0061]進一步的,上述多屏互動設(shè)備管理系統(tǒng)還包括:第三創(chuàng)建模塊410、第三啟動模塊411、第二添加模塊412、第二刪除模塊413。第三創(chuàng)建模塊410,用于創(chuàng)建設(shè)備監(jiān)聽子線程;第三啟動模塊411,用于當控制點啟動后,啟動設(shè)備監(jiān)聽子線程,通過所述設(shè)備監(jiān)聽子線程監(jiān)聽上線信息與離線信息;第二添加模塊412,用于當所述設(shè)備監(jiān)聽子線程監(jiān)聽上線信息與離線信息時,如果收到上線信息且所述上線信息對應(yīng)的設(shè)備不在設(shè)備列表中,則將所述上線信息對應(yīng)的設(shè)備添加到設(shè)備列表中;第二刪除模塊413,用于當所述設(shè)備監(jiān)聽子線程監(jiān)聽上線信息與離線信息時,如果收到離線信息且所述離線信息對應(yīng)的設(shè)備在設(shè)備列表中,則將所述離線信息對應(yīng)的設(shè)備從設(shè)備列表中刪除。本發(fā)明實施例通過設(shè)備監(jiān)聽子線程實時自動監(jiān)聽或接收上線信息與離線信息,這樣在多屏互動設(shè)備管理中,進一步為實時了解設(shè)備動態(tài)提供了又一道保障。
[0062]圖5是上述第一刪除模塊403、第一添加模塊407、第二添加模塊412、第二刪除模塊413的結(jié)構(gòu)框圖。
[0063]第一刪除模塊403還包括:第一獲取模塊4031、第一鎖住模塊4032、第一刪除子模塊4033以及第一解鎖模塊4034。第一獲取模塊4031用于獲取設(shè)備列表的數(shù)據(jù)。第一鎖住模塊4032,用于鎖住設(shè)備列表的數(shù)據(jù)。第一刪除子模塊4033,用于從設(shè)備列表中刪除沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備。第一解鎖模塊4034,用于刪除任務(wù)完成后解鎖被鎖住的設(shè)備列表的數(shù)據(jù)。
[0064]第一添加模塊407還包括:第二獲取模塊4071、第二鎖住模塊4072、第一添加子模塊4073、第二解鎖模塊4074。第二獲取模塊4071,用于先獲取設(shè)備列表的數(shù)據(jù);第二鎖住模塊4072,用于鎖住設(shè)備列表的數(shù)據(jù);第一添加子模塊4073,用于將響應(yīng)設(shè)備添加到設(shè)備列表中;第二解鎖模塊4074,用于添加任務(wù)完成后再解鎖鎖住的設(shè)備列表的數(shù)據(jù)。
[0065]第二添加模塊412還包括:第三獲取模塊4121、第三鎖住模塊4122、第二添加子模塊4123、第三解鎖模塊4124。第三獲取模塊4121,用于先獲取設(shè)備列表的數(shù)據(jù);第三鎖住模塊4122,用于鎖住設(shè)備列表的數(shù)據(jù);第二添加子模塊4123,用于將響應(yīng)設(shè)備添加到設(shè)備列表中;第三解鎖模塊4124,用于添加任務(wù)完成后再解鎖鎖住的設(shè)備列表的數(shù)據(jù)。
[0066]第二刪除模塊413還包括:第四獲取模塊4131、第四鎖住模塊4132、第二刪除子模塊4133以及第四解鎖模塊4134。第四獲取模塊4131用于獲取設(shè)備列表的數(shù)據(jù)。第一鎖住模塊4132,用于鎖住設(shè)備列表的數(shù)據(jù)。第一刪除子模塊4133,用于從設(shè)備列表中刪除沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備。第一解鎖模塊4134,用于刪除任務(wù)完成后解鎖被鎖住的設(shè)備列表的數(shù)據(jù)。
[0067]這樣通過加鎖解鎖的處理,同一時間只能有一個線程在修改設(shè)備列表中的數(shù)據(jù),所以可以保證設(shè)備列表數(shù)據(jù)的一致性。避免多個線程訪問同一個設(shè)備列表,有刪除設(shè)備的,有添加設(shè)備的,而有可能造成的沖突。
[0068]以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
【權(quán)利要求】
1.一種多屏互動設(shè)備管理方法,其特征在于,包括: 當控制點啟動后,啟動設(shè)備檢測子線程,所述設(shè)備檢測子線程是預(yù)先創(chuàng)建的; 通過所述設(shè)備檢測子線程周期性遍歷訪問設(shè)備列表中的設(shè)備的描述信息,如果設(shè)備沒有響應(yīng)或者有錯誤 響應(yīng),則將沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備從設(shè)備列表中刪除; 若所述沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備是正在與客戶端連接操作的設(shè)備,則結(jié)束操作,并提示客戶端所述沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備已下線。
2.如權(quán)利要求1所述的方法,其特征在于,所述的將沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備從設(shè)備列表中刪除,具體為: 先獲取設(shè)備列表的數(shù)據(jù),并鎖住設(shè)備列表的數(shù)據(jù),然后從設(shè)備列表中刪除沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備,刪除任務(wù)完成后再解鎖被鎖住的設(shè)備列表的數(shù)據(jù)。
3.如權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 當控制點啟動時或設(shè)備列表的設(shè)備為空時,啟動設(shè)備查詢子線程,所述設(shè)備查詢子線程是預(yù)先創(chuàng)建的; 通過所述設(shè)備查詢子線程查詢設(shè)備,如果有設(shè)備響應(yīng)且響應(yīng)設(shè)備不在設(shè)備列表中,則將響應(yīng)設(shè)備添加到設(shè)備列表中,若響應(yīng)設(shè)備已經(jīng)在設(shè)備列表中則更新響應(yīng)設(shè)備的信息;如果第一時間段內(nèi)沒有查詢到任何設(shè)備,則進行再次查詢,直到查詢到設(shè)備為止。
4.如權(quán)利要求3所述的方法,其特征在于,所述的將響應(yīng)設(shè)備添加到設(shè)備列表中,具體為: 先獲取設(shè)備列表的數(shù)據(jù),并鎖住設(shè)備列表的數(shù)據(jù),然后將響應(yīng)設(shè)備添加到設(shè)備列表中,添加任務(wù)完成后再解鎖被鎖住的設(shè)備列表的數(shù)據(jù)。
5.如權(quán)利要求3所述的方法,其特征在于,所述方法還包括: 若只查詢到一臺設(shè)備,則直接連接到該設(shè)備; 若查詢到多臺設(shè)備,則優(yōu)先連接上次連接的設(shè)備,上次無連接或者上次連接的設(shè)備不在設(shè)備列表中,則可以任意選擇設(shè)備進行連接。
6.如權(quán)利要求1-5之一所述的方法,其特征在于,所述方法還包括: 當控制點啟動后,啟動設(shè)備監(jiān)聽子線程,所述設(shè)備監(jiān)聽子線程是預(yù)先創(chuàng)建的; 通過所述設(shè)備監(jiān)聽子線程監(jiān)聽上線信息與離線信息,如果收到上線信息且所述上線信息對應(yīng)的設(shè)備不在設(shè)備列表中,則將所述上線信息對應(yīng)的設(shè)備添加到設(shè)備列表中;如果收到離線信息且所述離線信息對應(yīng)的設(shè)備在設(shè)備列表中,則將所述離線信息對應(yīng)的設(shè)備從設(shè)備列表中刪除。
7.一種多屏互動設(shè)備管理系統(tǒng),其特征在于,包括: 第一創(chuàng)建模塊,用于創(chuàng)建設(shè)備檢測子線程; 第一啟動模塊,用于當控制點啟動后,啟動設(shè)備檢測子線程,通過所述設(shè)備檢測子線程周期性遍歷訪問設(shè)備列表中的設(shè)備的描述信息; 第一刪除模塊,用于當所述設(shè)備檢測子線程周期性遍歷訪問設(shè)備列表中的設(shè)備的描述信息時,如果設(shè)備沒有響應(yīng)或者有錯誤響應(yīng),則將沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備從設(shè)備列表中刪除; 結(jié)束提示模塊,用于若所述沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備是正在與客戶端連接操作的設(shè)備,則結(jié)束操作,并提示客戶端所述沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備已下線。
8.如權(quán)利要求7所述的系統(tǒng),其特征在于,所述的第一刪除模塊還包括: 第一獲取模塊,用于獲取設(shè)備列表的數(shù)據(jù); 第一鎖住模塊,用于鎖住設(shè)備列表的數(shù)據(jù); 第一刪除子模塊,用于從設(shè)備列表中刪除沒有響應(yīng)或者有錯誤響應(yīng)的設(shè)備; 第一解鎖模塊,用于刪除任務(wù)完成后解鎖被鎖住的設(shè)備列表的數(shù)據(jù)。
9.如權(quán)利要求7所述的系統(tǒng),其特征在于,所述系統(tǒng)還包括: 第二創(chuàng)建模塊,用于創(chuàng)建設(shè)備查詢子線程; 第二啟動模塊,用于當控制點啟動時或設(shè)備列表的設(shè)備為空時,啟動設(shè)備查詢子線程,通過所述設(shè)備查詢子線程查詢設(shè)備,如果第一時間段內(nèi)沒有查詢到任何設(shè)備,則進行再次查詢,直到查詢到設(shè)備為止; 第一添加模塊,用于當所述設(shè)備查詢子線程查詢設(shè)備時,如果有設(shè)備響應(yīng)且響應(yīng)設(shè)備不在設(shè)備列表中,則將響應(yīng)設(shè)備添加到設(shè)備列表中; 更新模塊,用于當所述設(shè)備查詢子線程查詢設(shè)備時,如果有設(shè)備響應(yīng)且響應(yīng)設(shè)備已經(jīng)在設(shè)備列表中,更新響應(yīng)設(shè)備的信息。
10.如權(quán)利要求9所述的系統(tǒng),其特征在于,第一添加模塊,還包括: 第二獲取模塊,用于先獲取設(shè)備列表的數(shù)據(jù); 第二鎖住模塊,用于鎖住設(shè)備列表的數(shù)據(jù); 第一添加子模塊,用于將響應(yīng)設(shè)備添加到設(shè)備列表中; 第二解鎖模塊,用于添加任務(wù)完成后再解鎖鎖住的設(shè)備列表的數(shù)據(jù)。
11.如權(quán)利要求9所述的系統(tǒng),其特征在于,所述系統(tǒng)還包括: 連接模塊,用于若只查詢到一臺設(shè)備,則直接連接到該設(shè)備;若查詢到多臺設(shè)備,則優(yōu)先連接上次連接的設(shè)備,上次無連接或者上次連接的設(shè)備不在設(shè)備列表中,則可以任意選擇設(shè)備進行連接。
12.如權(quán)利要求7-11之一所述的系統(tǒng),其特征在于,所述系統(tǒng)還包括: 第三創(chuàng)建模塊,用于創(chuàng)建設(shè)備監(jiān)聽子線程; 第三啟動模塊,用于當控制點啟動后,啟動設(shè)備監(jiān)聽子線程,通過所述設(shè)備監(jiān)聽子線程監(jiān)聽上線信息與離線信息; 第二添加模塊,用于當所述設(shè)備監(jiān)聽子線程監(jiān)聽上線信息與離線信息時,如果收到上線信息且所述上線信息對應(yīng)的設(shè)備不在設(shè)備列表中,則將所述上線信息對應(yīng)的設(shè)備添加到設(shè)備列表中; 第二刪除模塊,用于當所述設(shè)備監(jiān)聽子線程監(jiān)聽上線信息與離線信息時,如果收到離線信息且所述離線信息對應(yīng)的設(shè)備在設(shè)備列表中,則將所述離線信息對應(yīng)的設(shè)備從設(shè)備列表中刪除。
【文檔編號】H04N21/442GK103702184SQ201310737492
【公開日】2014年4月2日 申請日期:2013年12月26日 優(yōu)先權(quán)日:2013年12月26日
【發(fā)明者】詹紅艷 申請人:Tcl集團股份有限公司