背景技術(shù):
通信應(yīng)用(例如,電子郵件應(yīng)用)允許用戶通過將文件附加到信件來共享文件。然而,附加過程通常是機械的和受限的過程,其中,用戶被給予選項以瀏覽他們的計算機并且選擇文件來附加,而不提供關(guān)于文件的任何上下文信息,更不必說基于上下文信息的任何自動建議。此外,傳統(tǒng)的系統(tǒng)限于對本地或網(wǎng)絡(luò)驅(qū)動器存儲的文件的附加,并且意圖接收信件的每個接收者也可以接收到附件,而不管接收者先前是否已經(jīng)接收到文件。此外,附加過程不允許用戶基于其他規(guī)則來配置許可或設(shè)置許可。最終,傳統(tǒng)的附加過程通常是基于菜單的,并且沒有針對觸摸或姿勢輸入機制而進行優(yōu)化。
技術(shù)實現(xiàn)要素:
提供了該發(fā)明內(nèi)容以用簡化的形式引入在以下的具體實施方式中進一步描述的概念的選擇。本發(fā)明內(nèi)容并不旨在排他性地標(biāo)識所請求保護的主題的關(guān)鍵特征或本質(zhì)特征,也并不旨在幫助確定所請求保護的主題的范圍。
實施例針對在通信應(yīng)用中對基于云的和本地附件的處理,其可以包括檢測將文件附加到信件的用戶意圖、確定用戶感興趣的本地的和基于云的文件的列表、將所述本地的和基于云的文件的列表呈現(xiàn)給所述用戶以供選擇、以及在從列表中選擇了一個或多個文件之后,將所選擇的文件或者至所選擇的文件的位置的鏈接中的一個附加到信件。
根據(jù)對以下具體實施方式的閱讀和對相關(guān)聯(lián)的附圖的回顧,這些和其他特征和優(yōu)點將顯而易見。應(yīng)當(dāng)理解的是,前述一般描述和以下的詳細描述兩者都僅是解釋性的,并且不對所要求保護的方面進行限制。
附圖說明
圖1包括示出了示例基于數(shù)據(jù)中心的系統(tǒng)的概念圖,在該系統(tǒng)中,可以實現(xiàn)在通信應(yīng)用中對基于云的和本地附件的處理;
圖2包括示出了系統(tǒng)的示例架構(gòu)的概念圖,在該系統(tǒng)中,可以實現(xiàn)通信應(yīng)用中對基于云的和本地附件的處理。
圖3示出了針對在通信應(yīng)用中對基于云的和本地附件的處理的示例系統(tǒng);
圖4示出了針對在通信應(yīng)用中對基于云的和本地附件的處理的示例過程;
圖5a-圖5d示出了用于將所建議的文件列表呈現(xiàn)給用戶以供選擇的示例用戶體驗;
圖6a-圖6c示出了用于將所建議的文件列表呈現(xiàn)給用戶以供選擇的另一個示例用戶體驗;
圖7是示例通用計算設(shè)備的框圖,該計算設(shè)備可以用于在通信應(yīng)用中對基于云的和本地附件的處理;以及
圖8示出了根據(jù)實施例的在通信應(yīng)用中對基于云的和本地附件的處理的示例過程的邏輯流程圖。
具體實施方式
如在上文中簡單地描述的,響應(yīng)于檢測到將一個或多個文件附加到信件的用戶意圖,通信應(yīng)用可以被配置為確定并且給用戶提供他們可能感興趣以附加到信件并發(fā)送給其他用戶的文件的列表。例如,通信應(yīng)用可以從與用戶的應(yīng)用相關(guān)聯(lián)的一個或多個應(yīng)用程序接口(api)取回信息以確定文件的列表,其中,所述文件可以是在與用戶相關(guān)聯(lián)的計算設(shè)備處本地地儲存的文件、儲存在與用戶相關(guān)聯(lián)的網(wǎng)絡(luò)驅(qū)動器處的文件、來自社交網(wǎng)絡(luò)的文件、來自職業(yè)網(wǎng)絡(luò)的文件、來自用戶訂閱的協(xié)同服務(wù)的文件、以及其他用戶的基于云的文件??梢允褂枚喾N標(biāo)準(zhǔn)來確定文件、對文件進行分組、以及將文件呈現(xiàn)給用戶以供選擇,例如,用戶新近是否查看、修改、保存、收聽、共享、標(biāo)記(pin)、或發(fā)送了文件、以及以下各項中的一項或多項:用戶與文件交互的近況、用戶與文件交互的類型、以及文件的類型。一旦由用戶選擇,就可以將文件或者至文件的位置的鏈接附加到信件,其中,文件或鏈接可以在附件區(qū)中或信件的正文中顯示。與附件相關(guān)聯(lián)的許可可以默認地、通過用戶配置來設(shè)置,和/或由用戶來修改,并且可以在接收者接收到附件之后實施。
在以下的詳細描述中,對形成了其一部分并且其中作為說明而示出了具體的實施例或示例的附圖進行了參考??梢越M合這些方面、可以利用其他方面、并且可以做出結(jié)構(gòu)改變而不脫離本公開的精神或范圍。因此,以下的具體實施方式將不被看作是限制性意義,并且本發(fā)明的范圍是由所附權(quán)利要求及其等同物所限定的。
盡管將在結(jié)合在計算設(shè)備上的操作系統(tǒng)上運行的應(yīng)用程序而執(zhí)行的程序模塊的一般上下文中描述實施例,但本領(lǐng)域的技術(shù)人員將理解的是,也可以結(jié)合其他程序模塊來實現(xiàn)這些方面。
通常而言,程序模塊包括例程、程序、組件、數(shù)據(jù)結(jié)構(gòu)、以及執(zhí)行特定的任務(wù)或?qū)崿F(xiàn)特定的抽象數(shù)據(jù)類型的其他類型的結(jié)構(gòu)。此外,本領(lǐng)域技術(shù)人員將理解的是,可以利用包括手持設(shè)備、多處理器系統(tǒng)、基于微處理器的或可編程的消費性電子產(chǎn)品、微型計算機、大型計算機、以及類似的計算設(shè)備在內(nèi)的其他計算機系統(tǒng)配置來實踐實施例。還可以在其中由通過通信網(wǎng)絡(luò)所鏈接的遠程處理設(shè)備來執(zhí)行任務(wù)的分布式計算環(huán)境中實現(xiàn)實施例。在分布式計算環(huán)境中,程序模塊既可以位于本地的存儲器存儲設(shè)備中,也可以位于遠程的存儲器存儲設(shè)備中。
可以將實施例實現(xiàn)為計算機實施的過程(方法)、計算系統(tǒng)、或者諸如計算機程序產(chǎn)品或計算機可讀介質(zhì)之類的制品。計算機程序產(chǎn)品可以是這樣一種計算機存儲介質(zhì),其能夠由計算機系統(tǒng)讀取并且對包括用于使得計算機或計算機系統(tǒng)執(zhí)行示例過程的指令的計算機程序進行編碼。所述計算機可讀存儲介質(zhì)是計算機可讀存儲器設(shè)備。計算機可讀存儲器設(shè)備可以例如是經(jīng)由以下中的一個或多個來實現(xiàn)的:易失性計算機存儲器、非易失性存儲器、硬盤驅(qū)動器、閃速存儲器、軟盤、或者壓縮盤、以及類似的硬件介質(zhì)。
在該說明書通篇中,術(shù)語“平臺”可以是用于在通信應(yīng)用中對基于云的和本地附件進行處理的軟件和硬件組件的組合。平臺的示例包括但不限于:在多個服務(wù)器上執(zhí)行的托管服務(wù)、在單個計算設(shè)備上執(zhí)行的應(yīng)用、以及類似的系統(tǒng)。術(shù)語“服務(wù)器”通常是指通常在網(wǎng)絡(luò)化環(huán)境中執(zhí)行一個或多個軟件程序的計算設(shè)備。然而,服務(wù)器還可以被實現(xiàn)為在被視為是網(wǎng)絡(luò)上的服務(wù)器的一個或多個計算設(shè)備上執(zhí)行的虛擬服務(wù)器(軟件程序)。在下文中提供了關(guān)于這些技術(shù)和示例操作的更多的細節(jié)。
圖1包括示出了示例基于數(shù)據(jù)中心的系統(tǒng)的概念圖,在該系統(tǒng)中,可以實現(xiàn)在通信應(yīng)用中對基于云的和本地附件的處理。
如在圖100中所示出的,數(shù)據(jù)中心102可以包括作為與數(shù)據(jù)中心102的軟件和底層硬件相關(guān)聯(lián)的物理服務(wù)器的一個或多個服務(wù)器110、111、和113。所述一個或多個服務(wù)器110、111、和113可以被配置為執(zhí)行一個或多個虛擬服務(wù)器104。例如,服務(wù)器111和113可以被配置為分別提供四個虛擬服務(wù)器和兩個虛擬服務(wù)器。在一些實施例中,可以將一個或多個虛擬服務(wù)器組合成一個或多個虛擬數(shù)據(jù)中心。例如,可以將由服務(wù)器111所提供的四個虛擬服務(wù)器組合成虛擬數(shù)據(jù)中心112。虛擬服務(wù)器104和/或虛擬數(shù)據(jù)中心112可以被配置為托管多個服務(wù)器以經(jīng)由云106而向一個或多個終端用戶108(例如,個體用戶或企業(yè)客戶)提供云相關(guān)的數(shù)據(jù)/計算服務(wù),例如各種應(yīng)用、數(shù)據(jù)儲存、數(shù)據(jù)處理、或類似服務(wù)。
在示例實施例中,數(shù)據(jù)中心102可以托管被配置為以各種模態(tài)(例如,電子郵件、文本消息傳送、音頻/視頻會議、應(yīng)用共享、桌面共享等)向終端用戶108提供通信服務(wù)的通信服務(wù)??商娲?,組合服務(wù)可以例如結(jié)合通信服務(wù)來提供其他服務(wù),例如文字處理、演示、和電子表格處理。托管通信服務(wù)的數(shù)據(jù)中心102中的至少一個服務(wù)器可以被配置為執(zhí)行通信應(yīng)用,其中,通信應(yīng)用可以使得進行發(fā)送的用戶能夠以在上文中所描述的模態(tài)中的一個模態(tài)來向接收者發(fā)送信件。例如,用戶可以向一個或多個接收者發(fā)送電子郵件消息。接收者可以通過厚客戶端應(yīng)用或瘦客戶端應(yīng)用來訪問接收到的郵件。接收者可以使用本地安裝的通信應(yīng)用。另一接收者可以結(jié)合服務(wù)器側(cè)的應(yīng)用來使用客戶端版本的通信應(yīng)用。另一接收者可以使用網(wǎng)絡(luò)瀏覽器來訪問服務(wù)器側(cè)的應(yīng)用或網(wǎng)絡(luò)應(yīng)用。類似地,進行發(fā)送的用戶也可以使用通信應(yīng)用的那些可替代的實現(xiàn)中的任何一個實現(xiàn)。取決于進行發(fā)送的用戶和接收者使用哪種類型的通信應(yīng)用以及應(yīng)用的一個或多個開發(fā)者,每個應(yīng)用都可以具有相同或不同的能力。例如,在一個應(yīng)用中,電子郵件消息可以在附件區(qū)中和/或在郵件的正文中呈現(xiàn)附件,而其他電子郵件應(yīng)用僅僅能夠在電子郵件的正文中呈現(xiàn)附件。可以將諸如已發(fā)送郵件、已接收郵件、聯(lián)系人等之類的電子郵件數(shù)據(jù)存儲在與通信服務(wù)(例如,由存儲服務(wù)器所管理的)相關(guān)聯(lián)的數(shù)據(jù)存儲中。
根據(jù)實施例,在通信應(yīng)用中對基于云的和本地附件的處理可以使得通信應(yīng)用的處理模塊能夠響應(yīng)于檢測到將文件附加到信件的用戶意圖而確定用戶感興趣的文件,并且呈現(xiàn)用于附加至所準(zhǔn)備的信件的所建議的文件列表。在用戶從列表中選擇了一個或多個文件之后,附件模塊可以將所選擇的文件或者至所選擇的文件的位置的鏈接附加到信件??梢詫⒏郊@示在附件區(qū)和/或在信件的正文內(nèi)。感興趣的文件可以來自多種源,例如在用戶的計算設(shè)備處本地地儲存的文件、在用戶的網(wǎng)絡(luò)驅(qū)動器處儲存的文件、來自社交網(wǎng)絡(luò)或職業(yè)網(wǎng)絡(luò)的文件、來自用戶訂閱的協(xié)同服務(wù)的文件、以及其他基于云的文件,例如可以與用戶相關(guān)聯(lián)的其他人的文件。盡管在本文中電子郵件被用作信件的主要示例形式,但是實施例不限于電子郵件附件,并且可以以諸如文本消息傳送、在線會議、應(yīng)用共享、桌面共享、以及允許用戶共享文件的類似服務(wù)之類的其他形式來實現(xiàn)。此外,附件可以包括任何類型的文件,其包括但不限于:文本文件、圖形文件、音頻文件、視頻文件、非結(jié)構(gòu)化的數(shù)據(jù)文件、結(jié)構(gòu)化的數(shù)據(jù)文件、以及類似的文件。
如先前所討論的,用于將文件附加到信件的現(xiàn)有方法可能通常是機械和受限的過程,其中,用戶被給予選項來瀏覽他們的計算機并且選擇文件來附加,而不提供關(guān)于文件的任何上下文信息。方法還可以限于本地或網(wǎng)絡(luò)驅(qū)動器所存儲的文件,并且用戶可能不能夠配置針對附件的許可或者基于其他規(guī)則來對其進行設(shè)置。此外,傳統(tǒng)的附件過程可能通常是基于菜單的,并且沒有針對觸摸或姿勢輸入機制而進行優(yōu)化。
根據(jù)在上文中所描述的實施例,在通信應(yīng)用中對基于云的和本地附件的處理可以簡化用戶之間的通信并提高用戶之間的通信的效率。例如,用于對用戶附加的文件的智能建議可以通過以下方式來降低用戶時間、處理器負載、以及存儲器負載:減少在進行發(fā)送之前從基于云的數(shù)據(jù)存儲下載文件、由用戶檢查多種數(shù)據(jù)資源、和/或由接收者對所附加的文檔的經(jīng)更新版本進行下載。此外,在通信應(yīng)用中對基于云的和本地附件的處理可以有利地通過實現(xiàn)基于觸摸或姿勢用戶體驗的較容易的導(dǎo)航、不再限制對用戶的計算設(shè)備的附件建議、以及通過使得基于用戶的許可能夠確保附件內(nèi)容的安全等來改進可用性。
圖2包括示出了系統(tǒng)的示例架構(gòu)的概念圖,在該系統(tǒng)中,可以實現(xiàn)在通信應(yīng)用中對基于云的和本地附件的處理。如在圖200中所示出的,示例系統(tǒng)可以包括數(shù)據(jù)中心202,其托管被配置為以各種模態(tài)(例如,電子郵件、文本消息傳送、音頻/視頻會議、應(yīng)用共享、桌面共享等)向用戶提供通信服務(wù)的通信服務(wù)。數(shù)據(jù)中心202可以包括一個或多個處理服務(wù)器206,其中至少一個用于執(zhí)行通信應(yīng)用208。數(shù)據(jù)中心202還可以包括被配置為管理一個或多個數(shù)據(jù)存儲器的一個或多個存儲服務(wù)器210,所述一個或多個數(shù)據(jù)存儲包括與通信應(yīng)用208相關(guān)聯(lián)的數(shù)據(jù)。
在示例實施例中,通信應(yīng)用208可以使得進行發(fā)送的用戶212能夠發(fā)送信件224,信件224可以包括以在上文中所描述的模態(tài)中的一種模態(tài)至接收者226的具有一個或多個附件的通信。響應(yīng)于檢測到將文件附加到信件224的用戶212的意圖,通信應(yīng)用208的附件模塊可以被配置為確定進行發(fā)送的用戶212感興趣的文件。感興趣的文件可以來自多種源,例如在用戶的計算設(shè)備214處本地地存儲的文件、在用戶的網(wǎng)絡(luò)驅(qū)動器218處存儲的文件、來自社交網(wǎng)絡(luò)222或職業(yè)網(wǎng)絡(luò)220的文件、來自用戶訂閱的協(xié)同服務(wù)的文件、以及諸如可以與進行發(fā)送的用戶212相關(guān)聯(lián)的其他人的文件之類的其他基于云的文件。
接著,通信應(yīng)用208的附件模塊可以通過通信應(yīng)用208的用戶體驗或通過單獨的用戶體驗來向進行發(fā)送的用戶212呈現(xiàn)用于附加到信件224的所建議的文件列表。在示例實施例中,用戶體驗可以呈現(xiàn)進行發(fā)送的用戶212可能希望附加的感興趣的菜單列表文件。例如,所述菜單可以是下拉菜單、彈出菜單、或其他類似的菜單。如果進行發(fā)送的用戶212希望附加不在列表上的具體文件,則也可以通過用戶體驗來呈現(xiàn)瀏覽選擇。列表上的文件的源可以是本地的或基于云的、進行發(fā)送的用戶212的文件或其他用戶的文件、和/或公共文件。文件可以被選擇以用于由通信應(yīng)用208的附件模塊基于進行發(fā)送的用戶212新近是否查看、修改、保存、收聽(在音頻文件的情況下)、共享、標(biāo)記、或發(fā)送了所述文件來呈現(xiàn)。列表內(nèi)的文件的順序和/或分組可以基于相同標(biāo)準(zhǔn)以及交互的新近度、交互的類型、和文件類型。文件還可以基于默認規(guī)則、用戶配置、和/或由通信應(yīng)用208的附件模塊進行的推斷來進一步呈現(xiàn)和/或分組。在一些示例實現(xiàn)中,可以采用機器學(xué)習(xí)算法來確定進行發(fā)送的用戶212感興趣的文件(例如,用戶的團隊正在處理的文件、用戶的同事/管理者最感興趣的文件等)并對它們進行排序/分組。此外,進行發(fā)送的用戶212在不同的計算設(shè)備上新近例如查看、修改、和/或發(fā)送了的文件可以在文件池中使用以從中進行選擇,而不管實現(xiàn)跨設(shè)備支持的計算設(shè)備??梢允褂萌魏螆D形、文本、顏色、陰影、或視覺效果方案來呈現(xiàn)文件類型、源、以及列出文件的原因。
一旦進行發(fā)送的用戶212從列表中選擇了一個或多個文件,通信應(yīng)用208的附件模塊就可以將所選擇的文件或至所選擇的文件的位置的鏈接附加到信件224。附件可以包括任何類型的文件,其包括但不限于:文本文件、圖形文件、音頻文件、視頻文件、非結(jié)構(gòu)化的數(shù)據(jù)文件、結(jié)構(gòu)化的數(shù)據(jù)文件、和類似的文件。在一些實施例中,附件模塊可以基于默認規(guī)則、用戶配置、或者許可設(shè)置來附加所選擇的文件本身或者至其位置的鏈接??梢允褂梦谋竞?或圖形方案在附件區(qū)中或者在電子郵件的正文內(nèi)示出附件。方案可以包括例如圖標(biāo)和名稱。此外,也可以在附件區(qū)中呈現(xiàn)附接到信件224的鏈接。附件的表示也可以指示文件的類型和/或源。
一些文件(無論它們是本地的還是基于云的)可以與原始許可相關(guān)聯(lián),所述原始許可可以是由通信應(yīng)用208的附件模塊確定的。因此,在被附加到電子郵件之后,文件或者至這些文件的位置的鏈接也可以與針對接收者226的許可相關(guān)聯(lián)。許可可以包括但不限于查看、編輯、轉(zhuǎn)發(fā)、不轉(zhuǎn)發(fā)、保存、和不保存。對附件的許可可以被設(shè)置為與針對源文件的原始許可相同或者可以由進行發(fā)送的用戶212來修改和/或設(shè)置。例如,進行發(fā)送的用戶212可以自定義一組默認許可,以使得進行發(fā)送的用戶212不是必須要在每次他們附加文件時手動地設(shè)置許可。因此,用戶體驗可以向進行發(fā)送的用戶212呈現(xiàn)選項以設(shè)置或修改對即將附接的文件的許可。在接收到接收者226的信件224之后,許可可以被執(zhí)行和留存??商娲?,接收者226可以在轉(zhuǎn)發(fā)信件224時設(shè)置它們自己的許可。然而,接收者226僅僅可以將許可設(shè)置為與先前的許可相同的等級或者比先前的許可低的等級。例如,被標(biāo)記為僅查看的由接收者226所接收到的文件可以不由信件224的接收者226改變?yōu)榭删庉嫴⑶冶晦D(zhuǎn)發(fā)給另一接收者。
在其他實施例中,如果附件是作為鏈接而發(fā)送的基于云的文件,則對該文件的訪問可以通過接收者自己的證書(如果接收者226能夠訪問與附件相關(guān)聯(lián)的相同的云位置/服務(wù)),或者通過一次性訪客訪問。在一些示例中,在確定了接收者226是否能夠訪問與附件相關(guān)聯(lián)的云位置/服務(wù)之后,附件模塊通信應(yīng)用208可以配置該訪問。
在進一步的實施例中,本地文件可以被上傳至云并且作為云鏈接附件被發(fā)送,或者基于云的文件可以作為實際的文件而被下載并且直接發(fā)送。這可以作為選擇選項而向進行發(fā)送的用戶212呈現(xiàn)或者基于默認規(guī)則或基于用戶行為的推斷而自動地執(zhí)行。在一些實施例中,可以將本地文件異步地上傳至云。例如,以防止減少云的用戶(例如,進行發(fā)送的用戶212和接收者226)可用的帶寬的量,本地文件可以在與低數(shù)據(jù)傳輸相關(guān)聯(lián)的靜默期期間(例如,在午夜)上傳??商娲兀惒缴蟼骺梢杂蛇M行發(fā)送的用戶212來配置。不同類型的文件的附件也可以對進行發(fā)送的用戶212是完全透明的,以使得進行發(fā)送的用戶212不是必須考慮他們是直接發(fā)送本地文件還是發(fā)送至基于云的文件的鏈接。
如果附件是基于云的文件,則接收者的客戶端應(yīng)用可以被配置為在接收者226訪問附件時,取決于接收者是否在線而下載并呈現(xiàn)最新版本。如果接收者226離線,則可以示出所發(fā)送的版本。如果接收者226在線,則可以更新并示出附件。此外,如果接收者226在線,則他們可以不僅接收所附文件的最新的版本的所下載的副本,而且他們還可以具有當(dāng)他們和其他用戶都改變文件(是共同作者)(例如,如果文件是由協(xié)同服務(wù)托管的)時,實時地持續(xù)更新的文件的版本。在一些示例中,進行發(fā)送的用戶212可以決定在接收時不下載文件,而是替代地發(fā)送具有適當(dāng)?shù)脑畔⒌脑莆臋n的附件(云文件的本地副本)以連接到文檔處理服務(wù)的同步引擎中,從而當(dāng)接收者226在線時,文檔處理服務(wù)可以檢查在服務(wù)器處是否存在更新,并且因此僅向進行發(fā)送的用戶212示出文件的最新版本。
在一些實施例中,通信應(yīng)用208的附件模塊可以以與對文件進行附加并將其呈現(xiàn)給接收者的相同的方式來處理被插入到電子郵件正文中的鏈接,其中,所述鏈接指向基于云的文件。因此,通信應(yīng)用208的附件模塊可以將鏈接檢測為屬于基于云的文件,并且執(zhí)行與將本地文件或基于云的文件附加到通信中相同的過程。通過在附件文件中呈現(xiàn)基于云的文件鏈接,通信應(yīng)用208的附件模塊可以將他們作為所下載的文件來處理,以用于搜索進行發(fā)送的用戶212的郵箱或通信應(yīng)用數(shù)據(jù)。
在進一步的實施例中,如果附件包括至在附件區(qū)中所顯示的基于云的文件的位置的鏈接,并且接收者客戶端應(yīng)用中的一個或多個接收者客戶端應(yīng)用不能夠處理通過附件區(qū)而在附件中所呈現(xiàn)的至基于云的文件的鏈接,所述附件可以被呈現(xiàn)在信件224的正文內(nèi)。在另一個示例中,如果進行發(fā)送的用戶212包括具有在信件224的正文內(nèi)的基于云的文件的附件,并且接收者客戶端應(yīng)用中的一個或多個接收者客戶端應(yīng)用能夠處理鏈接并且在附件區(qū)中顯示鏈接,則接收者應(yīng)用可以在附件區(qū)和正文中顯示附件。額外地,可以將附件從信件的正文中移除,以使得附件僅僅在附件區(qū)中顯示。
如果信件224被發(fā)送給多個接收者(如在圖200中所示出的),并且接收者中的一個接收者發(fā)送全部回復(fù)的通信以添加一個或多個新的接收者,則附件可以僅僅被插入到至新的接收者的電子郵件中,而不被包括在至已經(jīng)接收到了附件的接收者的電子郵件中。從而,已經(jīng)接收到附件的接收者可以僅僅接收電子郵件的正文。
圖3示出了用于在通信應(yīng)用中對基于云的和本地附件進行處理的示例系統(tǒng)。如在圖300中所示出的,通信應(yīng)用302可以通過認證306子過程來確定與用戶相關(guān)聯(lián)的一個或多個證書。通信應(yīng)用302可以將用戶證書304提供至與用戶的一個或多個個體應(yīng)用(例如,文字處理、電子表格、演示、成像、音頻播放、視頻播放、以及記錄應(yīng)用等)相關(guān)聯(lián)的一個或多個應(yīng)用程序接口(api)308,或者從與一個或多個應(yīng)用相關(guān)聯(lián)的整合服務(wù)提供用戶證書304。api308可以聚合來自與個體的應(yīng)用相關(guān)聯(lián)的一個或多個數(shù)據(jù)存儲301的與用戶相關(guān)聯(lián)的文件,并且將文件的列表312提供至通信應(yīng)用302。
通信應(yīng)用302的附件模塊可以使用文件的列表316以確定用戶感興趣的文件,并且響應(yīng)于檢測到將文件附加到信件的用戶意圖而呈現(xiàn)所建議的文件列表以用于附加至正在準(zhǔn)備的信件。感興趣的文件可以包括本地地存儲的文件或者基于云的文件,并且可以基于進行發(fā)送的用戶新近是否例如查看、修改、保存、收聽、共享、標(biāo)記、或發(fā)送了文件來確定。在用戶從列表中選擇了一個或多個文件之后,通信應(yīng)用302的附件模塊可以將所選擇的文件或者至所選擇的文件的位置的鏈接附加到信件。如果本地地存儲的文件被選擇為附件,則所選擇的文件可以被上傳至云數(shù)據(jù)存儲或服務(wù),并且至云數(shù)據(jù)存儲或服務(wù)內(nèi)所上傳的文件的位置的鏈接可以被附加。如果基于云的文件被選擇為附件(如在圖300中所示出的),則通信應(yīng)用302可以將用戶證書304提供至所選擇的文件位于其中的云數(shù)據(jù)存儲314,以便下載所選擇的文件316并且附加到信件。額外地或可替代地,如果基于云的文件被選擇為附件(如在圖300中進一步示出的),則通信應(yīng)用302可以將用戶整數(shù)304提供至托管所選擇的文件的云服務(wù)320,以便下載至所選擇的文件的云位置的鏈接318,并且附加到信件。
在一些示例中,如果附件是基于云的文件,則通信應(yīng)用302可以被進一步配置為確定包括至所附加的文件的云位置的鏈接的信件的接收者是否具有訪問所附加的文件的位置的許可。如果所述接收者具有許可,則接收者可以使用他們自己的證書通過鏈接來訪問所附加的文件。如果接收者不具有許可,則通信應(yīng)用可以為接收者創(chuàng)建一次性訪客訪問,以通過鏈接來訪問所附加的文件。
在其他示例中,如果附件是基于云的文件,則接收者的客戶端應(yīng)用可以被配置為在接收者訪問附件時,取決于接收者是否在線而下載和呈現(xiàn)所附加的文件的最新版本。如果接收者不在線,則可以示出已發(fā)送的版本。如果接收者在線,則可以更新并示出附件。此外,如果接收者在線,則他們不但可以接收所附加的文件的最新版本的所下載的副本,而且他們還可以具有當(dāng)他們和其他用戶都改變文件時,實時地持續(xù)更新的文件的版本。例如,可以通過由云服務(wù)320的同步引擎所執(zhí)行的同步子過程322來持續(xù)地更新文件。
圖4示出了在通信應(yīng)用中對基于云的和本地附件的處理的示例過程。響應(yīng)于檢測到將文件附加到信件的用戶意圖,通信應(yīng)用的附件模塊可以被配置為確定用戶感興趣的文件,并且通過通信應(yīng)用的用戶體驗或通過分別的用戶體驗來向用戶呈現(xiàn)用于附加到信件的所建議的文件列表。
如在圖400中所示出的,用戶體驗可以呈現(xiàn)菜單402,其列出了用戶可能想要附加到信件的感興趣的文件,其中,所述菜單可以是下拉菜單、彈出菜單、或其他類似的菜單。列表上的文件的源可以是本地的404或者基于云的410,并且可以基于新近查看、修改、保存、收聽、共享、標(biāo)記、或發(fā)送的文件來選擇所述文件以用于由通信應(yīng)用呈現(xiàn)。接著,可以使得用戶能夠選擇文件中的一個或多個文件以附加到信件。如果所選擇的文件的源是本地的404,則可以從位于用戶的計算設(shè)備或網(wǎng)絡(luò)驅(qū)動器處的本地存儲文件406中取回所選擇的文件,并且將所選擇的文件附加到附件區(qū)408中的信件。在一些示例中,所選擇的文件可以被上傳至云數(shù)據(jù)存儲或服務(wù),并且至云數(shù)據(jù)存儲器或服務(wù)內(nèi)的所上傳的文件的位置的鏈接可以被附加。例如,在檢測到所選擇的文件尺寸太大而由于當(dāng)前通信服務(wù)器的限制而難以作為信件內(nèi)的本地副本來附加之后,可以將所選擇的文件上傳至云,并且可以替代地將至所上傳的文件的位置的鏈接附加到信件。在一些實施例中,可以將所選擇的文件異步地上傳至云。
如果所選擇的文件的源是基于云的410,則所選擇的文件可以例如被存儲在云存儲412中和/或由網(wǎng)絡(luò)應(yīng)用420托管。如果所選擇的文件被存儲在云存儲412中,則用戶可以將許可配置為與所選擇的用于附加的文件相關(guān)聯(lián)。例如,用戶可以選擇將僅查看許可414與所選擇的文件相關(guān)聯(lián),或者用戶可以選擇以將查看和編輯許可416與所選擇的文件相關(guān)聯(lián)。一旦許可已經(jīng)與所選擇的文件相關(guān)聯(lián),則至所選擇文件的位置的鏈接可以被插入到信件418的附件區(qū)和消息正文的一個或兩者中??商娲?,所選擇的文件可以從云存儲中下載并且作為在附件區(qū)中顯示的所選擇的文件416的本地副本來附加。
如果所選擇的文件是由網(wǎng)絡(luò)應(yīng)用420所托管的,則由網(wǎng)絡(luò)應(yīng)用所設(shè)置的默認許可422可以與所選擇的文件相關(guān)聯(lián),其中,所述許可可以包括查看、編輯、轉(zhuǎn)發(fā)、和保存中的一個或多個。在一些示例中,可以給用戶呈現(xiàn)選項以修改與所選擇的文件相關(guān)聯(lián)的默認許可。接著,可以將至所選擇的文件的位置的鏈接插入到信件424的附件區(qū)和消息正文中的一個或兩者中。可替代地,所選擇的文件可以從網(wǎng)絡(luò)應(yīng)用中下載并且作為在附件區(qū)中顯示的所選擇的文件416的本地副本來附加。
圖5a-圖5d示出了用于將所建議的文件列表呈現(xiàn)給用戶以供選擇的示例用戶體驗。如在圖5a(圖500a)中所示出的,通信應(yīng)用502可以使得用戶能夠創(chuàng)建信件并且通過一個或多個模態(tài)(例如,電子郵件、文本消息傳送、音頻/視頻會議、應(yīng)用共享、桌面共享等)向一個或多個接收者發(fā)送信件。例如,用戶可以通過所附加的文件的意圖創(chuàng)作電子郵件消息504??梢杂赏ㄐ艖?yīng)用502響應(yīng)于與在通信應(yīng)用502的用戶體驗上顯示的“附加文件”控制元素506相關(guān)聯(lián)的用戶動作508而檢測到用戶附加文件的意圖。可以將“附加文件”控制元素506顯示在用戶體驗上的各種位置中,例如工具欄、功能導(dǎo)航欄、和/或操作欄??梢酝ㄟ^觸摸輸入(如所示出的)、姿勢輸入、語音命令、眼睛追蹤、陀螺儀輸入、筆輸入、鼠標(biāo)輸入、和/或鍵盤輸入來執(zhí)行用戶動作。
在一些實施例中,“附加文件”控制元素506可以是單個控件(例如,在基于觸摸和姿勢的設(shè)備中),當(dāng)被調(diào)用時,所述單個控件可以使得菜單510被呈現(xiàn),其中,菜單510可以是下拉菜單(如所示出的)、或者是彈出菜單。菜單510可以包括被呈現(xiàn)給用戶以供選擇的感興趣的本地的和基于云的文件的列表。通信應(yīng)用的附件模塊可以被配置為基于從與用戶的一個或多個應(yīng)用相關(guān)聯(lián)的一個或多個應(yīng)用程序接口所獲得的一個或多個文件列表來確定被呈現(xiàn)給用戶以供選擇的感興趣的本地的和基于云的文件列表。感興趣的文件可以基于例如用戶新近是否查看、修改、保存、收聽、共享、標(biāo)記、或發(fā)送了它們來確定。列表中的文件的順序和/或分組可以是基于相同的標(biāo)準(zhǔn)以及交互的新近度、交互的類型、和文件的類型的。在菜單510內(nèi)所列出的每個文件都可以包括文件的名稱512、對文件的類型的指示516、和/或文件的源514。任何圖形、文本、顏色、陰影、或視覺效果方案都可用于呈現(xiàn)文件名稱、類型、和源。例如,文件的名稱512可以是以文本表示的“現(xiàn)代附件”,文件的類型516可以通過圖形圖標(biāo)來表示以指示演示文檔,并且文件的源514可以以文本表示以指示云存儲。如果用戶想要附加未在列表內(nèi)呈現(xiàn)的文件,則也可以呈現(xiàn)瀏覽選擇。例如,菜單510可以包括“瀏覽”控制元素518,當(dāng)被調(diào)用時,該控制元素518可以使得傳統(tǒng)的“插入文件”對話框被呈現(xiàn)在用戶體驗上,以使得用戶能夠瀏覽并選擇文件以作為附件插入。在一些示例中,如果存在受限的連接或者沒有互聯(lián)網(wǎng)連通性,則可以在菜單510的頂部顯示錯誤以指示某些功能是受到限制的。
在其他示例中,“附加文件”控制元素506可以是復(fù)合的控件(例如,在非基于觸摸和非基于姿勢的設(shè)備中),其包括主要控制元素505、和次要控制元素507。例如,當(dāng)被調(diào)用時,主要控制元素505可以使得傳統(tǒng)的“插入文件”對話框被呈現(xiàn)在用戶體驗上,以使得用戶能夠瀏覽并選擇文件以作為附件插入。當(dāng)被調(diào)用時,次要控制元素507可以使得菜單510(如在上文中詳細地描述的)被呈現(xiàn)。
菜單510可以實現(xiàn)一個或多個滾動方案。例如,菜單510可以實現(xiàn)平滑的、“及時的”滾動,其中,最后的文件可以被部分隱藏和/或截斷以向用戶指示存在更多內(nèi)容。當(dāng)用戶滾動到文件列表的底部時,可以加載更多內(nèi)容。如果在內(nèi)容加載期間存在等待時間,則用戶可以例如看到“正在加載更多項”的動畫和/或文本。否則,一旦已經(jīng)加載了新的文件,新的文件的列表就可以平滑滾動到頂部,以使得用戶可以從頂部到底部查看所述列表。
如在圖5b(圖500)中所示出的,當(dāng)由用戶調(diào)用菜單510中的一個或多個元素時,菜單510可以展開和/或可以發(fā)生動畫。在配置520中,用戶可以通過用戶動作524從菜單510中選擇文件522。響應(yīng)于用戶動作524,可以呈現(xiàn)可以是彈出菜單的另一個菜單526。另一個菜單526可以包括所選擇的文件522的名稱528、對所選擇的文件522的類型的指示530、和/或所選擇的文件522的源532。任何圖形、文本、顏色、陰影、或視覺效果方案都可以用于呈現(xiàn)所選擇的文件名稱、類型、和源。其他菜單526還可以包括一個或多個選項534、536、538(其中,可以用文本和/或用圖像來表示選項,如圖所示)以供用戶選擇以用于附加所選擇的文件522,以及“取消”控制元素540(如果用戶想要不再附加所選擇的文件522)。
在一些實施例中,用于附加的選項534、536、538可以基于所選擇的文件522是本地地存儲的文件還是存儲在云存儲中和/或由網(wǎng)絡(luò)應(yīng)用托管的基于云的文件。例如,所選擇的文件522可以是存儲在云存儲中的基于云的文件。針對存儲在云存儲中的基于云的文件的一個選項可以包括將所選擇的文件522作為在電子郵件消息504的附件區(qū)中和/或正文內(nèi)顯示的鏈接而插入以用于附加,其中,所述附加可以與編輯許可534相關(guān)聯(lián)。從而,可以使得電子郵件消息504的一個或多個接收者能夠通過鏈接來訪問所選擇的文件522并且對所選擇的文件522進行編輯。針對存儲在云存儲中的基于云的文件的另一個選項可以包括將所選擇的文件522作為在電子郵件消息504的附件區(qū)中和/或正文內(nèi)顯示的鏈接而插入以用于附加,其中,所述附加可以與僅僅查看許可536相關(guān)聯(lián)。從而,可以使得電子郵件消息504的一個或多個接收者能夠通過鏈接來訪問所選擇的文件522,但僅僅能夠查看所選擇的文件522。針對存儲在云存儲中的基于云的文件的另一個選項可以包括將所選擇的文件522作為在電子郵件消息504的附件區(qū)中所顯示的本地副本538來附加。從而,所選擇的文件522可以從云存儲中下載并且作為本地副本來附加。
在配置542中,用戶可以通過用戶動作544來選擇將所選擇的文件522作為本地副本538來附加。響應(yīng)于用戶動作544,所選擇的文件522可以從云存儲中下載,并且作為本地副本來附加。
如在圖5c(圖500c)中所示出的,可以在電子郵件消息504的附件區(qū)547中顯示附件546(例如,所選擇的文件522)??梢允褂梦谋竞?或圖形方案(例如,例如指示文件的類型和源的名稱560和圖標(biāo)558)來在附件區(qū)547中示出附件546,其中,附件546的表示也可以指示文件的源562的文本表示。在一些實施例中,云圖標(biāo)548可以鄰近附件區(qū)547而顯示。可以針對云圖標(biāo)548而使用任何圖形、文本、顏色、陰影、或視覺效果方案。例如,云圖標(biāo)548的陰影可以指示附件546是否已經(jīng)被存儲在云存儲中。如圖所示,云圖標(biāo)548被打上重陰影,其可以指示附件546已經(jīng)被存儲在云存儲中。在其他示例中,云圖標(biāo)548可以被打上輕陰影以指示附件546沒有被存儲在云存儲中。其中云圖標(biāo)548可以被打上輕陰影的示例場景可以包括當(dāng)來自用戶的計算設(shè)備或網(wǎng)絡(luò)驅(qū)動器的本地地存儲的文件被附加到例如電子郵件消息504時。
可以使得用戶能夠通過用戶動作550來調(diào)用云圖標(biāo)548。響應(yīng)于用戶動作550,可以向用戶呈現(xiàn)可以例如是下拉對話框的顯示元素552。顯示元素552可以包括用戶將附件546上傳至云存儲554和/或?qū)⒏郊?46上傳至網(wǎng)絡(luò)應(yīng)用的選項。在一些實施例中,當(dāng)用戶選擇多個附件時,顯示元素552可以包括用戶將所有附件上傳至云存儲和/或?qū)⑺懈郊蟼髦辆W(wǎng)絡(luò)應(yīng)用的選項。如先前所討論的,將云圖標(biāo)548打上重陰影(如圖所示)指示附件546已經(jīng)被存儲在云存儲中,并且因此,用戶可以不需要上傳所選擇的文件552。接著,用戶可以完成電子郵件消息504并且通過通信應(yīng)用502發(fā)送給一個或多個接收者。
如在圖5d(圖500)中所示出的,接收者可以通過與該接收者相關(guān)聯(lián)的通信應(yīng)用564來接收電子郵件消息504。電子郵件消息504可以包括使用相同的文本和/或圖形方案(如先前所討論的)而在附件區(qū)547中所顯示的附件546,其包括名稱560、圖標(biāo)558、和源562的文本表示。因此,接收者可以容易地在附件區(qū)547中對基于云的文件附件和本地文件附件進行區(qū)分。
在一些實施例中,可以在附件區(qū)547附近顯示另一個云圖標(biāo)566??梢葬槍υ茍D標(biāo)566而使用任何圖形、文本、顏色、陰影、或視覺效果方案。與結(jié)合圖5c所討論的云圖標(biāo)548類似,云圖標(biāo)566的陰影可以指示附件546是否被存儲在云存儲中。如圖所示,將云圖標(biāo)566打上重陰影,這可以指示附件546已經(jīng)被存儲在云存儲中??梢允沟媒邮照吣軌蛲ㄟ^接收動作568來調(diào)用云圖標(biāo)566。響應(yīng)于接收者動作568,可以向接收者呈現(xiàn)可以是下拉對話框的顯示元素570。顯示元素570可以包括接收者將附件保存至云存儲572和/或?qū)⒏郊4嬷辆W(wǎng)絡(luò)應(yīng)用574的選項。在一些實施例中,當(dāng)存在多個附件時,顯示元素570可以包括接收者將所有附件保存至云存儲和/或?qū)⑺懈郊4嬷辆W(wǎng)絡(luò)應(yīng)用的選項。如先前所討論的,將云圖標(biāo)566打上重陰影(如圖所示)指示所選擇的文件已經(jīng)被存儲在云存儲中,并且因此,接收者可能不會感覺到有必要上傳附件546。
圖6a-圖6c示出了用于將所建議的文件列表呈現(xiàn)給用戶以供選擇的另一個示例的用戶體驗。
如在圖6a(圖600a)中所示出的,通信應(yīng)用602可以使得用戶能夠創(chuàng)建信件并通過一個或多個模態(tài)(例如,電子郵件、文本消息傳送、音頻/視頻會議、應(yīng)用共享、桌面共享等)向一個或多個接收者發(fā)送信件。例如,用戶可以創(chuàng)作具有附加文件的意圖的電子郵件消息604。用戶附加文件的意圖可以是由通信應(yīng)用502響應(yīng)于與在通信應(yīng)用602的用戶體驗上所顯示“附加文件”控制元素606相關(guān)聯(lián)的用戶動作608而檢測到的?!案郊游募笨刂圃?06可以顯示在用戶體驗上的各種位置處,例如工具欄、功能導(dǎo)航欄、和/或操作欄??梢酝ㄟ^觸摸輸入(如圖所示)、姿勢輸入、語音命令、眼睛追蹤、陀螺儀輸入、筆輸入、鼠標(biāo)輸入、和/或鍵盤輸入來執(zhí)行用戶動作。
當(dāng)被調(diào)用時,控制元素606以使得菜單610被呈現(xiàn),其中,菜單610可以是下拉菜單(如圖所示)、或者是彈出菜單。菜單610可以包括被呈現(xiàn)給用戶以供選擇的感興趣的本地的和基于云的文件的列表。通信應(yīng)用602的附件模塊可以被配置為基于從與用戶的一個或多個應(yīng)用相關(guān)聯(lián)的一個或多個應(yīng)用程序接口所獲得的一個或多個文件列表來確定被呈現(xiàn)給用戶以供選擇的感興趣的本地的和基于云的文件列表。感興趣的文件可以基于例如用戶新近是否查看、修改、保存、收聽、共享、標(biāo)記、或發(fā)送了它們來確定。列表中的文件的順序和/或分組可以是基于相同的標(biāo)準(zhǔn)以及交互的新近度、交互的類型、和文件的類型的。
在菜單610內(nèi)所列出的每個文件都可以包括文件的名稱612、對文件的類型的指示616、和/或文件的源614。任何圖形、文本、顏色、陰影、或視覺效果方案都可用于呈現(xiàn)文件名稱、類型、和源。例如,文件的名稱612可以是以文本表示的“財務(wù)概要”,文件的類型616可以通過圖形圖標(biāo)來表示以指示演示文檔,并且文件的源614可以以文本表示以指示云存儲。如果用戶想要附加未在列表內(nèi)呈現(xiàn)的文件,則也可以呈現(xiàn)瀏覽選擇。例如,菜單610可以包括“瀏覽”控制元素618,當(dāng)被調(diào)用時,該控制元素618可以使得傳統(tǒng)的“插入文件”對話框被呈現(xiàn)在用戶體驗上,以使得用戶能夠瀏覽并選擇文件以作為附件插入。在一些示例中,如果存在受限的連接或者沒有互聯(lián)網(wǎng)連通性,則可以在菜單610的頂部顯示錯誤以指示某些功能是受到限制的。
菜單610可以實現(xiàn)一個或多個滾動方案。例如,菜單可以實現(xiàn)平滑的、“及時的”滾動,其中,最后的文件可以被部分隱藏和/或截斷以向用戶指示存在更多內(nèi)容。當(dāng)用戶滾動到文件列表的底部時,可以加載更多內(nèi)容。如果在內(nèi)容加載期間存在等待時間,則用戶可以例如看到“正在加載更多項”的動畫和/或文本。否則,一旦已經(jīng)加載了新的文件,新的文件的列表就可以平滑滾動到頂部,以使得用戶可以從頂部到底部查看所述列表。
如在圖6b(圖600)中所示出的,當(dāng)由用戶調(diào)用菜單610中的一個或多個元素時,菜單610可以展開和/或可以發(fā)生動畫。在配置620中,用戶可以通過用戶動作624從菜單610中選擇文件622。響應(yīng)于用戶動作624,可以呈現(xiàn)可以是彈出菜單的另一個菜單626。另一個菜單626可以包括所選擇的文件622的名稱628、對所選擇的文件622的類型的指示630、和/或所選擇的文件622的源632。任何圖形、文本、顏色、陰影、或視覺效果方案都可以用于呈現(xiàn)所選擇的文件名稱、類型、和源。其他菜單626還可以包括一個或多個選項634、636(其中,可以用文本和/或用圖像來表示選項,如圖所示)以供用戶選擇以用于附加所選擇的文件622,以及“取消”控制元素638(如果用戶想要不再附加所選擇的文件622)。
在一些實施例中,用于附加的選項634、636可以基于所選擇的文件622是本地地存儲的文件還是存儲在云存儲中和/或由網(wǎng)絡(luò)應(yīng)用托管的基于云的文件。例如,所選擇的文件622可以是由網(wǎng)絡(luò)應(yīng)用所托管的基于云的文件。在網(wǎng)絡(luò)應(yīng)用中,由網(wǎng)絡(luò)應(yīng)用所設(shè)置的默認許可可以與所選擇的文件622相關(guān)聯(lián)。例如,默認許可可以包括僅僅查看。從而,由網(wǎng)絡(luò)應(yīng)用所托管的基于云的文件的一個選項可以包括將所選擇的文件622作為至所選擇的文件622的位置的鏈接來插入,其中,所述附件可以與僅僅查看許可634相關(guān)聯(lián)。鏈接可以被顯示在電子郵件消息604的正文內(nèi)以用于附加或者可可以被顯示在電子郵件消息604的附件區(qū)中。從而,可以使得信件的一個或多個接收者能夠通過鏈接來訪問所選擇的文件622,但是僅僅能夠查看所選擇的文件622。針對存儲在網(wǎng)絡(luò)應(yīng)用中的基于云的文件的另一個選項可以包括將所選擇的文件622作為本地副本636來附加。從而,所選擇的文件622可以從網(wǎng)絡(luò)應(yīng)用中下載并且在電子郵件消息604的附件區(qū)中顯示。在配置640中,用戶可以選擇以將所選擇的文件622作為至所選擇的文件622的位置的鏈接來插入,其中,附件可以通過用戶動作642與僅僅查看許可634相關(guān)聯(lián)。
如在圖6c(圖600c)中所示出的,響應(yīng)于將所選擇的文件作為至所選擇的文件的位置的鏈接來附加的用戶選擇,附件646(例如,所選擇的文件622)可以在電子郵件消息604的正文644內(nèi)顯示。在其他實施例中,附件646可以在電子郵件消息604的附件區(qū)內(nèi)顯示??梢允褂梦谋竞?或圖形方案(例如,指示文件的類型和源的名稱648和圖標(biāo)650)來顯示附件646,其中,附件的表示也可以指示文件的源652的文本表示。接著,用戶可以完成電子郵件消息604并且通過通信應(yīng)用602發(fā)送給一個或多個接收者。
一旦由接收者接收到,通過鏈接對所附加的文件的訪問可以是通過接收者自己的證書來訪問的(如果接收者能夠訪問與附件646相關(guān)聯(lián)的相同的網(wǎng)絡(luò)應(yīng)用),或者是通過一次性訪客來訪問的。在一些示例中,在確定接收者是否能夠訪問與附件646相關(guān)聯(lián)的網(wǎng)絡(luò)應(yīng)用之后,通信應(yīng)用602可以對該訪問進行配置。
已經(jīng)使用了具體的網(wǎng)絡(luò)環(huán)境、系統(tǒng)、應(yīng)用、用戶體驗、和過程描述了圖1到圖6的示例,以在通信應(yīng)用中處理基于云的和本地附件。用于采用基于上下文的推斷來在通信應(yīng)用中對基于云的和本地附件進行處理的實施例不限于根據(jù)這些示例的具體的網(wǎng)絡(luò)環(huán)境、系統(tǒng)、應(yīng)用、用戶體驗、和過程。
在通信應(yīng)用中對基于云的和本地附件的處理可以簡化用戶之間的通信并提高用戶之間的通信的效率。例如,用于對用戶附加的文件的智能建議可以通過以下方式來降低用戶時間、處理器負載、以及存儲器負載:減少在進行發(fā)送之前從基于云的數(shù)據(jù)存儲下載文件、由用戶檢查多種數(shù)據(jù)資源、和/或由接收者對所附加的文檔的經(jīng)更新版本進行下載。因此,在通信應(yīng)用中對基于云的和本地附件的處理可以有利地需要數(shù)據(jù)存儲內(nèi)的較少的存儲空間,并且因此降低了硬件要求。此外,在通信應(yīng)用中對基于云的和本地附件的處理可以有利地改進可用性。例如,可以提高共同著作文檔的效率,這是因為文檔可以通過至存儲中的文檔位置的鏈接而容易地被附加到信件。
進一步的優(yōu)點可以包括但不限于:找到有可能想要較容易地發(fā)送的文件的能力,尤其是在文件在難以找到/導(dǎo)航至的云中的情況下;在觸摸或姿勢用戶體驗上較容易導(dǎo)航;鏈接在用戶的機器上占用較少的磁盤空間;鏈接的發(fā)送和接收兩者在線路上占用較少的字節(jié);以及鏈接允許用戶查看新近的文檔以及與其他人的共同作者。附件建議可以不再限于用戶的計算設(shè)備,這是因為他們可以從云或者從他們的其他計算設(shè)備中容易地找到附件。此外,通常大于通信服務(wù)器的文件可以允許被附加,其可以通過將文件上傳至云并且附加至云內(nèi)的文件的位置的鏈接來附加。當(dāng)具有附件的電子郵件被發(fā)送至先前的和新的接收者時,僅僅接收到附件的副本的新的接收者,這可以針對會話線程上的所有現(xiàn)有接收者而言節(jié)省磁盤空間和線路上的字節(jié)兩者。具有基于用戶的許可的鏈路可以是更加安全的,這是因為中間人攻擊可能不會查看附件的內(nèi)容。用于附加的所建議的文件的列表也可以作為快速找到用戶感興趣的文件的方式來使用。即,除了關(guān)于發(fā)送附件的主要意圖的對列表的有利用途之外還可以存在對列表的其他有利用途。
圖7和相關(guān)聯(lián)的討論旨在提供根據(jù)在本文中所描述的實施例的對通用計算設(shè)備的簡要的、一般的描述,其可以用于在通信應(yīng)用中對基于云的和本地附件的處理。
例如,計算設(shè)備700可以用作為服務(wù)器、臺式機計算機、便攜式計算機、智能電話、專用計算機、或類似的設(shè)備。在示例基本配置702中,計算設(shè)備700可以包括一個或多個處理器704和系統(tǒng)存儲器706。存儲器總線708可用于在處理器704與系統(tǒng)存儲器706之間進行通信。在圖7中由內(nèi)部的虛線內(nèi)的那些組件示出了基本配置。
根據(jù)期望的配置,處理器704可以具有任何類型,包括但不限于:微處理器(μp)、微控制器(μc)、數(shù)字信號處理器(dsp)、或其任何組合。處理器704可以包括一個以上層級的高速緩存,例如層級高速緩存存儲器712、一個或多個處理器核心714、和寄存器716。處理器核心714可以(每個)包括算術(shù)邏輯單元(alu)、浮點單元(fpu)、數(shù)字信號處理核心(dsp核心)、或其任何組合。示例存儲器控制器718還可以與處理器704一起使用,或者在一些實現(xiàn)中,存儲器控制器718可以是處理器704的內(nèi)部部件。
根據(jù)期望的配置,系統(tǒng)存儲器706可以具有任何類型,包括但不限于:易失性存儲器(例如,ram)、非易失性存儲器(例如,rom、閃速存儲器等)、或其任何組合。系統(tǒng)存儲器706可以包括操作系統(tǒng)720、通信應(yīng)用722、和程序數(shù)據(jù)724。通信應(yīng)用722可以包括附件模塊726,其可以是通信應(yīng)用722的集成部分或者是分別的應(yīng)用。通信應(yīng)用722可以使能諸如電子郵件、文本消息傳送、日歷項、以及其他形式的電子對話之類的通信的交換。附件模塊726可以使能經(jīng)由通過向用戶建議各種類型的文件和源的經(jīng)優(yōu)化的和高效的用戶體驗來將本地的或基于云的文件附加到信件,其中,用戶可以對所述文件感興趣以作為附件發(fā)送。附件模塊726可以執(zhí)行與在本文中所描述的示例實施例相關(guān)聯(lián)的任務(wù)。程序數(shù)據(jù)可以包括與如在本文中所描述的附件相關(guān)的附件數(shù)據(jù)728等。
計算設(shè)備700可以具有額外的特征或功能,以及用于促進基本配置702與任何所期望設(shè)備和接口之間的通信的額外的接口。例如,總線/接口控制器730可用于促進基本配置702與一個或多個數(shù)據(jù)存儲設(shè)備732之間經(jīng)由存儲接口總線734的通信。數(shù)據(jù)存儲設(shè)備732可以是一個或多個可移動存儲設(shè)備736、一個或多個不可移動存儲設(shè)備738、或其組合??梢苿哟鎯υO(shè)備和不可移動存儲設(shè)備的示例可以包括:磁盤設(shè)備(例如,軟盤驅(qū)動器和硬盤驅(qū)動器(hdd))、光盤驅(qū)動器(例如,壓縮盤(cd)驅(qū)動器或數(shù)字通用盤(dvd)驅(qū)動器)、固態(tài)驅(qū)動器(ssd)、以及磁帶驅(qū)動器等。示例計算機存儲介質(zhì)可以包括以用于存儲諸如計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊、或其他數(shù)據(jù)之類的信息的任何方法或技術(shù)來實現(xiàn)的易失性和非易失性、可移動和不可移動介質(zhì)。
系統(tǒng)存儲器706、可移動存儲設(shè)備736、和不可移動存儲設(shè)備738可以是計算機存儲介質(zhì)的示例。計算機存儲介質(zhì)可以包括但不限于:ram、rom、eeprom、閃速存儲器或其他存儲器技術(shù)、cd-rom、數(shù)字通用盤(dvd)、固態(tài)驅(qū)動器、或其他光存儲、盒式磁帶、磁帶、磁盤存儲設(shè)備或其他磁存儲設(shè)備、或者可用于存儲期望的信息并且可以由計算設(shè)備700來訪問的任何其他介質(zhì)。任何這樣的計算機存儲介質(zhì)可以是計算設(shè)備700的一部分。
計算設(shè)備700還可以包括用于促進經(jīng)由總線/接口控制器730從各種接口設(shè)備(例如,一個或多個輸出設(shè)備742、一個或多個外圍接口744、以及一個或多個通信設(shè)備746)到基本配置702的通信的接口總線740。示例輸出設(shè)備742中的一些輸出設(shè)備可以包括圖形處理單元748和音頻處理單元750,它們可以被配置為經(jīng)由一個或多個a/v端口752而與諸如顯示器或揚聲器之類的各種外部設(shè)備進行通信。一個或多個示例外圍接口744可以包括串行接口控制器754或并行接口控制器756,它們可以被配置為經(jīng)由一個或多個i/o端口758而與諸如輸入設(shè)備(例如,鍵盤,鼠標(biāo)、筆、語音輸入設(shè)備、觸摸輸入設(shè)備等)或其他外圍設(shè)備(例如,打印機、掃描儀等)之類的外圍設(shè)備進行通信。示例通信設(shè)備746可以包括網(wǎng)絡(luò)控制器760,其可以被布置為促進經(jīng)由一個或多個通信端口764在網(wǎng)絡(luò)通信鏈路上與一個或多個其他計算設(shè)備762的通信。一個或多個其他計算設(shè)備762可以包括服務(wù)器、客戶端裝置、和類似設(shè)備。
網(wǎng)絡(luò)通信鏈路可以是通信介質(zhì)的一個示例。通信介質(zhì)可以由計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊、或經(jīng)調(diào)制的數(shù)據(jù)信號(例如載波或其他傳輸機制)中的其他數(shù)據(jù)來實施,并且可以包括任何信息傳遞介質(zhì)?!敖?jīng)調(diào)制的數(shù)據(jù)信號”可以是具有經(jīng)調(diào)制的數(shù)據(jù)信號的特征集合中的一個或多個特征的信號,或者以關(guān)于將信息在信號中進行編碼的方式而改變。作為示例而非限制,通信介質(zhì)可以包括有線介質(zhì)(例如,有線網(wǎng)絡(luò)或直接有線連接)和無線介質(zhì)(例如,聲學(xué)、射頻(rf)、微波、紅外(ir)和其他無線介質(zhì))。如在本文中所使用的術(shù)語計算機可讀介質(zhì)可以包括存儲介質(zhì)和通信介質(zhì)兩者。
可以將計算設(shè)備700實現(xiàn)為包括以上功能中的任何一種功能的通用或?qū)S梅?wù)器、主機、或類似的計算機的一部分。還可以將計算設(shè)備700實現(xiàn)為個人計算機,其包括膝上型計算機和非膝上型計算機配置兩者。
示例實施例還可以包括用于在通信應(yīng)用中對基于云的和本地附件進行處理的方法。可以以包括在本文中所描述的結(jié)構(gòu)的任何數(shù)量的方式來實現(xiàn)這些方法。一種這樣的方式可以是通過使用在本公開中所描述的類型的設(shè)備的機器操作。另一種可選的方式可以是針對結(jié)合執(zhí)行一些操作的一個或多個人類操作者而將被執(zhí)行的方法的獨立操作中的一個或多個操作。這些人類操作者無需彼此處于同一位置,但每個操作者可以與執(zhí)行程序的一部分的機器在一起。在其他示例中,人類交互可以例如通過可以是機器自動化的預(yù)先選擇的標(biāo)準(zhǔn)而是自動化的。
圖8示出了根據(jù)實施例的用于在通信應(yīng)用中對基于云的和本地附件進行處理的示例過程的邏輯流程圖。過程800可以在服務(wù)器或其他系統(tǒng)上實現(xiàn)。
過程800從操作810開始,其中,通信應(yīng)用的附件模塊可以被配置為檢測將文件附加到信件的用戶意圖??梢酝ㄟ^在與通信應(yīng)用相關(guān)聯(lián)的用戶體驗上執(zhí)行的用戶動作來檢測所述用戶意圖。用戶動作可以是以下中的一個或多個:觸摸輸入、姿勢輸入、語音命令、眼球追蹤、陀螺儀輸入、筆輸入、鼠標(biāo)輸入、和/或鍵盤輸入。例如,用戶可以使用觸摸輸入來在用戶體驗上調(diào)用“附加文件”控制元素。
在操作820處,附件模塊可以被配置為基于從與用戶的一個或多個應(yīng)用相關(guān)聯(lián)的一個或多個應(yīng)用程序接口接收到的一個或多個文件列表來確定用戶感興趣的本地的和基于云的文件的列表。感興趣的文件可以來自多個源,例如在用戶的計算設(shè)備處本地地存儲的文件、在用戶的網(wǎng)絡(luò)驅(qū)動器處存儲的文件、來自社交網(wǎng)絡(luò)或職業(yè)網(wǎng)絡(luò)的文件、來自用戶訂閱的協(xié)同服務(wù)的文件、以及諸如可以與用戶相關(guān)聯(lián)的其他人的文件之類的其他基于云的文件。感興趣的文件可以基于例如用戶新近是否已經(jīng)查看、修改、保存、收聽、共享、標(biāo)記、或發(fā)送了它們來確定。
在操作830處,附件模塊可以被配置為將本地的和基于云的文件的列表呈現(xiàn)給用戶以供選擇。列表可以通過與通信應(yīng)用相關(guān)聯(lián)的用戶體驗或分別的用戶體驗來呈現(xiàn),其中,可以使用任何類型的圖形、文本、顏色、陰影、或視覺效果方案來呈現(xiàn)文件類型、源、和列出文件的原因。所建議的文件的順序和/或分組可以基于相同的標(biāo)準(zhǔn)以及交互的新近度、交互的類型、和文件的類型??梢曰谀J規(guī)則、用戶配置、和/或由通信應(yīng)用的附件模塊進行的推斷來呈現(xiàn)和/或分組所建議的文件。
在操作840處,在用戶從列表中選擇了一個或多個文件之后,附件模塊可以被配置為將所選擇的文件或者至所選擇的文件的位置的鏈接附加到信件??梢允褂糜糜谥甘疚募蜴溄拥念愋秃?或源的文本和/或圖形方案來在在電子郵件的附件區(qū)或者正文內(nèi)示出附件(無論是文件還是鏈接)。
在過程800中所包括的操作是出于說明的目的的。在通信應(yīng)用中對基于云的和本地附件的處理可以由具有更少或額外的步驟的類似過程、以及以使用在本文中所描述的原理的操作的不同順序來實現(xiàn)。
一種用于在通信應(yīng)用中對基于云的和本地的附件進行處理的單元可以包括:用于檢測將文件附加到信件的用戶意圖的單元;用于確定所述用戶感興趣的本地的和基于云的文件的列表的單元;用于將所述本地的和基于云的文件的所述列表呈現(xiàn)給所述用戶以供選擇的單元;以及用于在從所述列表中選擇了一個或多個文件之后,將所選擇的文件或者至所述所選擇的文件的位置的鏈接中的一個附加到所述信件的單元。
根據(jù)一些示例,提供了一種用于在通信應(yīng)用中對基于云的和本地的附件進行處理的方法。示例方法包括:檢測將文件附加到信件的用戶意圖;確定所述用戶感興趣的本地的和基于云的文件的列表;將所述本地的和基于云的文件的所述列表呈現(xiàn)給所述用戶以供選擇;以及在從所述列表中選擇了一個或多個文件之后,將所選擇的文件或者至所述所選擇的文件的位置的鏈接中的一個附加到所述信件。
在其他示例中,確定用戶感興趣的本地的和基于云的文件的列表可以包括基于用戶新近是否查看、修改、保存、收聽、共享、標(biāo)記、或發(fā)送了文件來確定所述文件??梢曰谟脩粜陆欠褚呀?jīng)查看、修改、保存、收聽、共享、標(biāo)記、或發(fā)送了文件以及以下各項中的一項或多項來對本地的和基于云的文件的所述列表進行排序和/或分組:用戶與文件交互的新近度、用戶與文件交互的類型、以及文件的類型。本地的和基于云的文件的所述列表可以由通信應(yīng)用基于默認規(guī)則、用戶配置、和/或推斷來排序和/或分組??梢允褂糜糜诒硎舅郊拥奈募奈谋痉桨负蛨D形方案中的一個或多個方案來在電子郵件信件的附件區(qū)和正文的一個或多個中顯示所附加的文件或者至所述所附加的文件的位置的鏈接。
在進一步的示例中,本地的和基于云的文件的列表可以通過從與用戶的一個或多個應(yīng)用相關(guān)聯(lián)的一個或多個應(yīng)用程序接口接收一個或多個文件列表來確定。與所附加的文件相關(guān)聯(lián)的一個或多個許可可以基于與文件相關(guān)聯(lián)的原始許可和/或用戶配置來確定,其中,所述許可可以包括查看、編輯、轉(zhuǎn)發(fā)、和/或保存。可以給用戶呈現(xiàn)選項以修改與所附加的文件相關(guān)聯(lián)的許可,并且許可可以在接收者接收到所附加的文件之后實施。可以確定至所附加的文件的鏈接的接收者是否通過先前存在的服務(wù)訂閱而能夠訪問所附加的文件的位置。如果接收者能夠訪問,則可以使用與先前存在的服務(wù)訂閱相關(guān)聯(lián)的他們自己的證書來使得接收者能夠訪問所附加的文件。如果接收者不能夠訪問,則可以為該接收者創(chuàng)建一次性訪客訪問??梢允沟媒邮照吣軌蜥槍儆诹硪挥脩舻乃郊拥奈募O(shè)置許可。
在進一步的示例中,如果本地存儲的文件被選擇為附件,則將所選擇的文件上傳至云,并且附加至所上傳的文件的位置的鏈接;以及如果基于云的文件被選擇為所述附件,則下載所選擇的文件,并且基于默認規(guī)則和用戶配置中的一個將所述文件附加到所述信件。如果基于云的文件被選擇為附件,若接收者在線則使得所述接收者的客戶端應(yīng)用能夠取回所述文件的最新版本,或者若所述接收者離線則使得所述接收者的客戶端應(yīng)用能夠使用所述附件的已發(fā)送版本。在檢測到由所述用戶在電子郵件信件的正文內(nèi)插入至基于云的文件的鏈接之后,自動地附加所述基于云的文件并且在用戶體驗上顯示為所附加的文件。在將所述信件發(fā)送給多個接收者并且所述多個接收者中的一個接收者將其轉(zhuǎn)發(fā)給包括所述多個接收者中的至少一個接收者和至少一個新的接收者的一組接收者之后,使得能夠?qū)⒕哂兴郊拥奈募慕?jīng)轉(zhuǎn)發(fā)的信件發(fā)送給所述至少一個新的接收者,而不將所述所附加的文件發(fā)送給所述多個接收者中的所述至少一個接收者。可以使得能夠?qū)χ猎诟郊^(qū)中所呈現(xiàn)的基于云的文件的鏈接進行處理的進行接收的客戶端應(yīng)用能夠在電子郵件的所述附件區(qū)和正文中的一個或兩者中呈現(xiàn)所述鏈接,并且使得不能夠?qū)χ猎谒龈郊^(qū)中所呈現(xiàn)的所述基于云的文件的所述鏈接進行處理的進行接收的另一客戶端能夠?qū)⑺鲦溄映尸F(xiàn)為在所述電子郵件的所述正文內(nèi)的鏈接。
根據(jù)一些實施例,描述了一種用于在通信應(yīng)用中對基于云的和本地的附件進行處理的計算設(shè)備。示例計算設(shè)備包括:輸入設(shè)備、顯示設(shè)備、被配置為存儲指令的存儲器、耦合至所述存儲器的處理器。結(jié)合存儲在所述存儲器中的指令,所述處理器被配置為:通過所述輸入設(shè)備來檢測將文件附加到信件的用戶意圖;確定所述用戶感興趣的本地的和基于云的文件的列表;通過所述顯示設(shè)備將所述本地的和基于云的文件的所述列表呈現(xiàn)給所述用戶以供選擇;以及在從所述列表中選擇了一個或多個文件之后,將所選擇的文件或者至所述所選擇的文件的位置的鏈接中的一個附加到所述信件,其中,所附加的文件或者至所述所附加的文件的位置的鏈接被顯示在電子郵件信件的附件區(qū)和正文內(nèi)。
在其他實施例中,所述處理器可以被配置為通過在用戶體驗上顯示下拉菜單和彈出菜單中的一個菜單并且通過在所述用戶體驗上顯示瀏覽選擇來通過所述顯示設(shè)備將所述本地的和基于云的文件的所述列表呈現(xiàn)給所述用戶以供選擇。所述處理器還可以被配置為作為本地文件來處理至所述所附加的文件的所述位置的所述鏈接,以使得所述鏈接在所述列表內(nèi)是能夠搜索到的,其中,可以采用圖形、文本、顏色、陰影、和視覺效果方案來區(qū)分在所述列表內(nèi)所呈現(xiàn)的本地文件和基于云的文件,以及文件類型、文件源、以及列出文件的原因。
根據(jù)一些實施例,描述了一種用于在通信應(yīng)用中對基于云的和本地的附件的進行處理的系統(tǒng)。示例系統(tǒng)可以包括:被配置為提供通信服務(wù)的第一服務(wù)器;被配置為存儲與所述通信服務(wù)的用戶相關(guān)聯(lián)的文件的第二服務(wù)器;以及在所述第一服務(wù)器上執(zhí)行的通信應(yīng)用。所述通信應(yīng)用被配置為:檢測將文件附加到信件的用戶意圖,其中,所述信件與電子郵件交換、文本消息傳送交換、音頻/視頻會議、應(yīng)用共享、以及桌面共享中的一個或多個相關(guān)聯(lián);確定所述用戶感興趣的本地的和基于云的文件的列表;將所述本地的和基于云的文件的所述列表呈現(xiàn)給所述用戶以供選擇。所述通信應(yīng)用還可以被配置為在從所述列表中選擇了一個或多個文件之后,將所選擇的文件或者至所述所選擇的文件的位置的鏈接中的一個附加到所述信件;并且如果本地存儲的文件被選擇為附件,則將所選擇的文件上傳至所述云,并且附加至所上傳的文件的位置的鏈接;否則如果基于云的文件被選擇為所述附件,則下載所選擇的文件,并且基于默認規(guī)則和用戶配置中的一個將所述文件附加到所述信件。
在其他示例中,所述本地的和基于云的文件包括以下文件中的一個或多個:在與所述用戶相關(guān)聯(lián)的計算設(shè)備處本地地存儲的文件、在與所述用戶相關(guān)聯(lián)的網(wǎng)絡(luò)驅(qū)動器處存儲的文件、來自社交網(wǎng)絡(luò)的文件、來自職業(yè)網(wǎng)絡(luò)的文件、來自所述用戶訂閱的協(xié)同服務(wù)的文件、以及其他人的基于云的文件。在通過至云內(nèi)的所上傳的文件的位置的鏈接而訪問了所選擇的文件之后,可以使得信件的一個或多個接收者能夠共同著作所選擇的文件。
以上的說明書、示例、和數(shù)據(jù)提供了對實施例的構(gòu)成的制造和使用的完整的描述。盡管已經(jīng)用特定于結(jié)構(gòu)特征和/或方法動作的語言描述了主題,但是應(yīng)當(dāng)理解的是,在所附權(quán)利要求中限定的主題不一定限于在上文中所描述的具體的特征或動作。相反,在上文中所描述的具體的特征和動作是作為實現(xiàn)權(quán)利要求和實施例的示例形式而公開的。