目前,可用于使用户可以将相似内容聚集在一起的唯一机制是通过创建文件夹或者通过创建标签。在一个实例中,传统的电子邮件客户端允许用户创建文件夹并将内容移动到文件夹中。但是,该文件夹位于收件箱之外,从而降低了所述消息的重要性。此外,文件夹结构是永久的并且保持了电子邮件客户端的导航窗格中的固定组件,其会堵塞用户的邮箱。文件夹结构还会使得电子邮件客户端的用户界面复杂化,尤其是当用户通过具有有限显示空间的移动设备访问电子邮件客户端时。此外,当存在要与其共享内容的其它用户时,存在对文件夹结构的限制。在文件夹结构情况下,其它用户需要手动访问文件夹,并且不接收自动内容更新。在替代实例中,可以创建标签用于内容的管理。但是,标签的作用与文件夹类似,并且具有与上述相同的问题。标签不是临时的,具有共享限制,并且可能会阻塞电子邮件客户端的用户界面和邮箱历史。
在传统电子邮件客户端中,一组用户共享电子邮件内容的唯一方法是通过手动转发每封邮件或者将所有用户注册到分发列表,并将所有电子邮件发送到分发列表。然而,这样的动作是有限的,因为接收的未来内容不会被自动提供给共享用户,其中,用户需要不断地将新内容转发给他们想要与之共享内容的其它用户。
因此,本申请的示例涉及与改进电子邮件服务的操作有关的一般技术环境,其中,改善了处理效率和可用性以及其它技术益处。
技术实现要素:
非限制性示例描述了通过应用/服务的捆绑内容的共享。可以通过电子邮件服务的用户界面来接收第一输入。第一输入可以与用于共享电子邮件捆绑的用户界面元素的选择相关联,该电子邮件捆绑包括至少两个单独的电子邮件线程的聚集。可以接收指示共享电子邮件捆绑的一个或多个其它用户的第二输入。可以与一个或多个其它用户共享电子邮件捆绑。电子邮件捆绑的共享创建共享许可,该共享许可使得用户与一个或多个其它用户之间能够针对共享的电子邮件捆绑的当前内容以及添加到共享的电子邮件捆绑的未来内容进行多方向共享。共享的电子邮件捆绑可以通过电子邮件服务的用户界面与用户的电子邮件邮箱中的其它电子邮件内联地显示。
提供本发明内容以便以简化的形式对下面在具体实施方式中进一步描述的设计构思的选择进行介绍。本发明内容并不旨在标识要求保护的发明主题的关键特征或重要特征,也不旨在用于限制要求保护的发明主题的范围。示例的其它方面、特征和/或优点将部分地在下面的描述中阐述,并且部分地将从描述中显而易见,或者可以通过本公开内容的实施来获知。
附图说明
参考以下附图描述了非限制性和非穷举性示例。
图1示出了在可以在其上实施本公开内容的方面的一个或多个计算设备上可实现的示例性系统。
图2是可以用来实施本公开内容的方面的与捆绑内容的共享有关的示例性方法。
图3A-3C提供了可以用来实施本公开内容的各方面的用户界面视图,其示出了用于管理电子邮件服务中的电子邮件的捆绑的用户界面示例。
图4是示出可以用来实施本公开内容的方面的计算设备的示例的框图。
图5A和图5B是可以用来实施本公开内容的方面的移动计算设备的简化框图。
图6是可以在其中实施本公开内容的方面的分布式计算系统的简化框图。
具体实施方式
本公开内容的非限制性示例描述了捆绑内容的共享,其中,应用/服务的用户界面被配置为使用户能够与其它用户共享捆绑内容。作为示例,示例性内容捆绑可以是与电子邮件服务相关联的电子邮件捆绑。示例性内容捆绑提供对文件夹/标签解决方案的替代解决方案,其中,内容捆绑本质上是临时的并且可以与应用/服务(例如,电子邮件服务)的其它内容(例如,电子邮件内容)内联地呈现。虽然本文中的示例是关于对来自应用/服务的捆绑内容的共享,但是应当理解,本文描述的示例可以扩展到捆绑内容管理的任何方面,包括但不限于:捆绑内容的用户创建、代表用户的内容的自动生成(例如,自动捆绑)、针对内容(包括捆绑内容)的增强搜索和过滤功能,以及针对内容捆绑的丰富内容预览的生成。可以在相关的共同未决申请中提供与捆绑内容的管理相关的其它方面。
图1示出了在可以在其上实施本公开内容的方面的一个或多个计算设备上可实现的示例性系统100。系统100可以是可以用来实施本公开内容的方面的用于执行电子邮件服务的示例性系统。举例来说,用于管理内容捆绑的共享的一个或多个组件可以与电子邮件服务的一个或多个其它组件对接。系统100的组件可以是硬件组件或在硬件组件上实现和/或由硬件组件执行的软件。在示例中,系统100可以包括任何硬件组件(例如,ASIC、用于执行/运行OS的其它设备,以及在硬件上运行的软件组件(例如,应用、应用编程接口、模块、虚拟机、运行时库)。在一个示例中,示例性系统100可以提供用于软件组件运行的环境,遵守为操作设置的约束,并且利用系统/处理设备的资源或设施,其中组件可以是在一个或多个处理设备上运行的软件(例如,应用、程序、模块)。例如,软件(例如,应用、操作指令、模块)可以在诸如计算机、移动设备(例如,智能电话/电话、平板电脑)的处理设备和/或任何其它类型的电子设备上执行。作为处理设备操作环境的示例,参考图4-图6的操作环境。系统100的一个或多个组件可以被配置为执行至少在图2的描述中描述的方法200中描述的任何处理操作。在其它示例中,本文中公开的系统的组件可以分布在多个设备上。示例性系统100包括电子邮件服务组件106,其还包括:捆绑共享组件108和邮箱管理组件110。
一个或多个数据存储单元/存储设备或其它存储器可以与系统100相关联。例如,系统100的组件可以具有与其相关联的一个或多个数据存储单元112(下文描述的)。与系统100的组件相关联的数据以及由系统100的组件执行的处理操作/指令可以存储在其上。另外,提出了系统100的应用组件可以与其它应用服务对接。可以提供应用服务作为前文提到的平台资源。应用服务可以是可以扩展系统100的一个或多个组件的功能的任何资源。应用服务可以包括但不限于:个人智能助理服务、网络搜索服务、电子邮件应用、文字处理应用、电子表格应用、演示应用、笔记应用、日历应用、设备管理服务、地址簿服务、信息服务、业务线(LOB)管理服务、客户关系管理(CRM)服务、调试服务、会计服务、工资单服务以及由第三方托管或控制的服务和/或网站以及其它例子。应用服务还可以包括由第三方托管的其它网站和/或应用,如社交媒体网站;照片分享网站;视频和音乐流式传输网站;搜索引擎网站;体育、新闻或娱乐网站等。应用服务还可以与系统100的组件相关联地提供分析、数据编译和/或存储服务等。
系统100可以包括一个或多个存储单元112,其可以存储与系统100的一个或多个组件的操作相关联的数据。在示例中,存储单元112可以与系统100的其它组件对接。与系统100的任何组件相关联的数据可以存储在存储单元112中,其中组件可以通过包括云计算平台和基础结构服务的分布式网络连接到存储单元112。示例性存储单元112可以是第一方源、第二方源和第三方源中的任何一个。存储单元112是任何物理或虚拟存储器空间。存储单元112可以存储用于由系统100的组件执行的处理操作的任何数据、来自处理操作的保留数据、存储的程序、代码或应用编程接口(API)、训练数据、到系统100内部和外部的资源的链接以及知识数据,以及其它示例。此外,在示例中,系统100的组件可以在系统100的组件的处理中利用知识数据。知识可以由系统100的一个或多个组件用于改进电子邮件服务组件106中的任何组件的处理,其中知识数据可以从系统100内部或外部的资源获得。在示例中,知识数据可以保存在存储单元112中,或者通过知识获取操作从系统100外部的一个或多个资源取得。
在图1中,处理设备102可以是包括至少一个处理器和至少一个存储器/存储单元的任何设备。处理设备102的示例可以包括但不限于:诸如桌面式计算机、服务器、电话、平板电脑、平板手机、平板、笔记本电脑、手表的处理设备,以及诸如具有一个或多个处理器或电路的设备的任何其它电子组件集合。在一个示例中,处理设备102可以是正在执行诸如示例性电子邮件服务(例如,电子邮件客户端)的应用/服务的用户的设备。电子邮件服务的一个示例是在示例中,处理设备102可以经由网络104与电子邮件服务组件106通信。在一个方面中,网络104是分布式计算网络,例如互联网。电子邮件服务组件106还可以经由网络104与应用服务通信。处理设备102可以是如图4-图6的描述中所描述的设备。在一些示例中,处理设备102可以包括多个连接的设备。处理设备102是用户计算设备的示例。
处理设备102可以执行包括通过用户帐户访问应用/服务的能力的处理操作。在一个示例中,处理设备102可以将经认证的用户连接到存储应用/服务的一个或多个用户的用户数据的示例性应用/服务。例如,利用处理设备102的用户可以访问电子邮件服务,其中电子邮件服务可以验证用户的用户帐户。电子邮件服务可以访问(电子邮件服务组件106的)邮箱管理组件110,以便向处理设备102提供与用户的用户帐户相关联的(电子邮件服务的)邮箱的表示。
示例性存储应用/服务可以向处理设备102的用户提供对存储在示例性数据中心中的数据的访问。在一个示例中,处理设备102可以经由分布式网络与存储单元112连接,该分布式网络可以向用户提供对用户数据的访问。一个或多个租户资源(例如,租户资源A、租户资源B、租户资源C等)可以与处理设备102相关联。租户资源可以是与处理设备和/或分布式网络服务相关联的用户帐户。与租户资源相关联的数据可以存储在存储单元112上,其中租户帐户可以用于通过处理设备102和/或其它处理设备来访问存储的数据。电子邮件服务组件106是被配置为执行处理操作以使得能够在客户端计算设备102上执行的示例性电子邮件服务内创建、共享和管理电子邮件捆绑的组件。虽然本文中描述的示例参考了电子邮件服务中的电子邮件捆绑,但应当理解的是,本文中描述的示例不限于(电子邮件服务的)电子邮件的捆绑,并且可以扩展到可以用于替换用于捆绑服务的数据的文件夹/标签的任何类型的数据捆绑。电子邮件服务组件106由一个或多个计算设备执行。示例性计算设备可以包括一个或多个处理器和存储器以及其它组件。在至少图4-图6的描述中提供了计算设备的示例。如上所述,电子邮件服务组件106包括捆绑共享组件108和邮箱管理组件110。
捆绑共享组件108被配置为管理所创建的捆绑的共享。所创建的捆绑可以包括由用户创建的捆绑以及由电子邮件服务代表用户自动创建的捆绑中的任一捆绑。传统上,电子邮件服务用于个人组织,并且不允许共享内容或协作。在先前的解决方案中,一组用户共享电子邮件内容的唯一方法是通过手动转发每封邮件或者将所有用户注册到分发列表,并将所有电子邮件发送到分发列表,这非常繁琐,并且不是最佳解决方案。此外,这样的解决方案还受到限制,因为它们仅允许协作用户查看已经被用户转发的过去的电子邮件。
捆绑共享组件108被配置为:针对内容捆绑创建共享许可,该共享许可使得在用户与一个或多个其它用户之间能够针对共享的电子邮件捆绑的当前内容以及添加到共享的电子邮件捆绑的未来内容进行多方向共享。这使得用户能够与另一个用户共享一堆内容,从而允许他们不仅可以看到包含在捆绑中的过去的电子邮件,还可以看到在稍后时间点被添加到捆绑中的所有未来项目。例如,如果用户A创建了捆绑,与用户B共享,则用户B可以添加和删除然后与用户A共享的来自捆绑的内容。当用户B第一次将项目添加到共享捆绑时,提醒他们所有参与者都共享更改。如果用户A将电子邮件X添加到共享捆绑,并且用户B从捆绑中删除电子邮件X,则将从捆绑中删除该项目,并且用户C无法看到电子邮件X。但是,由于该电子邮件来自用户A的收件箱,它将保留在其收件箱中。
定制捆绑(例如,电子邮件捆绑)是用于管理内容之间的关联的轻量级机制(例如,可以创建电子邮件捆绑的电子邮件)。捆绑可以被定义为手动设置相似项目聚集的自动操作。举例来说,可以创建捆绑以便对电子邮件服务的两个或更多个电子邮件消息进行聚集,从而创建电子邮件捆绑。示例性电子邮件捆绑可以包括至少两个单独的电子邮件线程的聚集。该电子邮件捆绑还可以包括示例性标签,其提供与实体类型标记结构的关联。可以利用示例性实体类型标记结构来对包括捆绑电子邮件的电子邮件服务的电子邮件进行分类。与实体类型标记结构(包括示例性标签)相关联的数据可用于帮助搜索和过滤包括电子邮件捆绑的电子邮件数据。
示例性标签还用于关联电子邮件消息和捆绑的内容(例如,电子邮件捆绑)。标签将电子邮件消息(和/或其它内容)与一个或多个附加电子邮件(和/或其它内容)相关联。在一个示例中,示例性标签是主题标签。但是,标签不局限于这种形式。创建的标签变成可用于有效关联捆绑中的电子邮件的实体值。标签还变成可用于优先搜索和检索创建的捆绑的实体数据。在某些情况下,即使消息与捆绑分离,标签也可能与捆绑保持关联。这可以帮助用户在后续搜索期间能够快速重定位电子邮件。在替代示例中,先前与捆绑相关联并且稍后被移除的电子邮件可能不保留与示例性标签的关联。
电子邮件捆绑使用捆绑名称/标记ID进行标记,作为实体类型标记基础结构的一部分。在一个示例中,实体类型标记基础结构可以用于分配和管理与电子邮件捆绑相关联的标签。也就是说,可以为包括在电子邮件捆绑中的特定电子邮件生成实体类型标记结构。实体类型标记结构可以包括由开发者配置的多个字段,其中实体类型标记基础结构的数据可以用于管理与捆绑相关联的内容,包括搜索和过滤内容捆绑以及共享捆绑的内容。与示例性实体类型标记基础结构相关联的属性和字段可以基于电子邮件内容的类型而变化。在另外的示例中,实体类型标记基础结构可以用于对任何类型的电子邮件进行分类,包括未包括在电子邮件捆绑中的电子邮件,因为来自实体类型标记基础结构的数据可以用于提高将电子邮件分类为特定类型或类别的准确性。电子邮件捆绑的示例性分类对于由电子邮件服务执行的后端处理可能是有用的,这些处理包括:分析电子邮件捆绑(包括电子邮件捆绑的内容)、生成示例性邮箱的表示、生成用户的推荐/建议、电子邮件服务和/或其它相关联应用/服务的遥测分析,以及捆绑内容管理的其它方面(例如,共享、搜索/过滤、丰富内容预览的生成等)以及其它示例。可以包括在示例性实体类型标记基础结构中的数据字段的示例包括但不限于:与电子邮件的特定数据有关的上下文字段、标签/主题标签字段、电子邮件类型字段、类别字段、实体数据字段、数据源字段、日期/时间戳信息、超链接数据字段、域信息字段、格式/排列字段、与电子邮件的分类和特定属性有关的置信度得分、与特定电子邮件内容有关的数据,以及针对特定消息(例如,电子邮件)和/或特定消息的类别/类型的用户分流动作历史等等。
示例性捆绑是上下文相关的并且与用户邮箱的其它电子邮件内联地呈现。电子邮件服务被配置为基于用户/用户组的有意义的类别代表用户创建内容捆绑。这是一个比文件夹、标签或电子邮件规则设置更好的解决方案,因为创建的捆绑本质上是临时的。不需要在电子邮件服务的用户界面的导航窗格内创建诸如文件夹/标签之类的书签链接。此外,捆绑的内容由电子邮件服务自动更新和智能管理,其中捆绑的内容可以基于与用户邮箱相关联的消息内容的改变而自动更新。如果主题项变得不相关,则将放弃捆绑(例如,取消优先级),但捆绑结构仍将保持完整,从而允许稍后找到捆绑,而无需在电子邮件服务的导航窗格中创建和管理物理链接(即像针对文件夹/标签那样)。如果捆绑接收到可能与用户相关的新消息或更新(例如,会议预约、发货跟踪、通知等),则捆绑将在用户的邮箱中被优先化。值得注意的是,一旦在电子邮件服务中创建了捆绑,来自捆绑消息线程的后续电子邮件消息可能导致对所创建的捆绑的更新,其中,用户将不必去寻找单独的消息/消息线程。
另外,示例性内容捆绑可以继承与单个消息相关联的分流动作和行为中的所有(或一些)。也就是说,电子邮件服务被配置为:使用户能够针对内容捆绑(例如,电子邮件捆绑)来执行批量动作。例如,用户可以删除电子邮件捆绑而无需进入特定电子邮件并对特定电子邮件执行动作。
考虑用户试图管理与房屋装修相关联的内容的示例。用户可以创建名为“House Reno(房屋装修)”的内容捆绑,并将与其家庭装修相关的电子邮件放入电子邮件捆绑中。作为示例,可以创建“House Reno(房屋装修)”的示例性标签并将其作为捆绑的一部分与所有内容相关联。例如,用户可以接收来自不同承包商的电子邮件,并且想要在一个聚集中关联所有接收的电子邮件,而不必不断地搜索每个个体电子邮件。值得注意的是,一旦在电子邮件服务中创建了捆绑,来自捆绑消息线程的后续电子邮件消息可能导致对所创建的捆绑的更新,其中,用户将不必从不同的承包商寻找单独的消息/消息线程。
此外,示例性捆绑被配置为管理与其它应用/服务(例如可包括一套不同应用的平台资源)的关联。例如,用户可以与特定承包商进行日历上的预约设置。与这样的内容相关联的通知和提醒可以与创建的捆绑一起呈现给用户。当共享捆绑内容时,也可以向共享捆绑的其它用户提供这样的通知。作为示例,日程表预约(与共享捆绑相关联)也可以出现在共享用户的日历上。
继续上述“House Reno(房屋装修)”示例,一旦房屋装修项目结束,并且用户停止接收本来要进入该捆绑的新邮件,则将该捆绑折叠起来,看不见并且不再关注。但是,如果用户以后出于任何原因需要引用此捆绑中的电子邮件,则搜索将返回与此捆绑相关的所有电子邮件。如果在稍后的时间点接收到与该捆绑相关联的新电子邮件,则可以在该用户的邮箱中针对该用户对该捆绑进行优先化。例如,承包商可能过晚发送收据(例如,6个月或一年以后),其中电子邮件服务被配置为在接收到收据时对电子邮件捆绑进行优先化。如果用户的注意力转移到构成捆绑的另一个项目,则该捆绑现在位于收件箱的顶部,而其它较旧的捆绑会掉落并且不会阻塞电子邮件服务的导航控制。事后,用户不需要从电子邮件服务的UI中手动删除文件夹/标签。作为一个示例,示例性捆绑的临时性质对于每隔几个月改变项目的工人/团体是非常有益的。代替具有代表过去项目的数百个文件夹的大型列表,该用户可以通过一种干净简单的方式来组织他们的内容。
如上所述,捆绑共享组件108利用用于创建的捆绑的示例性标签来识别用于共享的内容。捆绑中的内容(例如,电子邮件)用由实体类型标记基础结构标识的捆绑名称/ID(例如标签)来标记。可以在电子邮件服务的传输递送层创建和/或共享示例性标签,以实现与另一个用户(或多个用户)的内容共享。例如,捆绑可以与捆绑所有者相关联,捆绑所有者将来自的电子邮件添加到创建的捆绑的“Cabo Vacation Planning(Cabo假期计划)”。然后,经由实体类型标记基础结构对所添加的电子邮件进行标记,并触发基于事件的助理,该助理自动将电子邮件内容传递到与其共享该捆绑的另一个用户的收件箱。
为了确保共享捆绑参与者以后可以回到他们之前归类为捆绑的一部分的内容,将该捆绑中的电子邮件用标识这些电子邮件为与该主题或类别相关的属性(例如标记)来盖章。例如,用户添加到共享的“vacation(假期)”捆绑的所有电子邮件都使用主题标签“#vacation”来进行标记。如果用户稍后搜索“vacation(假期)”,则将其转换为搜索所有“#vacation”电子邮件,使得这些电子邮件在相关性排名中显得高于仅具有关键字“vacation(假期)”的电子邮件。由于用户花时间创建该捆绑并对其内容进行分类,因此对主题标签分类结果进行优先化,使其更易于查找并在以后及时返回。
例如,如果用户计划与她的配偶一起去Cabo度假,但经常发现供应商要么只发送一封确认邮件,要么从队列中去掉其配偶,则她可以创建一个名为“Cabo Vacation Planning(Cabo假期计划)”的捆绑并和她的配偶分享该捆绑。在该示例中,“Cabo Vacation Planning(Cabo假期计划)”的标签与捆绑的所有内容相关联并且与配偶共享。在该示例中,捆绑共享组件108被配置为:创建共享许可,该共享许可使得配偶能够看到被分类为该主题/类别的一部分的所有过去的电子邮件。在一个示例中,共享用户(例如配偶)被自动添加为添加到共享捆绑的所有未来电子邮件的密件抄送。除非用户更改共享许可,否则这可以是共享许可的标准设置。然而,可以设置示例性共享许可以便在包括“去往”字段和抄送字段以及其它例子的任何电子邮件字段中提供信函。在其它示例中,共享许可还可以被配置为使共享用户能够管理针对共享捆绑的电子邮件信函。例如,配偶还可以将带有他预订的豪华轿车服务的他的电子邮件信函添加到共享捆绑中。这将确保他的妻子也接收到细节。在该示例中,妻子将自动在由配偶添加到捆绑的电子邮件上接收电子邮件(例如,副本/密件抄送)。作为共享捆绑的一部分,妻子还将接收从豪华轿车服务接收到的任何信函(例如,针对配偶的信函)。参与者也可以搜索“Cabo Vacation Planning(Cabo假期计划)”并查看与标记的捆绑相关联的所有电子邮件。
捆绑共享组件108还被配置为:管理与共享创建的捆绑(例如,电子邮件捆绑)相关联的电子邮件服务的UI特征。至少在图3A-图3C中示出了与共享捆绑相关的用户界面示例。可以直接从电子邮件服务的用户邮箱发起示例性捆绑的共享。在一个示例中,可以通过与访问特定电子邮件消息相关联的上下文菜单来共享捆绑。例如,用户可能正在阅读捆绑的特定电子邮件并选择与另一个用户共享该捆绑。在替代示例中,电子邮件服务的UI配置有UI特征(例如,通过命令栏/应用命令控件),其使得用户能够快速访问用于对电子邮件捆绑进行共享的特征。在又一个替代示例中,示例性电子邮件服务被配置为:使得用户能够通过设备动作(例如,鼠标设备的右键单击、触摸输入、触控笔输入等)来共享电子邮件捆绑。
捆绑共享组件108还被配置为:使得用户能够针对与特定用户有关的共享许可来设置规则。在一个示例中,接收共享捆绑的用户可以具有与共享该捆绑的用户相同的对捆绑的访问权限。也就是说,用户可以添加/移除内容、删除捆绑、从共享捆绑创建新的捆绑、与其它用户共享捆绑等。捆绑所有者(例如,共享该捆绑的原始用户)可能希望为其它用户指定特定的共享许可。例如,用户可能想要与另一个用户共享内容,但可能不希望该用户向捆绑添加内容。捆绑共享组件108通过电子邮件服务的UI来管理与创建的捆绑相关的共享许可。例如,可以逐个用户地设置共享许可,其中,用户可以为另一个用户指定与下列各项相关的共享许可:如何将内容发送到另一个用户、用户是否可以与其它用户共享该捆绑,以及共享的捆绑是否可以由另一个用户更改/编辑(例如,添加内容或者从共享的捆绑中移除内容,以及其它示例)。在替代示例中,捆绑所有者可以与另一个用户共享捆绑的副本,其中,(由其它用户)对捆绑的更新不会影响捆绑所有者的收件箱中的原始捆绑。在该示例中,捆绑所有者仍然可以在其收件箱中接收对共享捆绑副本的更新。
此外,捆绑共享组件108被配置为:提供对共享捆绑的更新的通知。一旦共享了捆绑,正在接收该共享捆绑的用户可以接收指示已经与他们共享了该捆绑的通知(例如,电子邮件通知)。在一个这样的示例中,用户可能需要接受对捆绑的邀请以便开始出现在他们的收件箱中。捆绑共享组件108还可以被配置为:向捆绑所有者提供关于另一个用户是否接受/拒绝共享许可的通知。在另一个示例中,一旦共享捆绑已经由捆绑所有者共享,则该共享捆绑可以出现在另一个用户的收件箱中。在任何示例中,一旦用户被授予对共享捆绑的访问权限,则用户就可以像他们自己创建了该捆绑一样与其进行交互。与共享捆绑相关联的用户可以接收针对内容更改和对共享捆绑的更新的另外的通知。在一个示例中,捆绑共享组件108向捆绑所有者提供关于由其它用户对捆绑进行的任何协作更新的通知。
邮箱管理组件110是被配置为管理与电子邮件服务的用户帐户相关联的电子邮件数据并且提供与用户的用户帐户相关联的(电子邮件服务的)邮箱的表示的组件。邮箱管理组件110可以检索与用户帐户相关联的电子邮件数据,并为用户生成邮箱的表示。可以通过电子邮件服务(例如,在诸如处理设备102的处理设备上执行)来提供邮箱的示例性表示。产生用户的邮箱的表示对于本领域技术人员而言是已知的。此外,邮箱管理组件110可以与捆绑共享组件108对接,以使捆绑共享组件108能够访问电子邮件数据(与用户帐户相关联)以及用于捆绑内容的共享的与其它用户帐户相关联的电子邮件数据。与创建的内容捆绑(例如,电子邮件捆绑)相关联的数据可以在包括捆绑共享组件108和邮箱管理组件110的电子邮件服务的组件之间共享。例如,与创建的电子邮件捆绑相关联的数据可以与邮箱管理组件110共享,以在与之共享内容捆绑的一个或多个用户的电子邮件服务的邮箱的生成表示中包括共享的电子邮件捆绑。
图2是可以用来实施本公开内容的方面的与捆绑内容的共享有关的示例性方法200。作为示例,方法200可以由诸如图4-图6中所示的示例性处理设备和/或系统执行。在示例中,方法200可以在包括被配置为存储和执行操作、程序或指令的至少一个处理器的设备上执行。在方法200中执行的操作可以与由执行计算机程序、应用编程接口(API)、神经网络或机器学习处理以及其它示例的系统和/或服务执行的操作相对应。作为示例,在方法200中执行的处理操作可以由一个或多个硬件组件执行。在另一个示例中,在方法200中执行的处理操作可以由一个或多个软件组件执行。在一些示例中,在方法200中描述的处理操作可以由与可以访问多个应用/服务、设备、知识资源等的网络服务相关联的一个或多个应用/服务来执行。在方法200中描述的处理操作可以由通过分布式网络连接的一个或多个组件(例如,如系统100(图1中)所述)来实现。
方法200开始于处理操作202,在该操作处,通过电子邮件服务的用户界面来接收第一输入。第一输入与用于共享电子邮件捆绑的电子邮件服务的用户界面元素的选择相关联。示例性电子邮件捆绑可以包括至少两个单独的电子邮件线程的聚集以及其它特征。至少在前文的描述中描述了与电子邮件捆绑相关联的内容的其它示例。在前文的描述中提供了被配置为发起捆绑内容的共享的UI特征的示例。
流程可以进行到处理操作204,在该操作处,通过电子邮件服务的用户界面来接收第二输入。第二输入可以由用户提供,指示共享电子邮件捆绑的一个或多个其它用户。在一些示例中,方法200的处理可以进行到处理操作206,在该操作处,接收指示与一个或多个其它用户的电子邮件捆绑相关的共享特权的第三输入。在(图1的)捆绑共享组件108的描述中描述了与可以针对用户共享设置的特定特权相关的示例。
在处理操作208处,与一个或多个其它用户共享电子邮件捆绑。电子邮件捆绑的共享创建共享许可,该共享许可使得在用户与一个或多个其它用户之间能够针对共享的电子邮件捆绑的当前内容以及添加到共享的电子邮件捆绑的未来内容进行多方向共享。在另外的示例中,电子邮件捆绑的共享(处理操作208)还共享用于电子邮件捆绑的示例性标签(或多个标签),这使得一个或多个其它用户能够在用户自己的邮箱内搜索共享的电子邮件捆绑。电子邮件捆绑的共享(处理操作208)还可以包括向用户提示共享许可的通知处理。例如,可以向一个或多个其它用户发送共享通知,以便向一个或多个其它用户通知该电子邮件捆绑是共享的。在其它示例中,(共享该捆绑的)用户可以接收以下通知:一个或多个其它用户已经接受电子邮件捆绑的共享。
一旦共享了电子邮件捆绑,流程可以进行到处理操作210,在该操作处,可以在用户的邮箱中显示共享的电子邮件捆绑。举例来说,共享的电子邮件捆绑的显示(处理操作210)可以与用户的电子邮件邮箱的其它电子邮件内联地呈现共享的电子邮件捆绑。用户的电子邮件邮箱的示例可以是用户的收件箱。
流程可以进行到决策操作212,在此处确定是否存在对共享的电子邮件捆绑的更新。如果没有发生更新,则方法200的流程分支为NO(否)并保持空闲直到发生后续更新。在没有发生更新的示例中,可以在用户的邮箱内对共享的电子邮件捆绑进行去优先级化,例如,当接收到较新的电子邮件时。在共享的电子邮件捆绑发生更新的示例中,方法200的流程分支为YES(是)并且前进到处理操作214。共享的电子邮件捆绑的更新示例是由用户提供的更新。例如,用户可以向共享的电子邮件捆绑添加新内容或从中移除内容。在另一个示例中,可以由与其共享电子邮件捆绑的其它用户中的一个用户提供更新。
在处理操作214处,更新共享的电子邮件捆绑。流程可以进行到处理操作216,在该操作处,对共享的电子邮件捆绑的任何更新基于所建立的共享许可被自动发送到共享参与者。在一个示例中,共享的参与者的更新的自动传输是作为下列各项中的一项或多项来发送的:抄送和密件抄送。
可以在电子邮件捆绑的共享参与者中的每个共享参与者的邮箱内显示对共享的电子邮件捆绑的更新(处理操作218)。举例来说,对共享的电子邮件捆绑的更新的显示(处理操作218)可以与用户的电子邮件邮箱中的其它电子邮件内联地呈现。对共享的电子邮件捆绑的更新的显示(处理操作218)可以对共享参与者中的每个共享参与者的邮箱顶部的共享的电子邮件捆绑进行优先化。
图3A-图3C提供了可以用来实施本公开内容的各方面的用户界面视图,其示出了用于管理电子邮件服务中的电子邮件的捆绑的用户界面示例。图3A-图3C提供了与用户通过电子邮件服务的用户界面共享示例性捆绑相关的可视示例。至少在图1的捆绑共享组件108的描述中描述了用户对示例性捆绑的共享。
图3A示出了用户界面视图300,其提供了示例性电子邮件服务的用户收件箱的显示。用户界面视图300示出了可以对创建的捆绑进行共享的示例。用户界面视图300示出了可以如何共享示例性捆绑的一个可能的示例。在包括捆绑共享组件108(图1)的描述的前述描述中描述了用于触发捆绑的共享的其它UI示例。用户可以选择电子邮件捆绑302,其中用户的设备动作可以触发UI菜单304的显示,UI菜单304包括用于共享电子邮件捆绑的可选择选项。在前文的描述中描述了用于与不同用户共享捆绑以及设置与共享许可相关联的规则/特权的UI菜单的替代示例(未示出)。
图3B示出了用户界面视图310,其提供了与共享的捆绑相关联的电子邮件的显示。用户界面视图310中所示的示例性电子邮件可以由捆绑所有者或与电子邮件捆绑相关联的其它用户与之共享捆绑的用户来接收。除了包括在用于共享的捆绑的示例性电子邮件中的其它信息之外,示例性电子邮件可以包括到共享的捆绑的UI链接312,由此用户可以直接访问共享的捆绑。示例性电子邮件还可以包括用户用来接受对捆绑的共享许可的UI特征314。在示例中,一旦用户选择将共享的捆绑添加到邮箱(例如,通过选择UI特征314),则与共享的捆绑相关联的电子邮件数据可以被转发到用户的邮箱(例如,与电子邮件服务相关联的用户帐户的收件箱)。然后,共享的捆绑可以出现在共享用户的邮箱中,其中由捆绑参与者添加的所有未来电子邮件被自动提供给共享用户(以及与其共享捆绑的其它共享用户)。
图3C示出了用户界面视图320,其提供了示例性电子邮件服务的用户收件箱的显示。用户界面视图320提供通知322,该通知用于确认用户想要将电子邮件内容324移动到创建的捆绑中。例如,用户可能会意外地在捆绑上拖/放电子邮件或选择用于向捆绑添加内容的UI特征。在一些示例中,电子邮件服务的示例性UI可以被配置为:提供诸如通知322之类的通知以确认用户意图修改创建和/或共享的捆绑。示例性电子邮件服务可以被配置为:如果用户在每次针对创建/共享的捆绑采取动作时倾向于不接收通知,则使用户能够禁用该功能。
图4-图6和相关联的描述提供了可以在其中实施本发明的示例的各种操作环境的讨论。然而,图示并且针对图4-图6讨论的设备和系统是出于示例和说明的目的,并不限制可用于实施本文中描述的本发明的示例的广大数量的计算设备配置。
图4是示出可以用来实施本公开内容的示例的计算设备402(例如,移动处理设备)的物理组件的框图。除了其它示例,计算设备402可以是被配置用于执行如本文所述的电子邮件服务的示例性计算设备。在基本配置中,计算设备402可以包括至少一个处理单元404和系统存储器406。根据计算设备的配置和类型,系统存储器406可以包括但不限于:易失性存储单元(例如,随机存取存储器)、非易失性存储单元(例如,只读存储器)、闪存器或这样的存储器的任何组合。系统存储器406可以包括操作系统407和适用于运行软件程序/模块420的一个或多个程序模块408(如IO管理器424、其它实用程序426和应用428)。例如,系统存储器406可以存储用于执行的指令。系统存储器406的其它示例可以存储与应用相关联的数据。例如,操作系统407可以适于控制计算设备402的操作。另外,本发明的示例可以结合图形库、其它操作系统或任何其它应用程序来实施,并且不局限于任何特定的应用或系统。这种基本配置在图4中由虚线422之内的那些组件示出。计算设备402可以具有额外的特征或功能。例如,计算设备402还可以包括额外的数据存储设备(可移动和/或不可移动的),例如,如磁盘、光盘或磁带。这样的额外的存储单元在图4中由可移动存储设备409和不可移动存储设备410示出。
如上所述,多个程序模块和数据文件可以存储在系统存储器406中。当在处理单元404上执行时,程序模块408(例如,输入/输出(I/O)管理器424、其它实用程序426和应用428)可以执行过程,包括但不限于贯穿本公开内容描述的操作的阶段中的一个或多个阶段。可以根据本发明的示例使用的其它程序模块可以包括:电子邮件和联系人应用、文字处理应用、电子表格应用、数据库应用、幻灯片演示应用、绘图或计算机辅助应用程序、照片编辑应用、创作应用等。
另外,本发明的示例可以在包括下列各项的电路中实施:分立电子元件、包含逻辑门的封装或集成的电子芯片、使用微处理器的电路,或者在包含电子元件或微处理器的单个芯片上。例如,本发明的示例可以经由片上系统(SoC)实施,在片上系统中,图4所示的组件中的每个或许多组件可以集成到单个集成电路上。这样的SOC设备可以包括一个或多个处理单元、图形单元、通信单元、系统虚拟化单元和各种应用功能,所有这些可以集成(或“烧制”)到芯片基板上作为单个集成电路。当经由SOC操作时,本文中描述的功能可以经由与单个集成电路(芯片)上的计算设备402的其它组件集成在一起的应用专用逻辑单元来进行操作。还可以使用能够执行逻辑运算(诸如,例如,AND、OR和NOT)的其它技术来实施本公开内容的示例,这些技术包括但不限于:机械、光学、流体和量子技术。此外,可以在通用计算机或在任何其它电路或系统中实施本发明的示例。
计算设备402还可以具有一个或多个输入设备412,如键盘、鼠标、笔、声音输入设备、用于语音输入/识别的设备、触摸输入设备等。还可以包括诸如显示器、扬声器、打印机等的输出设备414。前述设备是示例,并且可以使用其它设备。计算设备404可以包括允许与其它计算设备418的通信的一个或多个通信连接416。合适的通信连接416的示例包括但不限于:RF发射机、接收机、和/或收发机电路、通用串行总线(USB)、并行和/或串行端口。
本文中所使用的术语计算机可读介质可以包括计算机存储介质。计算机存储介质可以包括用于存储诸如计算机可读指令、数据结构或程序模块的信息的、以任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。系统存储器406、可移动存储设备409以及不可移动存储设备410都是计算机存储介质示例(即,存储器存储单元)。计算机存储介质可以包括:RAM、ROM、电可擦除只读存储器(EEPROM)、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光学存储、磁带盒、磁带、磁盘存储或其它磁存储设备、或者可用于存储信息且可由计算设备402访问的任何其它制品。任何这样的计算机存储介质可以是计算设备402的一部分。计算机存储介质不包括载波波形或其它传播或调制的数据信号。
通信介质可以体现为计算机可读指令、数据结构、程序模块或调制数据信号(如载波波形)或其它传输机制中的其它数据并且包括任何信息传递介质。术语“调制数据信号”可以描述具有一个或多个特性集合或以对信号中的信息进行编码的方式改变的信号。通过举例而非限制的方式,通信介质可以包括诸如有线网络或直线连接的有线介质,以及诸如声音、射频(RF)、红外线和其它无线介质的无线介质。
图5A和图5B示出了可用来实施本发明的示例的移动计算设备500,例如,移动电话、智能电话、个人数据助理、平板个人计算机、平板手机、平板、膝上型计算机等。移动计算设备500可以是被配置用于执行如本文所述的电子邮件服务的示例性计算设备。可以为在计算设备(例如移动计算设备500)上执行的应用提供应用命令控件。应用命令控件涉及通过用户界面(UI)或图形用户界面(GUI)与应用一起使用的命令的呈现和控制。在一个示例中,可以专门对应用命令控件进行编程以便与单个应用一起工作。在其它示例中,应用命令控件可以被编程为跨越一个以上的应用工作。参考图5A,示出了用于实现这些示例的移动计算设备500的一个示例。在基本配置中,移动计算设备500是具有输入元件和输出元件二者的手持计算机。移动计算设备500通常包括显示器505和允许用户向移动计算设备500输入信息的一个或多个输入按钮510。移动计算设备500的显示器505也可用作输入设备(例如,触摸屏显示器)。如果包括,那么可选的侧输入元件515允许进一步的用户输入。侧输入元件515可以是旋转开关、按钮、或任何其它类型的手动输入元件。在替换示例中,移动计算设备500可以并入更多或更少的输入元件。例如,在一些示例中,显示器505可以是触摸屏。在又一个替换示例中,移动计算设备500是便携式电话系统(如蜂窝电话)。移动计算设备500还可以包括可选的小键盘535。可选的小键盘535可以是物理小键盘或在触摸屏显示器或任何其它软输入面板(SIP)上生成的“软”小键盘。在各个示例中,输出元件包括:用于展示GUI的显示器505、视觉指示器520(例如,发光二极管)、和/或音频转换器525(例如,扬声器)。在一些示例中,移动计算设备500并入用于向用户提供触觉反馈的振动传感器。在又一个示例中,移动计算设备500并入输入和/或输出端口,如音频输入(例如,麦克风插孔)、音频输出(例如,耳机插孔)、以及用于向外部设备发送信号或从外部设备接收信号的视频输出(例如,HDMI端口)。
图5B是示出移动计算设备的一个示例的架构的框图。也就是说,移动计算设备500可并入系统(即,架构)502来实现一些示例。在一个示例中,系统502被实现为能够运行一个或多个应用(例如,浏览器、电子邮件、日历、联系人管理器、消息传送客户端、游戏和媒体客户端/播放器)的“智能电话”。在一些示例中,系统502被集成为计算设备,如集成的个人数字助理(PDA)、平板电脑和无线电话。
一个或多个应用程序566可以被载入存储器562中,并在操作系统564上运行或与操作系统564关联地运行。应用程序的示例包括:电话拨号程序、电子邮件程序、个人信息管理(PIM)程序、文字处理程序、电子表格程序、互联网浏览器程序、消息传送程序等。系统502还包括存储器562内的非易失性存储区域568。非易失性存储区域568可用于存储如果系统502掉电不应该丢失的持久信息。应用程序566可使用和存储非易失性存储区域568中的信息,如由电子邮件应用使用的电子邮件或其它消息等。同步应用(未示出)也位于系统502上,并且被编程用于与驻留在主机计算机上的相应同步应用进行交互,以保持存储在非易失性存储区域568中的信息与存储在主机计算机处的相应信息同步。应该明白:其它应用可被载入存储器562中并在本文中描述的移动计算设备(例如,系统502)上运行。
系统502具有电源570,其可实现为一个或多个电池。电源570可能还包括外部电源,如AC适配器或对电池进行补充或再充电的供电的底座。
系统502可以包括外围设备端口530,其执行促进系统502与一个或多个外围设备之间的连接的功能。去往和来自外围设备端口530的传输在操作系统(OS)564的控制下进行。换句话说,由外围设备端口530接收的通信可经由操作系统564传播到应用程序566,反之亦然。
系统502还可以包括执行发送和接收射频通信的功能的无线电接口层572。无线电接口层572经由通信载波或服务提供商来促进系统502与“外部世界”之间的无线连接。去往和来自无线电接口层572的传输在操作系统564的控制下进行。换句话说,由无线电接口层572接收的通信可经由操作系统564传播到应用程序566,反之亦然。
视觉指示器520可用于提供视觉通知,和/或音频接口574可用于经由音频转换器525(如对移动计算设备500的描述中所描述的)产生听觉通知。在图示示例中,视觉指示器520是发光二极管(LED),而音频转换器525是扬声器。这些设备可直接耦合到电源570,以便当被激活时,它们在由通知机制指示的一段时间期间保持工作状态,即使处理器560和其它组件可能关闭以节省电池功率。可将LED编程为一直处于工作状态直到用户采取行动来指示设备的上电状态。音频接口574用于向用户提供音频信号以及从用户接收听觉信号。例如,除了耦合到音频转换器525(图5A所示的)之外,音频接口574还可以耦合到麦克风来接收听觉输入,例如以促进电话交谈。根据本发明的示例,如同下文将描述的,麦克风还可以用作音频传感器来促进对通知的控制。系统502还可以包括视频接口576,其使能板上摄像头530的操作以记录静止图像、视频流等。
实现系统502的移动计算设备500可具有额外的特征或功能。例如,移动计算设备500还可以包括额外的数据存储设备(可移动和/或不可移动的),如磁盘、光盘,或磁带。这些额外的存储单元在图5B中由非易失性存储区域568示出。
由移动计算设备500生成或捕获以及经由系统502存储的数据/信息可以如上所述本地存储在移动计算设备500上,或者数据可存储在可由设备经由无线电单元572或经由移动计算设备500和与移动计算设备500相关联的单独的计算设备(例如,分布式计算网络(如互联网)中的服务器计算机)之间的有线连接访问的任意数量的存储介质上。应该明白的是:可经由无线电单元572或经由分布式计算网络,经由移动计算设备500来访问这样的数据/信息。类似地,这样的数据/信息可根据公知的数据/信息传输和存储手段(包括电子邮件和协作式数据/信息共享系统)容易地在计算设备之间传输来存储和使用。
图6示出了如上所述用于提供可靠地访问存储系统上的目标数据并处理一个或多个客户端设备的通信故障的应用的系统的架构的一个示例。图6的系统可以是被配置用于执行如本文所述的电子邮件服务的示例性系统。编程模块408、和/或应用420以及存储单元/存储器访问的、与编程模块408和/或应用420以及存储单元/存储器(图4中描述的)交互或与之相关联编辑的目标数据可以被存储在不同通信信道或其它存储类型中。例如,如本文所述,可以使用目录服务622、网络门户624、邮箱服务626、即时消息传送存储628或社交网站630、应用428、IO管理器424、其它实用程序426来存储各种文档,并且存储系统可以使用这些类型的系统等中的任何一种来实现数据利用。服务器620可以提供存储系统以供通过网络615在通用计算设备402和移动设备500上操作的客户端使用。通过举例的方式,网络615可以包括互联网或任何其它类型的局域网或广域网,并且可以实现客户端节点以连接到网络615。客户端节点的示例包括但不限于:体现在个人计算机、平板计算设备和/或移动计算设备500(例如,移动处理设备)中的计算设备402。作为示例,客户端节点可以使用无线网络连接(例如,WiFi连接、蓝牙等)连接到网络615。然而,本文中描述的示例还可以扩展到经由硬线连接来连接到网络615。客户端计算设备402或500的这些示例中的任何示例可以从存储单元616获得内容。
在整个说明书中已经引用了“一个示例”或“示例”,意指具体描述的特征、结构或特性包括在至少一个示例中。因此,这些短语的使用可以不仅仅指代一个示例。此外,在一个或多个示例中可以以任何合适的方式对所描述的特征、结构或特性进行组合。
然而,相关领域的技术人员可以认识到:可以在没有这些具体细节中的一个或多个具体细节的情况下,或者使用其它方法、资源、材料等来实施示例。在其它情况下,没有详细示出或描述公知的结构、资源或操作仅仅是为了避免模糊了示例的方面。
虽然已经示出和描述了样本示例和应用,但应当理解的是:示例不限于上述精确配置和资源。在不脱离所主张的示例的范围的前提下,可以在本文中公开的方法和系统的布置、操作和细节上进行对本领域技术人员来说显而易见的各种修改、改变和变化。