用戶越來越多地依賴于基于網(wǎng)絡(luò)的資源以用于進(jìn)行商業(yè)和個人通信,包括在線會議、屏幕共享、視頻聊天、消息傳送、以及經(jīng)由互聯(lián)網(wǎng)的其他方式的通信。一些基于網(wǎng)絡(luò)的通信會話可以涉及動態(tài)地改變的參與者,例如當(dāng)人被加入或離開消息傳送線程時。當(dāng)涉及通信會話的參與者改變時,產(chǎn)生的一個問題是暴露多少會話的歷史。傳統(tǒng)上,會話的參與者不能夠控制對歷史的暴露,并且因此每個參與者可以能夠訪問全部歷史。為了解決參與者可能不想要與被加入到活動會話中的某人分享全部歷史的情況,參與者可以打開新的會話和/或?qū)⒒顒訒挼牟糠旨羟泻驼迟N到新的會話中??商娲兀瑔⒂猛ㄐ艜挼囊恍┉h(huán)境可以支持用于關(guān)于在會話開始后一段時間所加入的參與者而切換整個歷史開或關(guān)的功能。這些傳統(tǒng)技術(shù)涉及由原始的參與者進(jìn)行的較大量的人工準(zhǔn)備以帶入新的參與者并且提供對歷史暴露的有限的控制。
技術(shù)實現(xiàn)要素:
描述了會話歷史范圍控制技術(shù),其中,通信會話(例如,在線聊天)的參與者能夠選擇性地控制向加入到會話中的個人示出多少通信會話歷史。捕獲通信會話中在參與者之間所交換的消息的歷史以創(chuàng)建會話記錄??梢员┞稌捰涗浀谋硎?例如,消息線程)以用于由通信會話的參與者所使用的通信模塊來呈現(xiàn)。響應(yīng)于參與者的加入,通信模塊可以被配置為結(jié)合會話記錄來暴露歷史控制元素,以使得會話發(fā)起者(或其他參與者)能夠控制將會話記錄的哪些部分暴露給在某會話已經(jīng)發(fā)生了之后加入到該會話中的人。在實現(xiàn)中,針對特定的參與者的歷史控制元素被配置為可視地標(biāo)識特定的參與者能夠訪問的會話記錄的表示內(nèi)的部分。歷史控制元素可以位于會話記錄的表示內(nèi)的不同的位置,以修改消息向特定的參與者的暴露。
提供了該發(fā)明內(nèi)容以用簡化的形式介紹了進(jìn)一步在下文的具體實施方式中所描述的概念的選擇。該發(fā)明內(nèi)容不旨在標(biāo)識所要求保護的主題的關(guān)鍵特征或本質(zhì)特征,也不旨在用于幫助確定所要求保護的主題的范圍。
附圖說明
參考附圖描述了具體實施方式。在圖中,附圖標(biāo)記的最左邊的數(shù)字標(biāo)識了該附圖標(biāo)記第一次出現(xiàn)所在的圖。在描述和圖中的不同的實例中使用的相同的附圖標(biāo)記可以指代相似或相同的項。在圖中所表示的實體可以指示一個或多個實體并且因此可以可交換地對在下文中所討論的實體的一個或多個形式進(jìn)行參考。
圖1是用于以采用針對會話歷史范圍控制的技術(shù)的示例操作環(huán)境的示圖。
圖2是描繪了根據(jù)一個或多個實現(xiàn)的具有歷史控制元素的用戶界面的一些細(xì)節(jié)的圖。
圖3是描繪了根據(jù)一個或多個實現(xiàn)的具有歷史控制元素的用戶界面的一些額外的細(xì)節(jié)的圖。
圖4是描繪了根據(jù)一個或多個實現(xiàn)的具有與參與者相關(guān)聯(lián)的歷史控制元素的用戶界面的表示的圖。
圖5是描繪了根據(jù)一個或多個實現(xiàn)的具有與多個參與者相關(guān)聯(lián)的歷史控制元素的用戶界面的表示的圖。
圖6是描繪了根據(jù)一個或多個實現(xiàn)的其中歷史控制元素用于訪問歷史控制對話框的場景的表示的圖。
圖7是描繪了根據(jù)一個或多個實現(xiàn)的歷史控制對話框的細(xì)節(jié)的圖。
圖8是描繪了根據(jù)一個或多個實現(xiàn)的用于控制對會話記錄的暴露的示例過程的流程圖。
圖9是描繪了根據(jù)一個或多個實現(xiàn)的用于經(jīng)由歷史控制元素來選擇針對參與者的歷史范圍的示例過程的圖。
圖10示出了具有可以被采用以實現(xiàn)在本文中所描述的技術(shù)的方面的設(shè)備和組件的示例系統(tǒng)。
具體實施方式
概述
傳統(tǒng)上,聊天會話的參與者不能夠控制對歷史的暴露,并且因此每個參與者可以能夠訪問全部歷史。因此,可以強制用戶發(fā)起分別的會話以防止一些參與者看到在這些參與者加入到該對話之前所交換的消息中的敏感的或者私人的信息。
描述了會話歷史范圍控制技術(shù),其中,通信會話(例如,在線聊天)的參與者能夠選擇性地控制向加入到會話中的個人示出多少通信會話歷史。捕獲通信會話中在參與者之間所交換的消息的歷史以創(chuàng)建會話記錄??梢员┞稌捰涗浀谋硎?例如,消息線程)以用于由通信會話的參與者所使用的通信模塊來呈現(xiàn)。響應(yīng)于參與者的加入,通信模塊可以被配置為結(jié)合會話記錄來暴露歷史控制元素,以使得會話發(fā)起者(或其他參與者)能夠控制將會話記錄的哪些部分暴露給在某會話已經(jīng)發(fā)生了之后加入到該會話中的人。針對特定的參與者的歷史控制元素被配置為可視地標(biāo)識特定的參與者能夠訪問的會話記錄的表示內(nèi)的部分。例如,歷史控制元素可以是滑塊、條、分隔器、范圍選擇器、縮略圖、轉(zhuǎn)盤、或者可以用于定義用于控制參與者對消息歷史的訪問的會話記錄中的一個或多個范圍點的其他用戶界面工具。范圍點可以與時間戳、位置、消息范圍、消息ID、時間窗、或者可以用于指定和標(biāo)識參與者能夠訪問和不能訪問的會話記錄的部分的其他標(biāo)識符相對應(yīng)。例如,與特定的參與者相對應(yīng)的滑塊控件可以被拖拽或以其他方式被定位至?xí)捰涗浀谋硎局械南⒌闹盎蛑蟮奈恢?例如,兩個聊天氣泡之間),以指定范圍點。額外地,可以使用與每個參與者相關(guān)聯(lián)的歷史控制元素控件而將會話記錄的不同的部分暴露給不同的參與者。
在本文中所描述的會話歷史范圍控制技術(shù)可以直接從經(jīng)由通信會話的用戶界面所呈現(xiàn)的會話記錄的表示內(nèi)來提供對消息暴露的控制。此外,可以在表示內(nèi)示出針對每個參與者的歷史范圍的視覺表示。由此,歷史控件被方便地定位并且可以被快速訪問以在參與者加入會話時查看和修改消息暴露。由于進(jìn)行控制決策的會話發(fā)起者或其他參與者不一定要從消息傳送窗的視圖導(dǎo)航離開來與歷史控件進(jìn)行交互,因此該過程是高效的并且加入新的參與者不會顯著地打斷正在進(jìn)行的對話。
在以下的討論中,首先描述了可以采用在本文中所描述的技術(shù)的示例環(huán)境。接著,描述了可以在示例環(huán)境以及其他環(huán)境中實現(xiàn)的示例細(xì)節(jié)和過程。因此,所述示例細(xì)節(jié)和過程不限于示例環(huán)境并且示例環(huán)境不限于所述示例細(xì)節(jié)和過程。最后,討論了可以被采用以實現(xiàn)在本文中所描述的技術(shù)的方面的示例系統(tǒng)和所述系統(tǒng)的組件。
示例環(huán)境
圖1是用于采用在本文中所描述的技術(shù)的實例實現(xiàn)中的環(huán)境100的示圖。所示出的環(huán)境100包括客戶端設(shè)備102、其他客戶端設(shè)備104、以及經(jīng)由網(wǎng)絡(luò)108通信地耦合的服務(wù)提供者106。客戶端設(shè)備102、其他客戶端設(shè)備104、以及服務(wù)提供者106可以由一個或多個計算設(shè)備來實現(xiàn)并且也可以代表一個或多個實體。
可以以多種方式來配置計算設(shè)備。例如,可以將計算設(shè)備配置為能夠通過網(wǎng)絡(luò)108進(jìn)行通信的計算機,例如臺式計算機、移動站、娛樂家電、通信地耦合至顯示設(shè)備的機頂盒、無線電話、游戲控制臺等。因此,計算設(shè)備的范圍可以從具有實質(zhì)的存儲器和處理器資源的完全資源設(shè)備(例如,個人計算機、游戲控制臺)到具有有限的存儲器和/或處理資源的低資源設(shè)備(例如,傳統(tǒng)機頂盒、手持式游戲控制臺)。額外地,盡管在一些實例中示出了單個計算設(shè)備,但所述計算設(shè)備可以代表多個不同的設(shè)備,例如,由商業(yè)利用以執(zhí)行操作的服務(wù)提供者106的多個服務(wù)等。在下文中關(guān)于圖10描述了適用于實現(xiàn)在本文中所描述的技術(shù)的計算系統(tǒng)和設(shè)備的進(jìn)一步的示例。
盡管網(wǎng)絡(luò)108被示出為互聯(lián)網(wǎng),但是網(wǎng)絡(luò)可以假設(shè)寬泛的多種配置。例如,網(wǎng)絡(luò)108可以包括廣域網(wǎng)(WAN)、局域網(wǎng)(LAN)、無線網(wǎng)絡(luò)、公共電話網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)、對等網(wǎng)絡(luò)等。此外,盡管示出了單個網(wǎng)絡(luò)108,但網(wǎng)絡(luò)108可以被配置為包括多個網(wǎng)絡(luò)。
客戶端設(shè)備102還被示出為包括操作系統(tǒng)110。操作系統(tǒng)110被配置為將底層設(shè)備的底層功能抽象為在客戶端設(shè)備102上可執(zhí)行的應(yīng)用112。例如,操作系統(tǒng)110可以對過程、存儲器、網(wǎng)絡(luò)、和/或顯示功能進(jìn)行抽象,以使得可以在不知道“如何”實現(xiàn)該底層功能的情況下對應(yīng)用112進(jìn)行寫操作。應(yīng)用112例如可以將數(shù)據(jù)提供至操作系統(tǒng)110以如所示出的在不理解如何執(zhí)行該呈現(xiàn)的情況下由顯示設(shè)備來呈現(xiàn)和顯示。可以構(gòu)想通常與客戶端設(shè)備相關(guān)聯(lián)的多種應(yīng)用112,包括但不限于:集成了多個辦公生產(chǎn)力模塊的生產(chǎn)力套件、網(wǎng)絡(luò)瀏覽器、游戲、多媒體播放器、文字處理器、電子表格程序、照片管理器等。
客戶端設(shè)備102和其他客戶端設(shè)備104每個都被示出為包括通信模塊114。通信模塊代表使能經(jīng)由網(wǎng)絡(luò)108的各類通信的功能。通信模塊的示例包括用于訪問網(wǎng)絡(luò)內(nèi)容的瀏覽器、語音通信應(yīng)用(例如,VoIP客戶端)、視頻通信應(yīng)用、即時消息傳送應(yīng)用、內(nèi)容分享應(yīng)用、及其組合。通信模塊114例如使能組合不同的通信模態(tài)以提供不同的通信場景。這包括但不限于用于網(wǎng)絡(luò)瀏覽、用戶在線指示、視頻通信、在線協(xié)同和會議體驗、即時消息傳送(IM)、以及語音通話的經(jīng)集成的功能。此外,通信模塊可以用于訪問網(wǎng)絡(luò)資源(例如,內(nèi)容和服務(wù))、瀏覽網(wǎng)頁和網(wǎng)站、建立與服務(wù)提供者和其他客戶端的通信連接等。在至少一些實現(xiàn)中,通信模塊114表示被部署至客戶端設(shè)備并且本地地安裝在客戶端設(shè)備上的應(yīng)用。額外地或可替代地,通信模塊114可以全部或部分地被實現(xiàn)為經(jīng)由網(wǎng)絡(luò)瀏覽器(例如,網(wǎng)絡(luò)應(yīng)用)訪問和執(zhí)行的遠(yuǎn)程應(yīng)用、被實現(xiàn)為來自供應(yīng)者的遠(yuǎn)程服務(wù)、使用對等技術(shù)來實現(xiàn)等。
根據(jù)在本文中所描述的技術(shù),通信模塊114可以用于在端點之間建立通信會話116,例如在服務(wù)提供者與一個或多個客戶端之間和/或直接地在客戶端之間。例如,通信會話116可以使能各種消息、媒體流(例如,音頻/視頻)、內(nèi)容等在端點之間進(jìn)行交換,如在圖1中所示出的。在一個或多個實現(xiàn)中,通信會話116表示使用通信模塊114進(jìn)行的基于網(wǎng)絡(luò)的實時通信,所述通信模塊可以被配置為網(wǎng)絡(luò)瀏覽器、基于云的網(wǎng)絡(luò)應(yīng)用、客戶端應(yīng)用、或其他。
客戶端設(shè)備102可以包括歷史管理器模塊118,其被配置為實現(xiàn)如在本文中所描述的針對會話歷史范圍控制的技術(shù)。如圖所示,歷史管理器模塊118可以被實現(xiàn)為另一個應(yīng)用的組件,例如瀏覽器或其他通信模塊114的經(jīng)集成的組件。另外地或可替代地,歷史管理器模塊118可以作為獨立的模塊來提供,其可以被各種應(yīng)用112利用以控制對在通信會話116中所暴露的信息的暴露,如在本文中所描述的。
如在圖1中進(jìn)一步表示的,用戶界面120可以經(jīng)由通信模塊114輸出以呈現(xiàn)與通信會話116相關(guān)聯(lián)的內(nèi)容的視圖。用戶界面120被配置為包括多個元素,其示例包括對會話記錄122和歷史控制元素124的表示。會話記錄122表示在通信會話116期間參與者之間的交互的記錄,例如在即時消息會話中所交換的即時消息、在線會議的視頻、語音通話的音頻轉(zhuǎn)錄等??梢詫捰涗?22本地地存儲在客戶端處。另外地或可替代地,會話記錄122可以被上傳至服務(wù)器提供者106并且由服務(wù)器提供者106存儲,如在下文中更加詳細(xì)地描述的。接著,加入通信會話的客戶端可以能夠經(jīng)由與相應(yīng)的通信模塊114相關(guān)聯(lián)的用戶界面來訪問和呈現(xiàn)會話記錄122的一些或全部部分??梢砸愿鞣N方式來配置用戶界面120以呈現(xiàn)會話記錄122,例如,通過示出聊天會話的消息線程、在線協(xié)同的回放等。
在一般的場景中,會話中的兩個初始參與者可以想要將一個或多個新的參與者加入會話。取決于已經(jīng)交換的消息的內(nèi)容以及所加入的人,所述初始參與者可以或可以不想要與新加入的參與者分析會話的歷史。歷史控制元素124提供了一種機制,其用于對向不同的參與者隱藏和暴露的會話記錄122的部分進(jìn)行可視化和調(diào)整。
特別地,歷史控制元素124代表可以被提供以使能對會話記錄122中使得會話的參與者可訪問的部分進(jìn)行控制的各種功能。例如,可以以各種方式來配置歷史控制元素以按個體為基礎(chǔ)(例如,逐個參與者地)指定針對參與者的范圍點125,范圍點125指定對參與者暴露和隱藏的會話記錄的部分。范圍點125可以與時間戳、位置、消息范圍、消息ID、時間窗、消息分組、工作流任務(wù)、類別、和/或可以用于指定和標(biāo)識參與者能夠訪問和不能訪問的會話記錄的部分的其他標(biāo)識符相對應(yīng)??梢詫⒎秶c125和會話記錄一起傳送至服務(wù)提供者106,以使得服務(wù)提供者106能夠根據(jù)范圍點125來控制歷史對參與者的暴露。
作為示例,歷史控制元素124可以被配置為滑塊、條、分隔器、范圍選擇器、縮略圖、轉(zhuǎn)盤、或者可以用于定義會話記錄中的一個或多個范圍點125的其他用戶界面工具。在另一個示例中,歷史控制元素124可以被配置為發(fā)起歷史控制對話框,其可以包括針對多個參與者的公開范圍的可視化,所述公開范圍可以被呈現(xiàn)和/或設(shè)置以控制對會話歷史的參與者討論。
不同的歷史控制元素124可以與會話中的不同的參與者相關(guān)聯(lián)以使能個體化的控制。在一個或多個實現(xiàn)中,與特定的參與者相關(guān)聯(lián)的歷史控制元素124被配置為可視地標(biāo)識會話記錄122的表示內(nèi)的特定參與者能夠訪問的部分。另外地或可替代地,歷史控制元素124可以位于會話記錄122的表示內(nèi)的不同的位置以修改消息對特定參與者的暴露。因此,可以經(jīng)由相應(yīng)的歷史控制元素而將會話記錄122的不同的部分暴露給不同的參與者。
在一個或多個實現(xiàn)中,會話發(fā)起者或擁有者(例如,發(fā)起該會話的參與者)可以對向其他參與者公開的歷史具有主要控制。會話發(fā)起者也可以能夠?qū)⒖刂茪v史的能力授予其他參與者,例如通過進(jìn)行選擇以使得最初被邀請加入在線會話的一個或多個參與者能夠進(jìn)行歷史控制。對與具有對一個或多個其他參與者的控制的參與者而言,可以響應(yīng)于新的參與者加入而暴露歷史控制元素124,以可視地表示和/或控制所暴露的歷史的部分。關(guān)于以下的圖提供了歷史控制元素124的一些說明性示例以及與針對會話歷史控制的技術(shù)有關(guān)的細(xì)節(jié)。
如在圖1中所描繪的服務(wù)提供者106包括用于管理可以通過網(wǎng)絡(luò)108可用的各種資源126的功能。例如,服務(wù)提供者106可以經(jīng)由網(wǎng)頁或通過網(wǎng)絡(luò)所傳送的其他用戶界面來提供各種資源126以用于由一個或多個客戶端經(jīng)由網(wǎng)絡(luò)瀏覽器或其他客戶端應(yīng)用來輸出。服務(wù)提供者106被配置為管理對資源126的訪問、資源的性能、以及用于提供資源126的用戶界面的配置等。服務(wù)提供者106可以表示用于提供各種資源126的一個或多個服務(wù)器設(shè)備。
通常而言,由服務(wù)提供者106使得其可用的資源126可以包括通常由一個或多個提供者通過網(wǎng)絡(luò)使其可用的服務(wù)和/或內(nèi)容的任何合適的組合。服務(wù)的一些示例包括但不限于:搜索服務(wù)、電子郵件服務(wù)、即時消息傳送服務(wù)、在線生產(chǎn)力套件、以及用于控制客戶端對資源126的訪問的認(rèn)證服務(wù)。內(nèi)容可以包括文本、多媒體流、文檔、應(yīng)用文件、照片、音頻/視頻文件動畫、圖像、網(wǎng)頁、網(wǎng)絡(luò)應(yīng)用、設(shè)備應(yīng)用、用于由瀏覽器或其他客戶端應(yīng)用所顯示的內(nèi)容等的各種組合。
可以經(jīng)由服務(wù)提供者可訪問的資源的一個特定的示例是如在圖1中所表示的通信服務(wù)128。通信服務(wù)128代表這樣的服務(wù),其用于執(zhí)行針對通信會話116以及客戶端設(shè)備102與其他客戶端設(shè)備104之間的交互的管理的各種任務(wù)。通信服務(wù)128例如可以用于管理客戶端設(shè)備104的通信會話116的發(fā)起、調(diào)節(jié)、以及終止。通信服務(wù)128可以集成針對以下中的一個或多個的功能:VoIP通話、在線會面和會議、屏幕分享、統(tǒng)一通信和協(xié)同(UC&C)、即時消息傳送、視頻聊天等。通信服務(wù)128還可以被實現(xiàn)為或者被連接至與公共開關(guān)電話網(wǎng)絡(luò)(“PSTN”)進(jìn)行通信的專用分組交換機,以在客戶終端與其他設(shè)備之間啟用語音通信。
通信服務(wù)128還表示用于實現(xiàn)如在上文和下文中所討論的針對會話歷史控制的技術(shù)的服務(wù)器端方面。例如,通信服務(wù)128可以被配置為包括或者以其他方式利用通信會話116的歷史數(shù)據(jù)庫130。特別地,歷史數(shù)據(jù)庫130可以被配置為存儲由客戶端所生成的并且通過通信服務(wù)128所傳送的會話記錄122和范圍點125。通信服務(wù)128可以與客戶端進(jìn)行通信以捕獲客戶端之間的通信的歷史,其可以由存儲在歷史數(shù)據(jù)庫中的會話記錄所反映。因此,除了促進(jìn)通信會話116,通信服務(wù)128可以被配置為保存歷史數(shù)據(jù)庫130,并且還可以被配置為根據(jù)范圍點125來控制對會話記錄122的訪問。
在已經(jīng)考慮了前述示例環(huán)境之后,現(xiàn)在考慮根據(jù)一個或多個實現(xiàn)的針對會話歷史范圍控制的一些進(jìn)一步的細(xì)節(jié)和用戶界面。
示例會話歷史范圍控制細(xì)節(jié)和用戶界面
為了以每參與者為基礎(chǔ)進(jìn)一步示出可以被采用以控制針對通信會話的歷史公開的技術(shù),現(xiàn)在考慮在圖2-7中所描繪的對一些用戶界面示例和場景的討論。通常而言,可以在之后在該文檔中所描述的示例過程的上下文中應(yīng)用關(guān)于上文中和下文中的示例所描述的功能、特征、和概念。此外,關(guān)于該文檔中的不同的圖和示例所描述的功能、特征、和概念可以在彼此之間互換,并且不限于在特定的圖或過程的上下文中的實現(xiàn)。此外,可以一同應(yīng)用和/或以不同的方式組合與本文中不同的代表性操作、過程、和個體的圖相關(guān)聯(lián)的框。因此,關(guān)于本文中的不同的示例環(huán)境、設(shè)備、組件、和過程所描述的個體的功能、特征、和概念可以在任何合適的組合中使用,并且不限于由在該描述中所枚舉的示例所表示的特定的組合。
圖2在200處概括地描繪了這樣的圖,其描繪了與如在本文中所描述的通信模塊114相關(guān)聯(lián)的代表性用戶界面120。示例用戶界面120包括會話顯示部分202,其代表可以在其中顯示會話記錄122的表示的應(yīng)用框架、窗、或其他部分。在這里,會話顯示部分202呈現(xiàn)即時消息傳送會話的參與者之間的消息線程。示例用戶界面120還包括會話信息部分204,其可以被配置為提供與會話的參與者有關(guān)的信息、管理會話的控件等。會話信息部分204還可以提供菜單、控件、按鈕、以及提供通信模塊114的核心功能的其他用戶界面工具。在所描繪的示例中,會話信息部分204示出了三個參與者參與了即時消息傳送會話的可視表示,所述表示包括簡檔照片和名字。會話信息部分204還可以提供用于向?qū)υ捲黾訁⑴c者或從對話移除參與者的功能。還可以使得簡檔信息、聯(lián)系人信息、和/或針對參與者的其他細(xì)節(jié)通過與所述表示的交互(例如,通過在其上點擊、將光標(biāo)懸停在其附近、選擇、或者以其他方式與所述表示交互)而經(jīng)由會話信息部分204可訪問。
如上所述,通信模塊114可以被配置為提供用于網(wǎng)絡(luò)瀏覽、用戶在線指示、視頻通信、在線協(xié)同和會議體驗、即時消息傳送、以及語音通話的經(jīng)集成的功能。這至少是部分地由鏈接部分206所表示的,連接部分206在所示出的示例中包括代表可選擇以發(fā)起電話通話、發(fā)送電子郵件消息、以及訪問聯(lián)系人的功能的圖標(biāo)。用戶界面120還可以提供用于促進(jìn)在會話期間的通信的功能。例如,在圖2中描繪了消息輸入框208,其被配置為使能輸入即時消息以用于傳送給會話的參與者。
根據(jù)在本文中所描述的技術(shù),可以將如先前所討論的一個或多個歷史控制元素暴露在用戶界面120中以促進(jìn)對給參與者所暴露的會話記錄的控制。在一個或多個實現(xiàn)中,歷史控制元素124被配置為直接從會話記錄的表示內(nèi)(例如,在示例會話顯示部分202中)為參與者提供對范圍點125的可視化和控制??梢砸愿鞣N方式使得歷史控制元素124在用戶界面中可訪問。例如,可以響應(yīng)于參與者加入到會話中,而將與參與者相關(guān)聯(lián)的控件選擇性地暴露給會話發(fā)起者和/或其他現(xiàn)有的參與者。歷史控制元素124還可以作為通過在會話信息部分204中點擊參與者表示而持續(xù)呈現(xiàn)的控件、可選擇的菜單項來提供、或以其它方式提供。在實現(xiàn)中,對在參與者加入對話之前所交換的消息的訪問是基于可配置的默認(rèn)設(shè)置來限制的,以使得在沒有選擇揭示歷史的情況下保持隱私性。在至少一些實現(xiàn)中,歷史控制元素124可以重新定位至關(guān)于會話記錄的表示的不同的位置處,以指定參與者的范圍點并且從而改變參與者對歷史的訪問??梢砸愿鞣N方式進(jìn)行重新定位,例如通過選擇和拖拽操作、滑動控件、點擊以選擇控件并且接著選擇新的位置、突出顯示消息的一個或多個分組等。
在所表示的場景中,以滑塊控件210為形式的示例歷史控制元素124被示出為與參與者“Mike”相關(guān)聯(lián)。也構(gòu)想了示例歷史控制元素的多種其他配置,其示例包括但不限于轉(zhuǎn)盤選擇器、消息范圍選擇器、使能選擇設(shè)置歷史點的繪畫記錄的縮略視圖、或者歷史對話等。在這里,滑塊控件210位于Mike加入對話的會話記錄中的點處。該初始位置是響應(yīng)于將Mike作為參與者加入而默認(rèn)地自動設(shè)置的?;瑝K控件210被配置為指代時間戳、消息ID、或者控制會話記錄中的消息中的那些消息對Mike可訪問的其他范圍點。
在這里,示例滑塊控件210可視地表示使其對Mike可獲取的消息與使其對Mike不可獲取的消息之間的分隔。特別地,在與當(dāng)Mike被邀請至對話和/或加入對話時所建立的范圍點125相對應(yīng)的位置處,虛線在消息之間延伸穿過會話顯示部分202。范圍點125可以根據(jù)時間戳和/或特定的消息標(biāo)識符來定義?;瑝K控件210頁被標(biāo)記有Mike的名字以指示滑塊與Mike相關(guān)聯(lián)。
在該示例中,Mike能夠訪問滑塊控件210下方與在Mike加入之后所進(jìn)行的交換相對應(yīng)的消息,但是不能夠訪問滑塊210上方的在Mike加入之前進(jìn)行的消息。會話發(fā)起者“Dan”或者“我”(在該示例中)和/或參與先前的對話的“Robyn”可以決定是否向Mike揭示歷史中的一些或全部以及是否操作滑塊控件210以重新定位控件,并且如果他們選擇這樣做,則改變范圍點125。例如,可以與滑塊控件210進(jìn)行交互212以修改位置、調(diào)整對應(yīng)的范圍點、并且從而改變Mike對消息歷史的訪問。在所示出的示例中,示出了光標(biāo)在滑塊控件210附近懸停,這使得指示“滑動以改變所示出的歷史”的通知出現(xiàn)。向上滑動滑塊控件210或者以其他方式將控件重新定位至?xí)捰涗浿械妮^早的點可以向Mike揭示額外的歷史。類似地,向下滑動滑塊控件210或者以其他方式將控件重新定位至較晚的點可以隱藏由會話記錄所反映的更多的歷史。
應(yīng)當(dāng)注意的是,在圖2中所示出的示例用戶界面120與可以被提供給初始參與者(例如,Dan和Robyn)的視圖相對應(yīng)。由于由Mike針對該會話所采用的通信模塊114僅僅能夠訪問歷史中的一些歷史,因此Mike的視圖可以是不同的。特別地,Mike的視圖可以包括在Mike加入后滑塊控件310下方的僅僅三條消息。額外地,Mike的視圖可以不包括滑塊控件210,這是因為Mike不具有對他自己的訪問的控制。因此,可以根據(jù)在上文和下文中所描述的技術(shù)、基于參與者的訪問等級和/或相關(guān)聯(lián)的范圍點而將不同的視圖暴露給不同的參與者。
圖3在300處一般性地描繪了這樣的圖,其描繪了示出了另一個參與者“Jeff”的加入的圖2的代表性用戶界面120。示例用戶界面120再一次包括會話顯示部分202,其表示圖2的消息線程的繼續(xù)。會話記錄中的先前的歷史可以通過向上滾動來訪問,例如以返回圖2的視圖。在這里,示出了與Jeff相關(guān)聯(lián)的另一個滑塊控件302?;瑝K控件302可以以與Mike相關(guān)聯(lián)的滑塊控件210相同的方式來操作以調(diào)整與Jeff相關(guān)聯(lián)的范圍點125。例如,交換304可以使得滑塊控件302重新定位以向Jeff示出更多或更少的會話記錄122。在該示例中,交互304被表示為觸摸交互。通常而言,歷史控制元素124可以與個體參與者相關(guān)聯(lián),例如滑塊與圖2和圖3中的Mike和Jeff相關(guān)聯(lián)。此外,與不同的參與者相關(guān)聯(lián)的歷史控制元素124可以個體地被操作以設(shè)置對歷史的訪問,并且由此使得不同的視圖暴露給不同的參與者。
圖4在400處概括地描繪了用戶界面的會話顯示部分202圖,其表示用于修改向參與者暴露的歷史的歷史控制元素124的操作。在該示例中,歷史控制元素124倍配置為圖標(biāo)402,其可視地表示會話記錄內(nèi)針對參與者的范圍點125。所描繪的示例中的圖標(biāo)402與用戶Jeff相對應(yīng),并且包括關(guān)于車的Jeff的簡檔圖片。還可以構(gòu)想圖標(biāo)的其他配置,例如包括參與者名字、首字母、類別標(biāo)簽、頭像、或適用于在參與者之間進(jìn)行標(biāo)識和區(qū)別的其他信息的圖標(biāo)。諸如圖2和圖3中的虛線之類的分隔線可以結(jié)合圖標(biāo)402來使用或者可以在不同的實現(xiàn)中被省略(如圖所示)。
在這里,圖標(biāo)402被描述為位于會話記錄122的表示內(nèi)的范圍點A處。圖標(biāo)上方的部分404表示向參與者Jeff隱藏的歷史。部分406表示向參與者Jeff暴露的歷史。如所表示的,可以進(jìn)行與圖標(biāo)402的交互408以調(diào)整范圍點“A”并且改變相應(yīng)地公開的歷史。例如,交互408可以例如通過將圖標(biāo)向上拖拽至范圍點B以使得將圖標(biāo)402重新定位至范圍點“B”。該重新定位向參與者Jeff揭示了在點A與點B之間的額外的歷史。在另一個示例中,交互408可以例如通過將圖標(biāo)向下拖拽至范圍點“C”以使得圖標(biāo)402重新定位至范圍點“C”。該重新定位向參與者Jeff隱藏了在點A與點C之間的額外的歷史。
圖5在500處概括地描繪了用戶界面120的會話顯示部分202的圖,其表示不同的歷史控制元素124與多個不同的參與者的關(guān)聯(lián)。例如,以相應(yīng)的圖標(biāo)502、504、和506的形式描繪了參與者Jeff、Mike、和Robyn的歷史控制元素124。在該示例中,將圖標(biāo)與延伸穿過會話顯示部分202內(nèi)的會話記錄122的表示的分隔虛線進(jìn)行組合??梢允褂迷诒疚闹兴枋龅母鞣N技術(shù)而將圖標(biāo)502、504、506獨立地定位和重新定位,以針對對應(yīng)的參與者Jeff、Mike、和Robyn而獨立地設(shè)置范圍點。
盡管關(guān)于圖2至圖4討論了以滑塊控件和圖標(biāo)為形式的歷史控制元素124的示例實現(xiàn),但構(gòu)想到多種其他配置。例如,可以采用其他可滑動或可移動控件以提供對所暴露的歷史的可視化,例如,頭像、文本標(biāo)簽、評論氣泡、會話記錄的突出顯示的區(qū)域、邊界框、分隔塊、標(biāo)記、和/或與不同的參與者相關(guān)聯(lián)的其他用戶界面工具。還可以提供切換控件以選擇性地示出或隱藏歷史公開可視化。在一個或多個實現(xiàn)中,可以選擇或去選擇會話歷史的多個不同的非連續(xù)部分以用于暴露給特定的參與者,以使得歷史的一些所暴露的部分可以與其他部分是不連續(xù)的和/或歷史的一些受限制的部分可以與其他受限制的部分是不連續(xù)的。非連續(xù)部分可以是使用以下控件而針對參與者指定的:多個滑塊、用于突出顯示會話記錄的多個部分和/或消息的分組的范圍選擇器控件、可以位于會話記錄的表示通篇的一組開始和結(jié)束分隔線等。
還可以提供用于如所約束的指定個體消息或會話記錄的部分的功能。例如,復(fù)選框、切換、開關(guān)、或者與個體消息相關(guān)聯(lián)的設(shè)置控件可以被暴露在用戶界面120中,并且用于以消息為基礎(chǔ)對消息設(shè)置受限制的或不受限制的狀態(tài)。可以將對消息的狀態(tài)的指示傳達(dá)至服務(wù)提供者以防止將受限制的消息暴露給對應(yīng)的參與者。除了選擇范圍點以指定被暴露和被隱藏的時間窗和/或消息的分組之外,還可以采用用于限制個體消息的選擇。因此,除了控制對基于范圍點與參與者的關(guān)聯(lián)而形成的時間窗和分組內(nèi)的會話記錄的訪問之外,還可以基于個體消息的受限制的狀態(tài)而阻止對所指定的時間窗或分組之外的歷史中的至少一些個體消息的訪問。
在另一個示例中,歷史控制元素124還可以被配置為發(fā)起歷史控制對話框,其被配置為提供對暴露給一個或多個參與者的歷史的可視化以及用于修改與所述參與者相關(guān)聯(lián)的歷史設(shè)置的功能。在實現(xiàn)中,可以離開其中顯示會話記錄的表示的會話顯示部分202而呈現(xiàn)歷史控制對話框,例如,經(jīng)由彈出窗口、滑出對話框、用戶界面120的不同的部分或框架等。
作為示例,考慮圖6,其在600處一般性地描繪了根據(jù)一個或多個實現(xiàn)的歷史控制元素用于訪問歷史控制對話框的場景。特別地,歷史控件602被描繪為經(jīng)由通信模塊114的用戶界面120而被暴露。在該示例中,歷史控件602是可以位于標(biāo)題部分、菜單、邊欄、工具欄、或用戶界面120的其他部分并且可以是與會話顯示部分202分離和區(qū)別的部分的可選擇元素。如在圖6中所表示的,與歷史控件602的交互604使得可以以各種方式配置的歷史控制對話框606的輸出提供對暴露給參與通信會話116的參與者的歷史的控制。
圖7是在圖700處一般性地描繪了根據(jù)一個或多個實現(xiàn)的歷史控制對話框606的說明性示例的細(xì)節(jié)的圖。在所描繪的示例中,歷史控制對話框606被配置為與對應(yīng)的歷史設(shè)置704相關(guān)聯(lián)地表示多個參與者702??梢圆捎枚喾N配置來對歷史設(shè)置704的可視化和控制。在這里,將多個參與者702與對應(yīng)的設(shè)置信息和控件一起以網(wǎng)格形式列出。作為示例而非限制,與參與者中的每個參與者相關(guān)聯(lián)的歷史設(shè)置704可以包括:用于選擇性地打開或關(guān)閉對歷史的訪問的切換開關(guān)706或者其他類似的控件、用于描述當(dāng)前對歷史的訪問的描述708(例如,全部歷史、歷史關(guān)閉、部分歷史等)、以及用于以每參與者為基礎(chǔ)來修改設(shè)置的控制鏈接710或其他類似的元素。例如,對控制鏈接710的選擇可以拉起通過其可以使用在本文中所描述的技術(shù)來選擇和/或修改范圍點125的縮略視圖或者會話記錄122的其他表示。在另一個示例中,控制鏈路710被配置為使能輸入時間戳、時間窗、或者消息id以指定范圍點125并且從而對所公開的歷史進(jìn)行對應(yīng)的調(diào)整。
在考慮了前述示例細(xì)節(jié)和用戶界面之后,現(xiàn)在考慮根據(jù)一個或多個實現(xiàn)的對針對媒體流信任顯示的以下示例過程的討論。
示例過程
以下的討論描述了可以利用先前描述的系統(tǒng)和設(shè)備來實現(xiàn)的技術(shù)。過程中的每個過程的方面可以以硬件、固件、或軟件、或其組合來實現(xiàn)。所述過程被示出為指定了由一個或多個設(shè)備所執(zhí)行的一組框,并且不一定限于所示出的由相應(yīng)的框執(zhí)行操作的順序。在以下討論的部分中,可以對圖1的環(huán)境100和圖2-7的示例進(jìn)行參考。例如,過程的方面可以由適當(dāng)?shù)嘏渲玫挠嬎阍O(shè)備來執(zhí)行,例如,包括或者以其他方式利用通信模塊114和/或歷史管理器模塊118的客戶端設(shè)備。所述過程的方面還可以由一個或多個服務(wù)器設(shè)備來執(zhí)行,例如,與被配置為提供通信服務(wù)128的服務(wù)提供者106相關(guān)聯(lián)的服務(wù)器。
圖8是描繪了根據(jù)一個或多個實現(xiàn)的用于控制對會話記錄的暴露的示例過程800的流程圖。捕獲在經(jīng)由服務(wù)提供者所建立的通信會話的參與者之間所交換的消息的歷史(框802)。例如,如先前所描述的會話記錄122可以是由通信服務(wù)128結(jié)合通信會話116所生成的,并且被存儲在歷史數(shù)據(jù)庫130中。可以由通信服務(wù)128來采用會話記錄122以將會話歷史的視圖供應(yīng)至不同的客戶端。根據(jù)在本文中所描述的技術(shù),可以基于范圍點125與會話的參與者的關(guān)聯(lián)而將不同的視圖暴露給不同的客戶端。
例如,響應(yīng)于新的參與者加入對話,接收用于向新的參與者暴露所捕獲的歷史的時間窗的指示(框804)。可以由通信服務(wù)128基于由會話中的參與者使用由通過相應(yīng)的客戶端設(shè)備102所實現(xiàn)的通信模塊114所暴露的歷史控制元素124所進(jìn)行的選擇來接收關(guān)于時間窗的信息。時間窗可以與一個或多個范圍點相對應(yīng),所述范圍點125可以以關(guān)于上文的圖1-7的示例和下文的圖9的過程所討論的各種方式來設(shè)置和修改??梢圆捎迷谕ㄐ拍K114和通信服務(wù)128之間所傳送的消息來傳達(dá)范圍點以由通信服務(wù)128使用從而控制對會話歷史的訪問。關(guān)于范圍點的消息和其他知識可以被生成并傳送至通信服務(wù)128,以響應(yīng)于在與會話參與者相關(guān)聯(lián)的客戶端設(shè)備102處經(jīng)由歷史控制元素所進(jìn)行的選擇。
作為示例而非限制,時間窗可以是由將會話記錄分成向和不向?qū)?yīng)的參與者暴露的多個部分的一個或多個時間戳定義的。部分還可以使用消息ID、針對腳本化的會話(例如,客戶服務(wù)聊天)所定義的工作流分段或類別、或者除了或代替使用時間戳的其他數(shù)據(jù)來標(biāo)識。在一種方法中,可以采用單個時間戳來指定在其后可以將歷史暴露給用戶的時間點。另外地或可替代地,可以采用時間范圍或消息范圍來指定被暴露的歷史的部分和不被暴露的歷史的部分。
接著,根據(jù)所指示的所捕獲的歷史的時間窗來在通信會話期間控制向新的參與者暴露的歷史(框806)。例如,通信服務(wù)128可以被配置為根據(jù)針對不同的參與者中的每個參與者所建立的窗口和/或其他范圍點125,而將會話歷史的不同的部分暴露給通信會話的不同的參與者。更加特別地,通信模塊128可以被配置為將關(guān)于會話歷史的數(shù)據(jù)供應(yīng)至客戶端通信模塊,所述數(shù)據(jù)足以使能形成針對通信會話116的用戶界面,所述用戶界面包括限制于時間窗的歷史的個體化的視圖和/或針對不同的參與者所指定的其他范圍點125。為了這樣做,通信服務(wù)可以解析會話記錄122以確定歷史的部分,所述歷史的部分被指定為基于對應(yīng)的范圍點125針對每個參與者而被限制。接著,通信服務(wù)128可以配置經(jīng)修改的會話記錄以用于向與每個參與者相關(guān)聯(lián)的通信模塊進(jìn)行通信,其省略了被指定為受限制的歷史的部分。
在沒有指示針對參與者的時間窗的明確的選擇的情況下,通信服務(wù)128可以根據(jù)可配置的默認(rèn)設(shè)置而阻止對歷史的默認(rèn)訪問。這可以通過將范圍點125默認(rèn)地設(shè)置到與在其處參與者加入該會話的時間點相對應(yīng)的時間戳來進(jìn)行,這阻止參與者訪問在參與者加入之前所交換的消息的歷史。在提供了用于使能除了指示范圍點/時間窗還將個體消息指定為受限制的功能的實現(xiàn)中,即使當(dāng)被指定為受限制的個體消息落到由時間窗或其他范圍點所限定的部分之外時,通信服務(wù)128還可以控制對那些消息的暴露。從而,由通信服務(wù)128供應(yīng)至客戶端通信模塊的數(shù)據(jù)可以反映根據(jù)默認(rèn)設(shè)置中的一個或多個默認(rèn)設(shè)置、受限制的個體消息狀態(tài)、或者與參與者相關(guān)聯(lián)的范圍點而被修改和過濾的會話記錄,如在本文中所描述的。
圖9是描繪了根據(jù)一個或多個實現(xiàn)的用于經(jīng)由歷史控制元素針對參與者而選擇歷史的示例過程900的流程圖。輸出通信模塊的用戶界面,所述用戶界面被配置為顯示消息的歷史,所述消息是在通過經(jīng)由服務(wù)提供者所提供的通信服務(wù)所建立的通信會話中在參與者之間所交換(框902)。構(gòu)想了可以提供通信會話116的功能的通信模塊114的用戶界面120的各種配置,例如,關(guān)于圖1-8所描述的示例用戶界面120??梢越?jīng)由與通信會話的參與者相對應(yīng)的相應(yīng)的客戶端設(shè)備102來輸出這樣的用戶界面。經(jīng)由可選擇以將范圍點與所述參與者中的至少一個參與者相關(guān)聯(lián)的用戶界面來暴露歷史控制元素,范圍點定義了使其對至少一個參與者可用的歷史的部分(框904)。例如,通信模塊114可以被配置為包括或利用歷史管理器模塊118,歷史管理器模塊118被配置為選擇性地暴露可以用于控制暴露給參與者的會話的歷史控制元素。構(gòu)想到歷史控制元素124的各種配置,在先前所討論的圖1-8的討論通篇中描述了其示例。例如,歷史控制元素可以被配置為與參與者相關(guān)聯(lián)的滑塊控件,其在用戶界面中與反映歷史的會話記錄的表示相結(jié)合地被暴露?;瑝K控件可以被配置為位于會話記錄內(nèi)的位置處,以指示在其后歷史對參與者可訪問的會話記錄中的點。在另一個示例中,歷史控制元素用于發(fā)起歷史控制對話框,其被配置為使能針對通信會話的參與者而切換歷史可獲取性的開關(guān)和/或選擇范圍點以與參與者相關(guān)聯(lián),如關(guān)于圖6和圖7所討論的。在另一個示例中,歷史控制元素可以被配置為范圍控制選擇器,其用于通過選擇在用戶界面中所顯示的一組或多組消息來指定范圍點,例如,通過突出顯示不同的部分、定位分隔器、選擇個體消息或消息分組等。也構(gòu)想到其他類型的歷史控制元素。
獲得經(jīng)由與歷史控制元素的交互針對至少一個參與者的對范圍點的選擇(框906),并且接著,將所選擇的范圍點的指示傳送至服務(wù)提供者,其有效地阻止至少一個參與者訪問根據(jù)所選擇的范圍點而沒有使其可用的歷史的部分(框908)。例如,歷史管理器模塊118還可以被配置為監(jiān)測與歷史控制元素124的交互并且識別經(jīng)由歷史控制元素124來進(jìn)行的針對歷史點125的選擇。歷史管理器模塊118可以形成關(guān)于用于傳送至服務(wù)提供者106的通信服務(wù)128的歷史點。在實現(xiàn)中,可以響應(yīng)于與歷史控制元素124的交互而生成被配置為指示時間窗、時間戳、消息id、或?qū)Ψ秶c的其他指示的消息,并且將其發(fā)送至通信服務(wù)128以使能由服務(wù)來控制歷史。例如,消息可以被配置為向通信服務(wù)128傳達(dá)與參與者相關(guān)聯(lián)的時間戳,其指示其后使歷史對參與者可訪問的會話中的時刻。接著,通信服務(wù)128可以根據(jù)在本文中所討論的技術(shù)基于時間戳來控制將哪部分歷史暴露給參與者。
在已經(jīng)討論了一些示例過程之后,現(xiàn)在考慮可以采用以實現(xiàn)在本文中在一個或多個實現(xiàn)中所描述的技術(shù)的方面的對示例系統(tǒng)和設(shè)備的討論。
示例系統(tǒng)和設(shè)備
圖10在1000處一般性地示出了示例系統(tǒng),其包括代表可以實現(xiàn)在本文中所描述的各種技術(shù)的一個或多個計算系統(tǒng)和/或設(shè)備的示例計算設(shè)備1002。計算設(shè)備1002可以是例如服務(wù)提供商的服務(wù)器、與客戶端相關(guān)聯(lián)的設(shè)備(例如,客戶端設(shè)備)、片上系統(tǒng)、和/或任何其它合適的計算設(shè)備或計算系統(tǒng)。
如圖所示的示例計算設(shè)備1002包括彼此通信地耦合的處理系統(tǒng)1004、一個或多個計算機可讀介質(zhì)1006、以及一個或多個I/O接口1008。盡管未示出,計算設(shè)備1002還可以包括將各種組件彼此耦合的系統(tǒng)總線或其它數(shù)據(jù)和命令傳輸系統(tǒng)。系統(tǒng)總線可以包括不同的總線結(jié)構(gòu)中的任何一個或組合,所述不同的總線結(jié)構(gòu)例如存儲器總線或存儲器控制器、外圍總線、通用串行總線、和/或使用多種總線架構(gòu)中的任何一種的處理器或本地總線。還可以構(gòu)想多種其它示例,例如,控制和數(shù)據(jù)線。
處理系統(tǒng)1004代表用于使用硬件來執(zhí)行一個或多個操作的功能。從而,處理系統(tǒng)1004被示出為包括可以被配置為處理器、功能塊等的硬件元件1010。這可以包括以硬件來作為專用集成電路或者使用一個或多個半導(dǎo)體形成的其它邏輯設(shè)備的實現(xiàn)。硬件元件1010不由形成其的材料或者其中所采用的處理機制來限制。例如,處理器可以由半導(dǎo)體和/或晶體管(例如,電子集成電路(IC))構(gòu)成。在這樣的上下文中,處理器可執(zhí)行指令可以是電子可執(zhí)行指令。
計算機可讀介質(zhì)1006被示出為包括存儲器/存儲設(shè)備1012。存儲器/存儲設(shè)備1012表示與一個或多個計算機可讀介質(zhì)相關(guān)聯(lián)的存儲器/存儲設(shè)備容量。存儲器/存儲設(shè)備1012可以包括易失性介質(zhì)(例如,隨機存取存儲器(RAM))和/或非易失性介質(zhì)(例如,只讀存儲器(ROM)、閃速存儲器、光盤、磁盤等)。存儲器/存儲設(shè)備1012可以包括固定的介質(zhì)(例如,RAM、ROM、固定的硬盤驅(qū)動器等)以及可移動介質(zhì)(例如,閃速存儲器、可移動硬盤驅(qū)動器、光盤等)。計算機可讀介質(zhì)1006可以以如在下文中所進(jìn)一步描述的多種其它的方式來配置。
輸入/輸出接口1008代表用于允許用戶向計算設(shè)備1002輸入命令和信息,并且還允許利用各種輸入/輸出設(shè)備向用戶和/或其它組件或設(shè)備呈現(xiàn)該信息的功能。輸入設(shè)備的示例包括鍵盤、光標(biāo)控制設(shè)備(例如,鼠標(biāo))、麥克風(fēng)、掃描儀、觸摸功能(例如,被配置以對物理接觸進(jìn)行檢測的電容或其它傳感器)、相機(例如,可以采用可見或非可見波長(例如,紅外頻率)來檢測運動不包含作為手勢的觸摸的)等。輸出設(shè)備的示例包括顯示設(shè)備(例如,監(jiān)視器或投影儀)、揚聲器、打印機、網(wǎng)絡(luò)卡、觸覺反應(yīng)設(shè)備等。因此,計算設(shè)備1002可以用如在下文中所進(jìn)一步描述的多種方式被配置以支持用戶交互。
可以在本文中在軟件、硬件元件、或程序模塊的一般性的上下文中描述各種技術(shù)。通常而言,這樣的技術(shù)包括執(zhí)行特定的任務(wù)或?qū)崿F(xiàn)特定的抽象數(shù)據(jù)類型的例程、程序、對象、元件、組件、數(shù)據(jù)結(jié)構(gòu)等。如在本文中所使用的術(shù)語“模塊”、“功能”、和“組件”通常表示軟件、固件、硬件、或其組合。在本文中所描述的技術(shù)的特征是不依賴平臺的,意思是可以在具有多種處理器的多種商業(yè)計算平臺上實現(xiàn)這些技術(shù)。
所描述的模塊和技術(shù)的實現(xiàn)可以存儲在一些形式的計算機可讀介質(zhì)上或者跨一些形式的計算機可讀介質(zhì)傳輸。計算機可讀介質(zhì)可以包括可以由計算設(shè)備1002訪問的多種介質(zhì)。作為示例而非限制,計算機可讀介質(zhì)可以包括“計算機可讀存儲介質(zhì)”和“通信介質(zhì)”。
“計算機可讀存儲介質(zhì)”指的是與僅僅是信號傳輸、載波、或信號本身相反的支持信息的存儲的介質(zhì)和/或設(shè)備。因此,計算機可讀存儲介質(zhì)不包括信號承載介質(zhì)或信號本身。計算機可讀存儲介質(zhì)包括以適合于存儲信息(例如,計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊、邏輯元件/電路、或其它數(shù)據(jù))的方法或技術(shù)實現(xiàn)的硬件,例如易失性和非易失性、可移動和不可移動介質(zhì)和/或存儲設(shè)備。計算機可讀存儲介質(zhì)的示例可以包括但不限于,RAM、ROM、EEPROM、閃速存儲器、或者其它存儲器技術(shù)、CD-ROM、數(shù)字通用盤(DVD)或其它光存儲、硬盤、盒式磁帶、磁帶、磁盤存儲或其它磁存儲設(shè)備、或者其它存儲設(shè)備、有形的介質(zhì)、或者適合于存儲期望的信息并且可以由計算機訪問的制品。
“通信介質(zhì)”可以指的是被配置以將指令傳輸(例如,經(jīng)由網(wǎng)絡(luò))至計算機設(shè)備1002的硬件的信號承載介質(zhì)。信號介質(zhì)通??梢詫嵤┯嬎銠C可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊、或經(jīng)調(diào)制的數(shù)據(jù)信號中的其它數(shù)據(jù),例如,載波、數(shù)據(jù)信號、或其它傳輸機制。通信介質(zhì)還包括任何信息傳遞介質(zhì)。術(shù)語“經(jīng)調(diào)制的數(shù)據(jù)信號”意指將其特征中的一個或多個以將信息編碼在信號中的方式來設(shè)置或改變的信號。作為示例而非限制,通信介質(zhì)包括有線介質(zhì)(例如,有線網(wǎng)絡(luò)或直接連接)和無線介質(zhì)(例如,聲學(xué)、RF、紅外、和其它無線介質(zhì))。
如前所述,硬件元件1010和計算機可讀介質(zhì)1006代表以硬件形式實現(xiàn)的指令、模塊、可編程設(shè)備邏輯和/或固定的設(shè)備邏輯,其可以在一些實施例中被采用以實現(xiàn)在本文中所描述的技術(shù)中的至少一些方面。硬件元件可以包括集成電路或片上系統(tǒng)的組件、專用集成電路(ASIC)、現(xiàn)場可編程門陣列(FPGA)、復(fù)雜可編程邏輯設(shè)備(CPLD)、以及硅或其它硬件設(shè)備中的其它實現(xiàn)。在該上下文中,硬件元件可以運行為執(zhí)行由指令、模塊、和/或邏輯所定義的程序任務(wù)的處理設(shè)備,所述指令、模塊和/或邏輯由被使用以存儲指令以用于執(zhí)行的硬件元件以及硬件設(shè)備(例如,之前所描述的計算機可讀存儲介質(zhì))來實施。
也可以采用上述的組合來實現(xiàn)在本文中所描述的各種技術(shù)和模塊。從而,軟件、硬件、或程序模塊(包括應(yīng)用112、通信模塊114、歷史管理器模塊118、通信服務(wù)128)和其它程序模塊可以被實現(xiàn)為在某種形式的計算機可讀存儲介質(zhì)上實施和/或由一個或多個硬件元件1010實施的一個或多個指令和/或邏輯。計算設(shè)備1002可以被配置以實現(xiàn)對應(yīng)于軟件和/或硬件模塊的特定的指令和/或功能。從而,可以由計算設(shè)備1002作為軟件執(zhí)行的模塊作為模塊的實現(xiàn)可以至少部分地以硬件(例如,通過對處理系統(tǒng)的計算機可讀存儲介質(zhì)和/或硬件元件1010的使用)來完成。指令和/或功能可以由制品(例如,一個或多個計算設(shè)備1002和/或處理系統(tǒng)1004)執(zhí)行/操作以實現(xiàn)在本文中所描述的技術(shù)、模塊、和示例。
如在圖10中進(jìn)一步示出的,當(dāng)在個人計算機(PC)、電視設(shè)備、和/或移動設(shè)備上運行應(yīng)用時,示例系統(tǒng)1000支持針對無縫的用戶體驗的普遍的環(huán)境。對于當(dāng)在使用應(yīng)用程序、玩可視游戲、觀看視頻等的過程中從一個設(shè)備轉(zhuǎn)移到下一個時的普通的用戶體驗而言,服務(wù)和應(yīng)用在所有三種環(huán)境中大體相似地運行。
在示例系統(tǒng)1000中,多個設(shè)備通過中央計算設(shè)備被互連。中央計算設(shè)備可以對于多個設(shè)備來說是本地的或者可以遠(yuǎn)程于多個設(shè)備。在一個實施例中,中央計算設(shè)備可以是通過網(wǎng)絡(luò)、互聯(lián)網(wǎng)、或其它數(shù)據(jù)通信鏈路連接至多個設(shè)備的一個或多個服務(wù)器計算機的云。
在一個實施例中,該互連架構(gòu)支持待跨多個設(shè)備而被傳遞以向多個設(shè)備的用戶提供共同和無縫的體驗的功能。多個設(shè)備中的每個都可以具有不同的物理要求和能力,并且中央計算設(shè)備使用平臺以使能夠?qū)⒓柔槍υ撛O(shè)備定制并且還對所有設(shè)備共同的體驗傳遞至設(shè)備。在一個實施例中,創(chuàng)建了一類目標(biāo)設(shè)備,并且針對一般類型的設(shè)備來定制體驗。可以由設(shè)備的物理特征、使用類型、或者其它共同的特性來定義設(shè)備的類。
在各種實現(xiàn)中,計算設(shè)備1002可以假設(shè)多種不同的配置,例如,以供計算機1014、移動1016、以及電視1018使用。這些配置中的每個都包括可以具有一般不同結(jié)構(gòu)和能力的設(shè)備,并且因此計算設(shè)備1002可以根據(jù)不同的設(shè)備類中的一個或多個而被配置。例如,計算設(shè)備1002可以被實現(xiàn)為設(shè)備的計算機1014類,該類包括個人計算機、臺式計算機、多屏幕計算機、膝上型計算機、上網(wǎng)本等。
計算設(shè)備1002還可以被實現(xiàn)為設(shè)備的移動1016類,該類包括移動設(shè)備,例如,移動電話、便攜式音樂播放機、便攜式游戲設(shè)備、平板計算機、多屏幕計算機等。計算設(shè)備1002還可以被實現(xiàn)為設(shè)備的電視1018類,其包括具有或連接至隨意查看環(huán)境中的通常較大的屏幕的設(shè)備的。這些設(shè)備包括電視、機頂盒、游戲控制器等。
在本文中所描述的技術(shù)可以由計算設(shè)備1002的這些各種配置支持,并且不限于在本文中所描述的技術(shù)的具體的示例。這是通過將歷史管理器模塊118包括在計算設(shè)備1002上而示出的。歷史管理器模塊118和其他模塊的功能也可以全部或部分地通過對分布式系統(tǒng)的使用(例如,如在下文中所描述的通過經(jīng)由平臺1022的“云”1020)而被實現(xiàn)。
云1020包括和/或代表資源1024的平臺1022。平臺1022提取了云1020的硬件(例如,服務(wù)器)和軟件資源的基礎(chǔ)功能。資源1024可以包括當(dāng)在遠(yuǎn)程于計算設(shè)備1002的服務(wù)器上執(zhí)行計算機處理時可以被使用的應(yīng)用和/或數(shù)據(jù)。資源1024還可以包括通過互聯(lián)網(wǎng)和/或通過訂閱者網(wǎng)絡(luò)(例如,蜂窩或Wi-Fi網(wǎng)絡(luò))提供的服務(wù)。
平臺1022可以提取資源和功能以將計算設(shè)備1002與其它計算設(shè)備進(jìn)行連接。平臺1022還可以用來提取資源的放縮,以對針對經(jīng)由平臺1022所實現(xiàn)的資源1024的所遇到的需求而提供對應(yīng)的放縮等級。從而,在經(jīng)互連的設(shè)備實施例中,在本文中所描述的功能的實現(xiàn)可以遍布系統(tǒng)1000而分布。例如,功能可以被部分地在計算設(shè)備1002上被實現(xiàn),以及經(jīng)由提取云1020的功能的平臺1022而被實現(xiàn)。
示例實現(xiàn)
在本文中所描述的會話歷史范圍控件的示例實現(xiàn)包括但不限于以下示例中的一個或多個示例的一個或任何組合:
一種由計算設(shè)備所實現(xiàn)的方法,包括:捕獲在經(jīng)由服務(wù)提供者所建立的通信會話的參與者之間所交換的消息歷史;響應(yīng)于新的參與者加入對話,接收指示暴露給所述新的參與者的所捕獲的歷史的時間窗;以及根據(jù)所指示的所述所捕獲的歷史的所述時間窗來在通信會話期間控制所述歷史對所述新的參與者的暴露。
如在上文中所描述的方法,其中,對所述歷史的暴露進(jìn)行控制包括:在沒有指示所述時間窗的明確的選擇的情況下默認(rèn)地阻止對所述歷史的訪問。
如在上文中所描述的方法,其中,對所述歷史的暴露進(jìn)行控制包括:將與所述歷史有關(guān)的數(shù)據(jù)供應(yīng)至與所述新的參與者相對應(yīng)的通信模塊,所述數(shù)據(jù)足以使得所述通信模塊能夠形成針對包括所述歷史的所述通信會話的用戶界面,所供應(yīng)的與所述歷史有關(guān)的所述數(shù)據(jù)被限制于所述時間窗。
如在上文中所描述的方法,其中,接收對所述時間窗的指示包括:從與所述參與者中的一個參與者相關(guān)聯(lián)的通信模塊獲得消息,所述消息指定在其后所述歷史能夠被暴露給用戶的時間點。
如在上文中所描述的方法,其中,所述指示是響應(yīng)于經(jīng)由歷史控制元素而進(jìn)行的用于指定所述時間窗的選擇而生成的,所述歷史控制元素是在經(jīng)由與所述參與者中的一個參與者相關(guān)聯(lián)的通信模塊所輸出的所述通信會話的用戶界面中提供的。
如在上文中所描述的方法,其中,所述通信會話包括支持經(jīng)由由與所述參與者相關(guān)聯(lián)的客戶端設(shè)備所執(zhí)行的相應(yīng)的通信模塊在所述參與者之間的實時音頻和視頻的交換的基于網(wǎng)絡(luò)的實時通信會話。
如在上文中所描述的方法,其中,所述通信會話包括支持經(jīng)由由與所述參與者相關(guān)聯(lián)的客戶端設(shè)備所執(zhí)行的相應(yīng)的通信模塊在所述參與者之間的即時消息的交換的即時消息傳送會話。
如在上文中所描述的方法,其中,對所述歷史進(jìn)行控制還包括:阻止對被指定為受限制的所述時間窗之外的所述歷史中的一個或多個個體消息的訪問,所述指示被配置為除了指示所述時間窗口之外還傳達(dá)將一個或多個個體消息指定為受限制的。
如在上文中所描述的方法,還包括:解析所述歷史以確定被指定為受限制的所述歷史的部分;以及配置經(jīng)修改的會話記錄以用于向與所述新的參與者相關(guān)聯(lián)的通信模塊傳送,其省略了被指定為受限制的所述歷史的所述部分。
如在上文中所描述的方法,其中,對所述歷史的暴露進(jìn)行控制包括:根據(jù)針對不同的參與者中的每個參與者而建立的時間窗來將所述歷史的不同的部分暴露給所述通信會話的所述不同的參與者。
一種計算設(shè)備,包括:處理系統(tǒng),以及存儲指令的一個或多個計算機可讀介質(zhì),其中,當(dāng)由所述處理系統(tǒng)執(zhí)行時,所述指令實現(xiàn)被配置為執(zhí)行以下操作的通信模塊,所述操作包括:輸出針對所述通信模塊的用戶界面,所述用戶界面被配置為顯示在通過經(jīng)由服務(wù)提供者所提供的通信服務(wù)所建立的通信會話的參與者之間所交換的消息的歷史;經(jīng)由能夠選擇以將范圍點與所述參與者中的至少一個參與者關(guān)聯(lián)的所述用戶界面來暴露歷史控制元素,所述范圍點定義了使其對所述至少一個參與者可用的所述歷史的部分;經(jīng)由與所述歷史控制元素進(jìn)行交互來獲得針對所述至少一個參與者的所述范圍點的選擇;以及將對所選擇的范圍點的指示傳送至所述服務(wù)提供者,以有效地阻止所述至少一個參與者訪問按照所述所選擇的范圍點沒有使其可用的歷史的部分。
如在上文中所描述的計算設(shè)備,其中,所述歷史控制元素包括:與所述至少一個參與者相關(guān)聯(lián)并且與反應(yīng)所述歷史的會話記錄的表示相結(jié)合地暴露在所述用戶界面中的滑塊控件,所述滑塊控件被配置為位于所述會話記錄內(nèi)的位置處,以指示使得在其后的歷史對至少一個參與者可用的所述會話記錄中的點。
如在上文中所描述的計算設(shè)備,其中,所述歷史控制元素包括用于發(fā)起歷史控制對話框的控件,所述歷史控制對話框被配置為使能針對所述通信會話的參與者而將歷史的可用性切換為開或關(guān),并且選擇范圍點以與所述參與者相關(guān)聯(lián)。
如在上文中所描述的計算設(shè)備,其中,所述歷史控制元素包括用于通過選擇在所述用戶界面中所顯示的一組或多組消息來指定所述范圍點的范圍控制選擇器。
如在上文中所描述的計算設(shè)備,其中,傳送所述所選擇的范圍點的指示包括:將與所述至少一個參與者相關(guān)聯(lián)的時間戳傳達(dá)至所述通信服務(wù),所述時間戳指示使得在其后的歷史對至少一個參與者可用的所述會話記錄中的時間。
如在上文中所描述的計算設(shè)備,其中,響應(yīng)于所述至少一個參與者加入所述通信會話而暴露所述歷史控制元素。
如在上文中所描述的計算設(shè)備,其中,暴露所述歷史控制元素包括:暴露獨立地用于控制與對應(yīng)的參與者相關(guān)聯(lián)的范圍點的、與不同的參與者相對應(yīng)的多個歷史控制元素。
包括指令的一個或多個計算機可讀存儲介質(zhì),其中,當(dāng)由客戶端設(shè)備執(zhí)行時,所述指令實現(xiàn)被配置為執(zhí)行以下操作的通信模塊,所述操作包括:通過經(jīng)由服務(wù)提供者所提供的通信服務(wù)來在兩個或更多個參與者之間發(fā)起通信會話;輸出被配置為促進(jìn)在所述通信會話期間在所述兩個或更多個參與者之間的消息的交換的用戶界面;在所述用戶界面中顯示對在所述兩個或更多個參與者之間所交換的消息的表示;以及,當(dāng)新的參與者加入所述通信會話時進(jìn)行檢測;以及響應(yīng)于所述檢測在所述用戶界面中暴露歷史控制元素,所述歷史控制元素被配置為在所述表示內(nèi)可視地標(biāo)識將在所述新的參與者加入所述通信會話之前所交換的消息中的哪些消息暴露給所述新的參與者。
如在上文中所描述的一個或多個計算機可讀存儲介質(zhì),其中,所述歷史控制元素包括滑塊,所述滑塊位于消息的所述表示內(nèi)并且可滑動至消息的所述表示內(nèi)的不同的位置以修改所述消息對所述新的參與者的暴露。
如在上文中所描述的一個或多個計算機可讀存儲介質(zhì),其中,所述通信模塊被配置為提供用于網(wǎng)絡(luò)瀏覽、用戶在線指示、視頻通信、在線協(xié)同和會議體驗、即時消息傳送、以及語音通話的經(jīng)集成的功能。
結(jié)論
盡管用特定于結(jié)構(gòu)特征和/或方法論行為的語言描述了實施例,但應(yīng)當(dāng)理解的是,在所附權(quán)利要求中所限定的實施例非必須限于所描述的具體的特征或行為。相反,具體的特征和行為是作為實現(xiàn)所要求保護的實施例的示例形式而被公開的。