D可被鏈接到兩個設備(例如,計算設備102和硬件實況 小塊106),如結合圖3描述的示例中。然而,在其它示例中,可能有兩個以上的設備通過應 用ID鏈接并為同一應用顯示狀態更新信息,其中一組鏈接的設備可包括一個或多個計算 設備和一個或多個硬件實況小塊。圖4中的系統400包括三個設備,每個設備在小塊104、 116、404中顯示應用的同一狀態更新信息。這三個設備是計算設備102、硬件實況小塊106 和另外的計算設備,在此示例中是智能電話402。在此示例中,計算設備102和智能電話402 兩者已安裝應用客戶端103和403 ;然而,應用客戶端103和403可在任一或這兩個設備上 運行或關閉/睡眠。當在此系統400中代理設備118 (例如從應用服務124)接收狀態更新 信息時,它將狀態更新信息發送到三個設備102、106、402的每一個,且三個設備的每一個 與代理設備118內的同一應用ID相關聯。
[0045] 在圖4所示的系統400中,當在硬件實況小塊106接收用戶交互時(例如,如圖 3的框302),觸發信號可被發送到其它設備102、402兩者,因為它們兩者都可以被認為是 "主"設備(因為它們運行應用)并且如上面描述的,觸發信號可被直接發送(箭頭41 一 42)或經由代理設備118發送(箭頭43 - 45),且在一些情況中發送到應用服務124 (箭頭 43和46)。然而,在其它示例中,該方法可包括選擇主設備的附加操作(框308),且該選擇 操作可被硬件實況小塊106或代理設備118執行(例如,這被包括在發送觸發信號中),且 結果選擇操作可在觸發信號已經被硬件實況小塊106發送之前或之后發生。
[0046] 在第一示例中,硬件實況小塊106接收用戶輸入(框302)、標識主計算設備(框 308),并接著將觸發信號直接(箭頭41或42)或通過代理設備118 (箭頭43和44或箭頭 43和45)發送到所選主計算設備(在框304中)。在第二個示例中,硬件實況小塊106接 收用戶輸入(框302)并將觸發信號發送到代理設備118 (框304,箭頭43)。在轉發觸發信 號之前(箭頭44或45),代理設備118標識主計算設備(在框308中)。在一些實例中,代 理設備118可具有預先確定并存儲的標識與每個應用ID相關聯的主計算設備的信息(或 者例如,在如圖1中所示的系統之類的中有默認的主計算設備),或可替換地,代理設備118 可使得該確定動態地(作為框308的部分),例如,跟隨在接收觸發信號之后(箭頭43)。
[0047] 主計算設備的標識(或選擇)(在框308中)可基于許多不同因素且示例包括,但 不限于,用戶偏好(例如,用戶指定他們的哪個計算設備是"主")、用戶歷史(例如,用戶最 近使用了或最常使用哪個設備)或用戶輸入、處理能力(例如,速度/存儲器/花費)、可用 資源(例如,以處理功率、可用存儲器、電池功率等的形式)或鄰近度。鄰近度的任何評估 可涉及設備的物理位置或相對位置(例如,硬件實況小塊和候選設備之間的距離)和/或 設備的網絡連接性(例如,如果硬件實況小塊和候選設備之間有好的網絡連接性那么兩者 可被看成是接近的,其中網絡連接性可以,例如,基于等待時間、帶寬和/或花費來評估)。 將理解,在一些示例中,一個以上的這些因素可被使用,如以下參考圖5更詳細地描述的。
[0048] 圖5是示出選擇主計算設備的示例方法(例如,如圖3的框308中)的流程圖,并 且取決于特定實現(例如,取決于什么元素實現框308)這些方法可被硬件實況小塊106或 代理設備118使用。可替換地,方法內的不同操作可被不同設備執行(例如,標識設備的候 選組由代理設備118執行而從那個候選組選擇主設備由硬件實況小塊106執行)或方法內 的各操作可被一起工作的多個設備執行。
[0049] 圖5中的這兩個示例方法都包括定位一組鄰近設備(框502),其中這些鄰近設備 接近用戶交互發生的硬件實況小塊106 (即,在框302中接收用戶輸入的硬件實況小塊)且 還具有安裝了的相關應用客戶端(即,觸發信號與之相關的應用客戶端)(盡管不需要在運 行)。如上面描述的,接近度可與相對位置和/或網絡連接性相關。其中該方法在代理設 備118處被實現,具有安裝了的相關應用客戶端的那些設備可被標識為與同一應用ID相關 聯的那些設備。類似地,兼容設備(即,安裝有相關應用客戶端的那些)可被代理設備118 標識且鄰近的設備可被硬件實況小塊106標識,使得鄰近設備的位置(在框502中)被一 起工作的設備118和106兩者執行。任何合適的方法可被用來標識鄰近設備且各示例包括 (例如使用本地聯網)鄰近度檢測以及基于設備它們自己提供的位置信息的過濾。
[0050] (在框502)中標識了一組鄰近設備后,(在框504)該組設備之一可基于用戶歷史 被選為主計算設備,例如,基于用戶最近與該組中的哪個設備交互或該組中哪個設備用戶 最常與之交互等。在另一個示例方法中,從(框502中標識的)候選組對主計算設備的選 擇可基于用戶輸入。當用戶輸入被使用時,可在全部標識的鄰近設備上觸發警報(框506), 且這個警報可以采取任何形式。在一個示例中,每個鄰近設備(即,框502中標識的候選組 中的每個設備)可振動,發出聲音和/或顯示警報。這警告了可與設備之一(例如,通過在 顯示器上切換或按壓按鈕)進行交互的用戶,且主計算機基于在警報后用戶與哪個設備交 互來標識,即,主計算設備基于在一組鄰近設備之一接收到的用戶輸入來選擇(框508)。這 允許用戶選擇方便的設備在其上啟動應用任何視圖任何附加狀態信息。
[0051] 在這個方法的涉及用戶輸入的第一示例實現中,用戶所選的設備(如框508標識 的)發信號給其它鄰近設備來停止通過代理設備118蜂鳴(或以其他方式警告用戶)。在 第二示例實現中,用戶選擇的設備發信號給硬件實況小塊106,硬件實況小塊106發信號給 其它設備。在第三示例實現中,用戶選擇的設備它本身,例如通過為那個目的設置的"各方 信道"共享發信號機制,發信號給其它設備。這可以用IP多播或諸如Microsoft? Windows Azure?的云服務完成。第四示例實現可不使用發信號但替代地,其它設備僅超時。如果通 知不是永久的(例如,如果設備振動一次然后停止,而不是持續蜂鳴/發出噪音)這是合適 的。
[0052] 在參考圖4和5描述的各示例中,觸發信號可被發送(在框304中)到與應用ID相 關聯的全部設備或到所選的主計算設備,其中全部候選設備具有安裝了的應用客戶端(但 不需要運行)。然而,在進一步的示例中,設備的候選組(如框502中標識的)可被擴展以 包括當前沒有安裝應用客戶端的但是有能力安裝該應用客戶端的那些設備,例如,它們有 互聯網連接并訪問合適的應用商店或應用客戶端已經被下載到設備但還沒有安裝。在圖4 中,候選鄰近設備組可因此還包括沒有安裝應用的且當前并未顯示示出狀態更新信息的小 塊的智能電視406 (不像顯示了這樣的小塊404并且已經與代理設備118中同一應用ID相 關聯的智能電話402)。
[0053] 在此描述的交互方法,因此,可被用戶用來在新設備上(例如在大顯示器設備或 其它方便的設備上)觸發安裝和啟動應用客戶端。這個交互方法將用戶操作的數量減少到 幾個簡單交互(例如,一個在硬件實況小塊上而第二個在警報后在設備上)。
[0054] 圖6示出選擇主計算設備(例如,如圖3的框308中)的進一步的示例方法的兩個 流程圖61、62。在第一個流程圖61中,警報觸發信號由硬件實況小塊106來廣播(框602)。 當在鄰近設備接收到這個警報觸發信號時(框604),僅在應用客戶端在該鄰近設備上可用 的情況下(即,已安裝或能夠被安裝)(在框606中"是"),警報才在那個設備上被觸發(在 框610中)。然而,如果應用客戶端不可用(在框606中"否"),那么警報不被觸發且設備 不響應于接收觸發警報信號而采取任何動作(框608)。如上面描述的,(在框610觸發的) 警報可采取任何形式(例如,感觸、可聽、可視)且響應于在鄰近設備之一上接收到的用戶 輸入,那個設備被選為主計算設備(框612)
[0055] 在第二個流程圖62中,由應用服務124通知代理設備118關于多個不同平臺客戶 端的可執行文件(框620)。設備(例如圖4中的設備102、402、406)還通知代理設備118 關于它們的對發信號的可用性(框622)。在此方法中,代替獨立連接到代理設備118(以維 持打開的信道)的應用,設備上的中央軟件元素可連接到代理設備118并為運行在該設備 上的任何應用客戶端提供打開的信道。
[0056] 當在硬件實況小塊106接收到用戶交互時,硬件實況小塊106向代理設備118發 信號以通知它它已經被交互了(框624)。代理設備118接著發信號給全部兼容設備(框 626),包