CN107430622A - 用于向用户通知对存储在基于云的文件存储系统中的文件的改变的系统和方法 - Google Patents

用于向用户通知对存储在基于云的文件存储系统中的文件的改变的系统和方法 Download PDF

Info

Publication number
CN107430622A
CN107430622A CN201680018865.8A CN201680018865A CN107430622A CN 107430622 A CN107430622 A CN 107430622A CN 201680018865 A CN201680018865 A CN 201680018865A CN 107430622 A CN107430622 A CN 107430622A
Authority
CN
China
Prior art keywords
user
file
notice
change
button
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201680018865.8A
Other languages
English (en)
Inventor
迈克尔·杰弗里·普罗考皮奥
约翰·赫恩登
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Priority to CN202410129094.6A priority Critical patent/CN117873980A/zh
Publication of CN107430622A publication Critical patent/CN107430622A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/1734Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Abstract

这里公开了用于向用户通知对存储在基于云的文件存储系统中的文件的改变的系统和方法。从远程服务器接收第一用户对文件的第一改变的第一指示,其中该文件与第二用户相关联并由远程服务器存储。接收第二用户的预订偏好。如果预订偏好允许通知的类别,则在与第二用户相关联的移动设备上显示指示文件的第一改变的通知。该通知包括文件的图形预览、文件的标识符和第一用户的身份。

Description

用于向用户通知对存储在基于云的文件存储系统中的文件的 改变的系统和方法
相关申请的交叉引用
本申请要求于2015年4月16日提交的美国非临时申请No.14/688,848的权益,其全部内容通过引用并入本文。
技术领域
总体上,本公开涉及与基于云的文件存储系统有关的系统和方法。
背景技术
用户一直快速采用基于云的计算服务,包括具有内置文件共享和协作能力的文件存储服务。同时,移动设备将得到大规模采用,并且基于云的存储服务正变得在移动平台上可用。用户越来越多地从他们的移动设备访问在基于云的储存器中的内容。目前,用户必须在其移动设备上手动启动应用,以查看和响应对在基于云的文件存储系统中的其文件所做的改变。这使得用户难以在他们只能够访问移动设备时在紧急项目上进行协作(例如,在他们旅行时)。
发明内容
本文公开了用于存储在基于云的文件存储系统中的文件的通知的系统和方法。一方面涉及向用户通知对存储在基于云的文件存储系统中的文件的改变。从远程服务器接收第一用户对所述文件进行的第一改变的第一指示,其中所述文件与第二用户相关联并由所述远程服务器存储。接收第二用户的预订偏好。如果通知的类别被所述预订偏好所允许,则在与所述第二用户相关联的移动设备上显示通知,所述通知指示对所述文件的所述第一改变。所述通知包括:文件的图形预览、文件的标识符和第一用户的身份。提供对存储在基于云的文件存储系统中的文件的改变的通知可以用于减少多个用户的编辑的重复。减少改变的重复可以用于减少计算资源的使用,包括用户设备处理和电池以及在与基于云的文件存储系统进行通信时的带宽。而且,通过减少编辑的重复,也可以另外减少为了协调重复的或冲突的改变而可能需要的云中的计算。
另一方面涉及一种用于向用户通知对存储在基于云的文件存储系统中的文件的改变的系统。该系统包括电路,所述电路被配置为从远程服务器接收第一用户对该文件的第一改变的第一指示的电路,其中该文件与第二用户相关联并由远程服务器存储。所述电路进一步被配置为接收第二用户的预订偏好,并且如果该通知的类别被预订偏好所允许,则由与第二用户相关联的移动设备显示指示对文件的第一改变的通知。所述通知包括文件的图形预览、文件的标识符和第一用户的身份。
在一些实施例中,图形预览包括所述文件的受所述第一改变影响的一部分。在某些实施例中,图形预览突出所述文件的受第一改变影响的一部分。图形预览可以显示所述文件的由第一用户编辑的一部分,并且可以排除所述文件的未被改变的各个其他部分(例如,其他段落)。以这种方式,用户可能能够查看改变而不需要访问整个文档,从而减少带宽和其他相关联的计算资源的使用。在一些示例中,第二用户可能能够在通知内编辑文件。在这样的示例中,文件可以直接从通知中编辑,而不需要在单独的应用中打开该文件。除了其他之外,除减少用户的认知负担外,这可以减少用户设备的用户界面组件的负荷。通知可以包括允许第二用户响应于该通知而执行动作的动作按钮。动作按钮可以包括用于联系第一用户的按钮。响应于对动作按钮中的一个的选择,可以在移动设备上调用本地应用来处置该文件。处置文件可以包括打开文件、查看文件、和编辑文件中的至少一个。在一些实施例中,响应于对用于与第一用户联系的按钮的选择,在移动设备上调用本地电子邮件应用,并且用本地电子邮件应用自动生成寻址到第一用户的电子邮件地址的电子邮件。可以从存储在移动设备中的地址簿中检索第一用户的联系信息。在某些实施例中,基于包含在通知中的第一用户的身份检索基于第一用户的电话号码,并且响应于对用于联系第一用户的按钮的选择,文本消息被寻址到第一用户的电话号码。在某些实施例中,从远程服务器接收对文件的第二改变的第二指示,并且响应于确定第一和第二改变是相关的,第一和第二改变被分组,使得该通知指示分组的第一和第二改变。分组改变可以用于减少发送的通知的数目,并且因此可以减少系统使用的带宽和处理资源。
在一些实施例中,第一改变包括授权第二用户访问文件。动作按钮可以包括用于更新第二用户的预订偏好的动作按钮。预订偏好可以包括活动类型、受监视文件的身份、受监视文件夹的身份、以及感兴趣的用户的身份中的至少一个。在某些实施例中,从存储在移动设备中的地址簿中检索第一用户的联系信息。在一些实施例中,通知还包括第一用户的图像、文件的类型、文件的描述、文件的大小、与文件相关联的开放URL、第一改变的时间、第一改变的类型或文件的所有者的标识符。
附图说明
本公开的上述和其它特征——包括其性质及其各种优点——在考虑以下结合附图的详细描述时将更加显而易见,在附图中:
图1是根据说明性实施例的用于向用户通知对存储在基于云的文件存储系统中的文件的改变的计算机化系统的框图。
图2是根据说明性实施例的用于向用户通知存储在基于云的文件存储系统中的文件的改变的系统架构的图。
图3是根据说明性实施例的显示用户对于接收关于对存储在基于云的文件存储系统中的文件的改变的通知的预订偏好的用户界面的显示的图。
图4是根据说明性实施例的向用户通知对存储在基于云的文件存储系统中的文件的改变的用户界面的显示的图。
图5是根据说明性实施例的允许用户选择如何和与通知相关联的文件进行交互的用户界面的显示的图。
图6是根据说明性实施例的允许用户通过在不打开文件的情况下与通知交互来编辑与通知相关联的文件的用户界面的显示的图。
图7是根据说明性实施例的生成被寻址到存储在基于云的文件存储系统中的文件的编辑器的电子邮件的用户界面的显示的图。
图8是根据说明性实施例的用于向用户通知对存储在基于云的文件存储系统中的文件的改变的说明性方法的流程图。
图9是根据说明性实施例的响应于与通知相关联的用户动作输入而采取动作的说明性方法的流程图。
图10是根据说明性实施例的用于执行本文所述的任何过程的计算设备的框图。
具体实施方式
为了提供对本公开的全面理解,现在将描述某些说明性实施例,包括用于提供对存储在基于云的文件存储系统上的文件的改变的通知的系统。具体地,描述了允许向用户通知对存储在基于云的文件存储系统中的文件的改变的系统和方法。然而,本领域普通技术人员将理解,本文描述的系统和方法可以被适配和修改以适合于正在处理的应用,并且本文描述的系统和方法可以用于其它合适的应用中,并且这样的其他添加和修改将不会偏离其范围。通常,本文描述的计算机化系统可以包括一个或多个引擎,其包括一个或多个处理设备,诸如计算机、微处理器、逻辑设备或其配置有用于执行本文描述的计算机化方法中的一个或多个的硬件、固件和软件其他设备或处理器。
本公开提供了用于向用户通知对存储在基于云的文件存储系统中的文件的改变的系统和方法。这里描述的系统和方法允许对文件的改变的及时、有意义和可操作的通知。该系统和方法还允许用户使用预订偏好来控制用户接收的通知的类型。这里描述的通知是以文件为中心的,因为它们向用户通知与文件相关的动作和活动。尽管该描述主要侧重于移动设备用例,但是本文描述的系统和方法可直接适用于与通知相关联的任何平台。在基于web的存储系统发明来描述这里描述的系统和方法,其可以通过网络与其他系统通信以存储和共享用户数据。通常,本领域普通技术人员将理解,本文所述的系统和方法可应用于局部互连的系统而不脱离本发明的范围。
本文描述的系统和方法允许用户被通知对在基于云的文件存储系统中文件所做的改变,而不需要用户手动启动应用并手动检查改变。相反,所述系统和方法允许进程在移动设备的后台运行以检查文件的改变。当检测到改变时,该处理可以通知用户该改变。用户不仅被通知改变,而且被提供改变的细节。例如,细节可以包括对改变负责的用户的标识符、相关元数据(例如,改变的文件的标识符、标题、图标、开放URL、文件类型、描述、文件大小)或改变的文件的图形预览。以这种方式,用户不必启动单独的用户界面来看到改变的细节。此外,通知可以包括允许响应于该通知而采取动作的动作按钮。例如,用户可能能够直接从与通知一起提供的图形预览中编辑文件(例如,从文件中录入或删除文本),而无需手动启动单独的应用。这允许用户快速检测、解释、和响应于文件的改变,而无需启动额外用户界面。
在一些实施例中,通知包括电子邮件选项,其允许用户向对改变负责的编辑者发送电子邮件。在这样的情况下,电子邮件可能会自动将地址指向编辑者,并且电子邮件的主题行可以预先被填写该文件的描述。电子邮件的自动寻址和预填写可能会使与编辑者的通信更加快速和方便,从而促进在紧急项目上的协作。在一些实施例中,用户可以使用通知来通过其他通信模式来联系编辑者。例如,通知可以包括允许用户发起向编辑者的文本消息、视频会议、或对电话呼叫的选项。这可以为特别紧急的项目提供比电子邮件更快和更直接的沟通方式。上述特征还促进与离开办公室或在旅行的用户进行协作,特别是在处理时间敏感的项目时。考虑以下详细描述,这些优点和其它优点将更加明显。
图1描绘了可用于实现本文描述的系统和方法的网络和数据库结构的示例。图1是用于允许以文件为中心的通知的计算机化系统100的框图。系统100包括基于web的存储系统114、用户设备102、和移动设备104,其全部配置为通过网络101来通信。第一用户103与用户设备102相关联,并且第二用户105与移动设备104相关联。第一用户103可以是用户设备102的所有者或物理拥有用户设备102。类似地,第二用户105可以是移动设备104的所有者或物理拥有移动设备104。基于web的存储系统114包括服务器116、处理器118和用户数据数据库120。移动设备104包括处理器108、显示器110、用户输入设备112和用于存储预订偏好的数据库113。用户设备102和移动设备104均可以是智能电话、平板计算机、可穿戴计算设备、膝上型计算机、台式计算机、或任何其它合适的计算设备。
如本文所使用的,术语“处理器”指代配置有硬件、固件和软件以执行本文描述的一个或多个计算机化技术的一个或多个计算机、微处理器、逻辑设备、服务器、或其他设备。处理器和处理设备还可以包括用于存储当前正在处理的输入、输出和数据的一个或多个存储器设备。图1中仅示出了一个基于web的存储系统114和仅两个设备102和104,以避免将绘图复杂化。一般地,系统100可以支持多个基于web的存储系统和任何数目的用户设备和移动设备。
基于web的存储系统114是允许用户存储、检索和修改数据的文件托管系统。该数据可以被称为存储在用户数据数据库120中的用户的web数据。服务器116、处理器118或两者可以执行与维护用户数据数据库120有关的功能,例如为数据分配存储器、接收要存储在数据库中的新数据、删除数据库中的数据、或与数据库维护相关的任何其他合适功能。基于web的存储系统114可以存储在单个服务器系统上或分布式系统中。特别地,基于web的存储系统114可以使用云存储来存储用户数据。
web存储系统114的用户数据数据库120包括与第二用户105相关联的文件121。具体地,在图1的示例中,文件121由第二用户105拥有。在一些实施例中,文件121与第二用户105相关联,因为第二用户105已经对该文件登记(register)了兴趣(例如,预订了该文件)、已经评论过该文件、已被授权访问该文件、需求访问过该文件、或出于任何其他合适的原因。第一用户103可以通过用户设备102与文件121交互。第一用户103可以通过下述方式来与文件121交互:通过(与第二用户105或与其他用户)共享文件121,通过编辑文件121(直接或通过第三方应用),通过对文件121进行评论,通过删除文件121,通过对文件121执行工作流操作(例如,过程批准),通过向文件121添加新的修订,通过回复与文件121相关联的评论,或者通过与改变与文件121相关联的内容或元数据相关的任何其它合适的动作。
在第一用户103对文件121进行动作之后,由基于web的存储系统114记录改变。第一用户103的动作的指示(例如,改变事件)通过网络101被发送到移动设备104。可以由web存储系统114紧接在检测到改变之后(例如,推送架构)或响应于移动设备104的周期性轮询调用(例如,轮询架构)发送指示。如果使用轮询架构,则移动设备104可以以规律的间隔(例如,1秒、10秒、30秒、1分钟、5分钟、30分钟、1小时、1天或任何其他合适的间隔)查询改变,并且相关的改变可以被批处理、分组、组合、合并或以其他方式聚合到组合通知中。相关的改变可能是对同一文件采取的行动、同一编辑者采取的行动、或在时间上紧密分组的动作(例如,1秒、2秒、5秒、10秒、1分钟、5分钟、10分钟、1小时或任何其他合适的时间帧)。可以响应于除第一用户103以外的动作者(例如,另一用户,第三方应用或可以能够访问文件121的任何其他实体)进行的动作而向第二用户105发送指示。
在移动设备104从基于web的存储系统114接收到改变的指示之后,移动设备104使用预订偏好113来确定改变是否在第二用户105登记兴趣的类别中。如果预订偏好113指示第二用户105有兴趣接收关于改变的通知,则生成通知并将其呈现在移动设备104的显示器110上。第二用户105可以查看该通知,对该通知进行动作,更新他或她的预订偏好113,或者响应于接收到该通知而执行任何其它合适的操作。
在一些实施例中,基于web的存储系统114在发送改变的指示之前确定改变是否匹配第二用户的预订偏好。在这样的情况下,第二用户105的预订偏好可以被存储在用户数据数据库120中,或者存储在可由114访问的单独的数据库中。如果检测到的改变与预订偏好中登记的任何类别不匹配,则基于web的存储系统114将不向移动设备104发送改变指示。
图2是根据说明性实施例的,用于向用户通知对存储在基于云的文件存储系统中的文件的改变的系统架构200的图。架构200可以用于图1的系统100。架构200包括三层:客户端用户界面(UI)层202、客户端逻辑层204和服务器层206。客户端UI层202包括偏好管理器208和通知应用编程接口(API)210。客户端设备可以是图1的移动设备104。客户端逻辑层204包括通知服务器接口层212、通知用户偏好数据库214、通知处理器216、通信管理器218、通知用户动作处置器220以及意图处置系统222。客户端逻辑层204负责存储用户偏好,接收改变事件,处理改变事件,聚合改变事件,发起通知的显示,以及适当地路由与通知的用户交互。服务器层206包括云存储服务224,其具有推送通知信道232和若干API:文件API 226、改变API 228和活动API230。应当理解,在一些实施方式中,服务器层可以包括任何合适数目的API。服务器层206负责接收、处理和返回由客户端逻辑层204中的组件发出的程序性查询。
通常,架构200以三个阶段操作:偏好显示阶段、通知检测阶段、和通知显示阶段。在偏好显示阶段,由偏好管理器208征求并记录用户的偏好。偏好管理器208被配置为显示通知选项的列表,并且接收用户希望接收的通知的类型或类别的指示。关于图3示出并描述了偏好管理器208的示例用户界面。使用偏好管理器208,用户可以选择例如在下述时候被通知:与他们共享文件、他们拥有的文件被编辑、他们拥有的文件与其他人共享(例如,访问扩大)、他们拥有的文件被评论、他们先前编辑的文件被编辑、删除、共享或评论、他们对文件的访问被去除、某些工作流操作已经在一个文件上执行(例如,过程批准)、第三方应用对他们所拥有或已登记兴趣的文件进行编辑、对他们所拥有或已登记兴趣的文件添加了新的修订、他们拥有或已经表达了兴趣的文件已被评论、他们在文件中留下的特定评论已被回复、或与文件相关的任何其他合适的事件。偏好管理器208在接收到偏好之后,将用户偏好存储在通知用户偏好数据库214中。用户偏好也可以由文件API226存储在云存储服务224中。在一些实施例中,可用的通知选项(包括用户当前未选择的那些)的列表被定义在云存储服务224中,并且由偏好管理器208从其接收。
在通知检测阶段,接收、处理通知数据以及对其进行动作。通知检测阶段可以主要由通信管理器218执行。通信管理器218可以是在客户端设备(例如,移动设备104)上的后台中基本上连续运行的进程。通信管理器218从API之一(例如,改变API 228)接收改变事件(例如,对文件的改变的指示)。可以响应于API的周期性轮询而接收到改变事件(例如,轮询架构),或者可以经由特殊的套接字连接在来自云存储服务224的被推送的数据有效负载中接收到改变事件(例如,推送架构)。
在使用轮询架构的实施例中,通信管理器218可以作为后台线程操作,并周期性地进行轮询循环。在轮询循环期间,通信管理器218查询改变事件(例如,潜在通知),使得任何改变事件与用户偏好一致,并且发送任何允许的通知以进行显示。允许的通知是用户偏好被准许的通知。因此,周期性地执行改变事件的收集和处理。该周期可以是固定的或可以改变(例如,基于服务器负载)。通常,可以选择该周期以在云存储服务224的服务器上维持可接受的低负载的同时减少通知时延(例如,发生事件与向用户的事件通知之间的时间)。
在使用推送架构的实施例中,通信管理器218可以与云存储服务224建立长时间运行的推送通知信道232。可以通过推送通知信道232将数据直接从云存储服务224发送到客户端,这可以消除通信管理器218进行轮询的需要。在这样的架构中,云存储服务224可以在发生改变事件时向客户端发送改变事件。由于改变事件通常可能比轮询间隔更稀少,因此直接传输改变事件可能会降低客户端-服务器流量以及客户端电池使用量和移动网络数据使用量。在一些实施例中,文件的附加信息(例如,活动信息)被包括在从云存储服务224发送到通信管理器218的有效负载中。在这样的情况下,通信管理器218可能不需要调用活动API 230以得到有关改变的文件的更多信息。
在接收到改变事件(或改变事件组)之后,通信管理器218通过调用存储在通知处理器216中的逻辑来使改变事件与用户偏好一致。然后,通信管理器218对通知处理器216查询以批处理、分组、组合、合并多个改变或以其他方式将多个改变聚合到同一文件来以防止重复或类似的通知。如果需要,并且如果由通知处理器216命令,则通信管理器218再次调用API(例如,活动API 230),以得到关于与通知相关联的特定文件的附加细节。附加细节可能包括上次编辑文件的用户、所做的具体改变、或有关文件的任何其他合适信息。之后,通信管理器218准备包括包含显示所需信息的客户端通知有效负载的通知。客户端通知有效负载由可能是客户端本地的通知API 210来定义。客户端通知有效负载包括与文件相关联的元数据。元数据可以是描述和给出关于其他数据的信息的数据集。给定文件的元数据可以与文件的内容区分开来。例如,文本文件的内容可以是其中存储的文本,而元数据可以包括文件名、文件大小、文件类型、最后修改日期、创建日期、文件所有者的名称、或类似信息。在一些实施例中,客户端通知有效负载包括主要描述、辅助描述、图像、动作、回调、或与该文件相关联的任何其它合适的元数据。
在通知有效负载被准备好之后,通信管理器218调用通知处理器216以发起通知的显示。如上所述,通知处理器216负责批处理、分组、组合、合并、或以其他方式聚合多个重复或类似的通知。在一些实施例中,当多个编辑者改变当前用户所拥有的相同文件时,通知处理器216组合这些通知以向用户显示单个组合通知(假定用户偏好允许该通知)。例如,当四个用户编辑相同的文件时,可以与主要描述“用户A和另外三个编辑<FileName>”一起显示组合的通知。
当客户端上的通知API 210接收到来自通知处理器216的调用时,通知显示阶段开始。响应于该调用,通知API 210向用户显示通知。通知的机制和外观可能因平台而异,因为每个平台的用于通知用户界面可能会有所不同。平台可以是其中一部软件被设计来操作的任何环境。平台可以包括硬件架构、操作系统(OS)、或运行时库。与本文所述的系统和方法兼容的平台包括本地操作系统、移动设备(例如,智能电话或平板计算机)、基于web的操作系统、可穿戴电子设备(例如,眼镜或手表)以及任何其它合适的平台。通知显示阶段可以经由各个不同平台的相应通知API与各个不同平台相接口。因此,本文所述的通知系统和方法不与特定平台绑定,而是作为替代被配置为跨平台操作(例如,用于跨平台通知)。在一些实施例中,通知以非突出方式出现,诸如在显示器顶部的通知条中而不会干扰显示器的其余部分。在这样的情况下,用户可以通过与通知进行交互(例如,轻扫、滑动、拖动、或按压)来检索附加细节。
通知显示阶段还可以包括允许用户对通知或响应于该通知而采取一系列动作。例如,用户可以和与通知相关联的文件交互,联系对通知负责的用户(例如,编辑者),更新存储在数据库214中的预订偏好,消除通知、或采取任何其他合适的动作。关于图9进一步讨论这些动作。无论用户选择什么动作,用户动作处置器220处置该动作。处置可以包括解释动作或执行回调函数。如果与通知关联的文件被打开,则调取(invoke)意图处置系统222。意图处置系统222被配置为执行诸如利用在客户端上的本原应用打开文件或打开本地电子邮件应用以向文件的编辑器发送电子邮件的进程间操作。
如果所接收的用户动作涉及打开与通知相关联的文件,则可以以各种方式之一打开文件。在一些实施例中,先前规定用于文件的文件类型的单个应用被调取以允许对文件的完全编辑。在某些实施例中,显示被登记来处置文件的客户端系统上的多个本地应用(例如,第三方应用),并且用户选择用于打开该文件的单个应用。在一些实施例中,调取通用内置预览器应用,其可以处置多个文件类型,例如文档、电子表格和幻灯片演示,以提供该文件的只读视图。在某些实施例中,该文件以可以在web浏览器中的基于web的视图(例如,非本原地)打开,如同通过web从台式计算机访问一样。
图3是示例性用户界面300的显示的图,示例性用户界面300显示用于接收关于对存储在基于云的文件存储系统中的文件的改变的通知的用户的预订偏好。在接收到通知之前,可能需要用户使用用户界面300登记(例如,预订)一个或多个类别的通知。用户界面300可以被移动设备104的显示器110显示给图1的第二用户105。用户界面300包括通知账户部分302、选择的通知账户栏304、选项部分306、振动选项310、铃声选项312、通知类别部分314、和通知选项316-321。在通知账户部分302中,用户指示他们希望设置预订偏好的通知账户。通知系统允许用户管理多个用户账户,使得用户可以为不同的账户指定不同的偏好。所选择的用户账户显示在所选择的通知账户栏304中。在一些实施例中,用户具有配置该预订偏好和与所选择的用户账户相关联的另一设备的预订偏好的自动同步的选项。
选项部分306中的启用通知选项308允许用户选择是否完全启用通知。如果启用通知,则用户可以选择通知中包含哪些类型的通知机制。例如,振动选项310和铃声选项312分别使得振动或可听铃声伴随该通知。在一些实施例中,用户可以选择灯(例如,移动设备上的LED)或另一类型的声音伴随通知。用户还可以选择显示的通知的视觉外观。例如,用户可以选择使通知表现为弹出窗口、徽标、或横幅。弹出窗口可能会要求用户在继续使用客户端设备之前采取动作或消除通知。横幅可以允许用户在显示通知时继续使用客户端设备,并可以自动消除。徽标可以是覆盖在特定应用的图标上(例如,在客户端设备的主屏幕上)的通知。通知也可能出现在客户端设备上的专用通知窗格或通知中心上。
通知类别部分314允许用户选择该用户希望接收的通知的类型。选项316-321允许分别在以下时候生成通知:当有人与用户共享文件时,当对用户所拥有的文件进行改变时,当对用户已登记了兴趣的文件进行改变时,当对用户评论的文件做出改变时,当第三方应用编辑用户拥有的文件时,或者当对用户登记了兴趣的文件夹中的文件进行改变时。尽管图3中仅示出了选项316-321,但是在其他实施例中,可以向用户呈现更多的选项、更少的选项、或不同的选项。例如,在一些实施例中,用户界面300还允许用户对由用户指定的某些文件进行静音或抑制通知。以这种方式,用户不会收到关于某些指定文件的通知。在某些实施例中,用户可以抑制除了特定列举的文件列表之外的所有通知。以这种方式,用户只接收关于某些指定文件的通知。上述实施例还可以允许预订偏好除特定文件外或代替特定文件引用整个文件夹。例如,用户可以静音或抑制关于指定文件夹或文件夹集合中的任何文件的通知,或者仅在通知是关于在指定的文件夹或文件夹集合中的任何文件的情况下才准许通知。此外,在一些实施例中,用户界面300允许用户静音或抑制与某个用户或用户列表所执行的动作有关的通知。类似地,在某些实施例中,用户界面300允许用户仅接收与某个用户或用户列表执行的动作有关的通知。可以组合任何上述准则。例如,用户可以使用用户界面300来登记关于文件夹A、B或C中的任何文件的通知,除了用户D、E或F之外。不同的预订选项给予用户对通知显示的高度控制。阻止与某些文件、文件夹、或用户相关的通知可以减少用户收到的不需要的通知的数目。允许用户接收与用户已经登记了兴趣的文件或文件夹相关的通知允许用户监视对用户可能不拥有的文件的重要改变。这可以促进跟踪对于用户正在协作但不拥有的文件的改变。
图4是向用户通知对存储在基于云的文件存储系统中的文件的改变的示例性用户界面400的显示的图。用户界面400可以显示在图1的移动设备104上。用户界面400向图1的第二用户105通知第一用户103已经编辑了由第二用户105拥有的文件。用户界面400包括通知402,其具有主要描述404、辅助描述406、图像408、图形预览410、时间412、和动作按钮416和418。主要描述404指示触发通知的动作的类型和执行动作的用户的标识符。在图4的示例中,主要描述404指示用户1(例如,图1中的第一用户103)编辑文件。辅助描述406指示被执行动作的文件。在这种情况下,“FileNameA.type”是受影响的文件。图像408指示执行动作的用户。在这种情况下,图像408是第一用户的照片或图形指示符。在一些实施例中,与图像408交互允许用户联系执行该动作的用户。例如,第二用户可以点击图像408以查看第一用户的联系信息。可以从第二用户的地址簿中检索该联系信息。第二用户可以通过电子邮件、文本消息、视频会议、或对与第一用户相关联的电话号码或其他地址的呼叫、或通过任何其他合适的通信来联系第一用户。可以从存储在客户端设备上的地址簿中检索第一用户的联系信息。此特征可实现用户之间的用于讨论对文件进行的改变的快速而直接的通信。这种快速而直接的通信可以有助于紧急项目。此外,当无法以书面形式发表评论时,电话呼叫对某些项目很有用。
图形预览410示出受第一用户做出的改变影响的文件的一部分。在一些实施方式中,图形预览显示与文件相关联的规范缩略图图像。规范缩略图图像可能对每个文档都是唯一的。例如,规范图像可以是文档或图像文件的第一页或视频中的关键帧。图形预览410可以排除文件的部分,诸如文件的不受该改变影响的部分。图形预览也可能强调文件中受到改变影响的部分。在图4的示例中,改变是对文本的删除,并由改变指示符414指示。用户可以通过选择(例如,按压或点击)图形预览410来打开该文件。用户可以被呈现程序列表,其可以被选择来处置(例如,打开、查看、编辑、渲染)文件。在一些实施例中,用户可以直接与图形预览410交互以编辑文件而不必打开该文件。交互可能包括缩放和平移图像的选项;播放视频;或翻阅标页码的内容(例如,多页PDF或文档)的页面。这将关于图6来进行讨论。
包括在用户界面400中的动作按钮416和418允许用户响应于该通知而采取动作。动作按钮416允许用户更新他或她的预订偏好。选择动作按钮416可以打开图3所示的用户界面300,使得用户可以改变他或她的偏好,其可能是先前由用户选择或设置为默认设置。动作按钮418允许第二用户响应于通知而发送电子邮件。具体地,动作按钮418生成寻址到第一用户的来自第二用户的电子邮件。收件人和主题可能会基于来自通知的信息来自动填写。在图7中示出可以响应于选择动作按钮418而生成的示例电子邮件。
图5是允许用户选择如何和与通知相关联的文件交互的示例性用户界面500的显示图。响应于接收对图4中的图形预览410的选择,可以显示用户界面500,以打开名为“FileNameA.type”的文件。用户界面500包括分别与应用1、应用2和应用3相对应的提示502、取消选项510、和标签504-506。尽管在用户界面500中示出了三个应用,但是可以示出任何合适数目的应用。提示502提示用户利用三个应用之一打开文件。三个示出的应用中的每一个已经被登记为能够打开选择的文件的类型。可以从文件的文件扩展名(例如,在该示例中为“.type”)来确定该文件的类型。可以将一个或多个应用配置为仅查看文件的类型,而其他应用可以被配置为查看和编辑文件的类型。应用可以是本原应用、第三方应用、或基于web的应用。本原应用可以是已经被开发用于特定平台或设备的应用。第三应用506的标签包括辅助描述“在web浏览器中打开(open in web browser)”,因为应用3是基于web的应用。因此,选择应用3将启动显示基于Web的应用的web浏览器。
图6是示例性用户界面600的显示的图,其允许用户通过与通知402交互而不打开文件来编辑与通知相关联的文件。用户界面600类似于图4的用户界面400并且还可以显示在图1的移动设备104上。如在用户界面400中那样,用户界面600包括通知402,其具有主要描述404、辅助描述406、图像408、图形预览410、时间412、以及动作按钮416和418。通知402向第二用户通知由第一用户对文件进行的改变(“FileNameA.type”)。图形预览410生成受第一用户所做改变影响的文件的一部分。具体地,图形预览410显示文件的由第一用户编辑的一部分,并排除未被改变的文件的各个其他部分(例如,其他段落)。图形预览410包括指示第一用户做出的改变的第一改变指示符414(例如,删除线格式化)、指示由第二用户做出的改变的第二改变指示符604(例如,下划线格式化)、和指示新文本的当前插入点的光标602。在该示例中,第一用户删除由第一改变指示符414指示的句子。响应于该通知,第二用户插入由第二改变指示符604指示的新文本。光标602的存在指示第二个用户可以继续将新文本录入到图形预览410的窗口中。使用该通知录入由第二改变指示符604指示的新文本,而不在单独的窗口中打开文件FileNameA.type。在一些实施例中,所述通知在客户端设备的后台与被配置为编辑文件的应用进行通信。在仍然显示的同时,该通知可以将用户的输入传递给被配置为通过进程间通信(例如,使用信号、套接字、消息队列、管道、共享存储器、消息传递、或在进程之间共享的存储器映射的文件)编辑文件的应用。除了文本录入之外,还可以从预览中对文件进行其他编辑,例如重命名文件、移动文件位置、复制文件、删除文件、共享文件、对文件进行评论、编辑文件中的多个部分、或任何其他合适的操作。在一些实施例中,可以显示场境(context)敏感菜单(例如,右键菜单),其呈现可以对该文件执行的操作。这样的特征允许直接从通知进行文件管理。虽然在上面讨论了预览中(in-preview)编辑,但是应当理解,在一些实施例中,文件可能是从图形预览410中非可编辑的。在这样的情况下,仍然允许用户与图形预览410交互。例如,图形预览410可以允许用户平移、滚动、或缩放以改变正在被预览的文件的视图。类似地,图形预览410还可以允许对视频文件的播放,将用于演示的幻灯片翻页,或者对具有分页内容的文件(例如PDF)进行滚动。在另外其他实施例中,图形预览可以是与文件相关联的只读缩略图,诸如规范图像。
图7是生成被寻址到存储在基于云的文件存储系统中的文件的编辑器的电子邮件的用户界面700的示例性显示的图。可以响应于对在图4的用户界面400中的电子邮件动作按钮418的选择而显示用户界面700。用户界面700包括发件人栏702、收件人栏704、主题行706、正文栏708、键盘710、附件按钮712、发送按钮714、和返回按钮716。用户界面700可以是图1的移动设备104的本地电子邮件应用的用户界面。因为第一用户执行与通知相对应的改变,所以收件人栏704被自动填充第一用户的电子邮件地址705(“user1@example.com”)。主题行706也被自动填充改变的文件的主要描述406。收件人栏704和主题行406的自动填充或预填写允许第二用户响应于该改变而快速地对编辑者(第一用户)进行响应。这样可以允许及时提供评论。在一些实施例中,当多于一个发件人电子邮件地址可用时,发件人栏702被自动填充与改变的文件相关联的电子邮件地址703。在添加了预先填写的数据之后,第二用户可以在向第一用户发送消息之前使用键盘710在正文栏708中录入评论或其他消息。第二用户还可以编辑自动添加的任何信息。例如,第二用户可以选择向主题行706添加更多信息,或者向收件人栏704添加额外的收件人。第二用户还可以使用附件按钮712添加附件。在一些实施例中,改变的文件或指向其的链接被自动附加到电子邮件。一旦电子邮件被起草,则第二用户通过选择发送按钮714来发送该电子邮件。收件人栏704和主题行406的预填写可以使编辑者之间的通信更加快速和方便,从而促进紧急项目的协作。此外,不是该文件的编辑者的额外收件人可以会被复制到去往第一用户的电子邮件上。这允许用户复制额外的收件人(例如,项目管理者),以得到关于特别重要的改变(例如,大量文本的删除或插入)的评论,并在改变不太重要时(例如,更正排版错误)复制较少的收件人。这种有针对性的评论方法可以减少由协作中不相干地涉及的团队成员收到的不需要的电子邮件数目。这也可以允许额外用户参与编辑过程,而不必使其成为文件的编辑者。
图8是用于向用户通知对存储在基于云的文件存储系统中的文件的改变的说明性方法800的流程图。可以使用分别在图1-7中讨论的系统100、架构200、用户界面300、400、500、600或700或其任何合适的组合来执行方法800。在步骤802中,从远程服务器接收第一用户对文件的第一改变的第一指示。该文件与第二个用户相关联,并由远程服务器存储。第一改变的第一指示可以由图1的基于web的存储系统114通过网络101发送到移动设备104。可以响应于对图2的云存储服务224的改变API 228的调用或从通过推送通知信道232发送的有效负载接收第一指示。
在步骤804中,接收第二用户的预订偏好。可以使用图2的偏好管理器208、图3的用户界面300或任何其他合适的手段来接收预订偏好。在一些实施例中,预订偏好包括活动类型、受监视文件的身份、被监视文件夹的身份、以及感兴趣的用户的身份中的至少一个。预订偏好还可以包括各种部分,诸如通知账户部分、全局通知选项部分、和通知类别部分。通知账户部分可以允许用户指示他们希望对其设置预订偏好的通知账户。在一些实施例中,通知系统允许用户管理多个用户账户,使得用户可以为不同的账户指定不同的偏好。在一些实施例中,用户具有选项来配置预订偏好和与所选择的用户账户相关联的另一设备的预订偏好的自动同步。全局通知选项部分可以允许用户选择是否全部启用通知。如果启用通知,则全局通知选项设置可允许用户选择通知中包含哪些通知机制。例如,用户可以选择伴随通知的振动或铃声。用户还可以选择显示的通知的视觉外观。例如,用户可以选择使通知表现为弹出窗口、徽标或横幅。弹出窗口可能会要求用户在继续使用客户端设备之前存取动作或消除通知。横幅可以允许用户在显示通知时继续使用客户端设备并可以自动消除。徽标可以是覆盖在特定应用的图标上(例如,在客户端设备的主屏幕上)的通知。通知也可能出现在客户端设备上的专用通知窗格或通知中心上。通知类别部分可以允许用户选择用户希望接收的通知的类型。这样的部分中的选项可以允许在以下时候生成通知:当某人与用户共享文件时、当对用户拥有的文件进行改变时、当对用户已经登记了兴趣的文件进行了改变时、当对用户评论的文件做出改变时、当第三方应用编辑用户拥有的文件时、或者当对用户登记了兴趣的文件夹中的文件进行改变时。也可以允许用户静音或抑制由用户指定的某些文件的通知。以这种方式,用户不会收到关于某些指定文件的通知。在某些实施例中,用户可以抑制除了特定列举的文件列表之外的所有通知。以这种方式,用户只接收关于某些指定文件的通知。上述实施例还可以允许预订偏好除特定文件外或替代特定文件引用整个文件夹。例如,用户可以静音或抑制关于指定文件夹或文件夹集合中的任何文件的通知,或者仅在通知是关于在指定的文件夹或文件夹集合中的文件时才准许通知。此外,在一些实施例中,用户可以静音或抑制与特定用户或用户列表执行的动作有关的通知。类似地,在某些实施例中,用户可以选择仅允许与特定用户或用户列表执行的动作相关的通知。可以组合任何上述准则。例如,用户可以登记以获得关于文件夹A、B或C中的任何文件的通知,除了用户D、E或F除外。这些不同的预订选项给予用户对通知显示的高度控制。阻止与某些文件、文件夹或用户相关的通知可以减少用户收到的不需要的通知的数目。允许用户接收与用户登记了兴趣的文件或文件夹相关的通知允许用户监视对用户可能不拥有的文件的重要改变。这可以促进跟踪用户正在协作但不拥有的文件的改变。
在步骤806中,如果预订偏好允许通知的类别,则在与第二用户相关联的移动设备上显示指示对文件的第一改变的通知。该通知包括文件的图形预览、文件的标识符、和第一用户的身份。图形预览可以排除文件的不受改变影响的一部分。可以使用API(例如,图2的通知API 210)或使用任何其它合适的方式在移动设备上显示该通知。在一些实施例中,通知显示在台式计算机、膝上型计算机或任何其它合适的计算设备上。该通知可以表现得类似于图4和6的通知402。
在一些实施例中,由通信管理器——诸如图2的通信管理器218——或通过任何其他合适的方式执行通知是否被预订偏好所允许的确定。在某些实施例中,在显示之前,将多个改变的指示批处理、分组、组合、合并、或以其他方式聚合成单个通知,以防止重复或类似的通知。显示通知可以包括:生成包括主要描述、辅助描述、图像、可能的用户动作、或任何其它合适信息的通知有效负载。在一些实施例中,可能的用户动作包括:更新预订偏好、联系对改变负责的用户、在单独的程序中打开文件、或者在通知内编辑文件的选项。
图9是用于响应于与通知相关联的用户动作输入而采取动作的说明性方法900的流程图。可以使用分别在图1-7中讨论的系统100、架构200、用户界面300、400、500、600或700或其任何合适的组合来执行方法900。在步骤902中,显示通知。该通知为用户提供了多个选项以用于响应于通知而进行动作。在方法900中,可用于选择的动作包括打开与通知相关联的文件、发送电子邮件、更新预订偏好、以及在通知内编辑文件。虽然方法900包括四个选项,但是在其他实施例中任何合适数目的选项是可用的。
在步骤904中,接收用户动作输入。用户动作输入是从提供的多个选项中对一个动作的选择。响应于该选择,在步骤906中选择一个动作。可能的动作包括打开文件、向对改变负责的用户发送电子邮件、或更新预订偏好。在一些实施例中,可能的动作还包括消除通知、通过其他通信模式(例如,文本消息、电话呼叫或视频会议)来联系对改变负责的用户、或任何其它合适的动作或其组合。
如果在步骤906用户选择打开文件,则在步骤908中显示被配置为打开文件的程序的列表。在一些实施例中,响应于接收到对文件的图形预览的选择而确定打开文件的意图。可以使用诸如图5的用户界面500的用户界面来显示程序列表。可以显示任何合适数目的程序。每个显示的程序可能已被登记为能够打开文件的文件类型。可以从文件的文件扩展名确定文件的类型。可以将一个或多个应用配置为仅查看文件类型,而其他应用可以被配置为查看和编辑文件类型。程序可能是本原应用、第三方应用、或基于Web的应用。本原应用可以是已经被开发用于特定平台或设备的应用。在步骤910中,接收对程序列表中的程序的用户选择。在步骤912中,用所选程序打开文件。如果所选择的应用是基于Web的应用,则启动Web浏览器以显示基于Web的应用。
如果在步骤906用户作为替代选择发送电子邮件,则在步骤914中打开本地电子邮件应用。可以显示本地电子邮件应用的用户界面,诸如图7的用户界面700。生成新的电子邮件,其可包括发件人栏、收件人栏、主题行、正文栏、和附件栏。随后,在步骤916中,预先填写电子邮件的主题和收件人。收件人栏可以被自动填充对改变负责的用户的电子邮件地址。主题行可能被自动填充已改变文件的主要描述。收件人栏和主题行的自动填充或预填写允许第二用户响应于该改变而快速对编辑器进行响应。这样可以允许及时提供评论。在一些实施例中,当多于一个发送者电子邮件地址可用时,发件人栏被自动填充与改变的文件相关联的电子邮件地址。在添加预填写数据之后,第二个用户可以在发送消息之前在正文栏中录入评论或其他消息。第二个用户还可以编辑自动添加的任何信息。例如,第二个用户可以选择向主题行添加更多信息或向收件人栏添加额外收件人。第二个用户也可以添加附件。在一些实施例中,改变的文件或指向其的链接被自动附加到电子邮件。收件人栏和主题行的预填写可以使编辑者之间的通信更快捷和方便,从而促进紧急项目的协作。此外,不是该文件的编辑者的额外收件人可能会在到编辑者的电子邮件中复制。这允许用户对特别重要的改变(例如,大量文本的删除或插入)复制其他收件人(例如,项目管理者),并且在改变不太重要(例如,纠正排版错误)时复制较少的收件人。这种评论的有针对性的方法可以减少由协作中不相干地涉及的团队成员收到的不需要的电子邮件数目。这也可以允许额外用户参与编辑处理,而不必使其成为文件的编辑者。
如果在步骤906用户选择更新预订偏好,则在步骤918中打开预订偏好管理器。预订偏好管理器可以是图2的偏好管理器208,并且可以显示图3的用户界面300。在一些实施例中,预订偏好包括活动类型、被监视文件的身份、受监视的文件夹的身份以及感兴趣的用户的身份中的至少一个。随后、在步骤920中,接收并存储更新的预订偏好。
如果在步骤906用户选择编辑文件,则可以在步骤922中从通知内编辑文件。在这样的情况下,直接从通知中编辑文件而不在单独的应用中打开该文件。可以使用诸如图6的用户界面600的用户界面来执行编辑操作。可以在通知中包括的图形预览中执行编辑。图形预览可能会示出已经受改变影响的文件的一部分,并且可能会排除未改变的文件的各个其他部分。可以在图形预览中显示光标,其指示新文本的当前插入点。可以添加新文本或数据,而不在单独的窗口中打开文件。为此,通知可以与被配置为在客户端设备的后台中编辑文件的应用进行通信。在仍然被显示的同时,该通知可以将用户的输入传递给被配置为通过进程间通信(例如,使用信号、套接字、消息队列、管道、共享存储器、消息传递、或在进程之间共享的存储器映射的文件)来编辑文件的应用。这允许第二用户从通知本身快速方便地编辑文件,或者在作出改变之后立即对其进行快速评论。编辑可能包括重命名文件、移动文件位置、复制文件、删除文件、或任何其他合适的操作。在一些实施例中,可以显示场境敏感菜单(例如,右键菜单),其呈现可以对该文件执行的操作。这样的功能允许直接从通知中进行管理。
图10是用于执行本文所述的任何过程的诸如图1的系统的任何组件的计算设备的框图。这些系统的每个组件可以在一个或多个计算设备1000上实现。在某些方面,这些系统的多个组件可以被包括在一个计算设备1000内。在某些实施方式中,可以跨若干计算设备1000实现组件和存储设备。
计算设备1000包括至少一个通信接口单元、输入/输出控制器1010、系统存储器、和一个或多个数据存储设备。系统存储器包括至少一个随机存取存储器(RAM 1002)和至少一个只读存储器(ROM 1004)。所有这些元素与中央处理单元(CPU 1006)通信,以促进计算设备1000的操作。计算设备1000可以以许多不同的方式配置。例如,计算设备1000可以是常规的独立计算机,或者替选地,计算设备1000的功能可以跨多个计算机系统和架构分布。在图10中,计算设备1000经由网络或本地网络链接到其他服务器或系统。
计算设备1000可以被配置在分布式架构中,其中数据库和处理器被容纳在分开的单元或位置中。一些单元执行主要处理功能,并最低限度包含通用控制器或处理器和系统存储器。在分布式架构实施方式中,这些单元中的每一个可以经由通信接口单元1008附接到用作与其他服务器、客户端或用户计算机以及其他相关设备的主要通信链路的通信集线器或端口(未示出)。通信集线器或端口本身可具有最小的处理能力,主要用作通信路由器。各种通信协议可能是系统的一部分,包括但不限于:以太网、SAP、SASTM、ATP、BLUETOOTHTM、GSM和TCP/IP。
CPU 1006包括处理器,诸如一个或多个常规微处理器和一个或多个辅助协处理器,诸如用于从CPU 1006卸载工作负载的数学协处理器。CPU 1006与通信接口单元1008和输入/输出控制器1010进行通信,CPU 1006通过该通信接口单元1008和输入/输出控制器1010与诸如其他服务器、用户终端或设备的其他设备通信。通信接口单元1008和输入/输出控制器1010可以包括用于与例如其他处理器、服务器或客户终端同时通信的多个通信信道。
CPU 1006也与数据存储设备通信。数据存储设备可以包括磁性,光学、或半导体存储器的适当组合,并且可以包括例如RAM 1002、ROM 1004、闪存驱动器、诸如压缩盘的光盘或硬盘或驱动器。CPU 1006和数据存储设备均可以例如完全位于单个计算机或其他计算设备内;或通过诸如USB端口、串行端口电缆、同轴电缆、以太网电缆、电话线、射频收发器或其他类似的无线或有线介质或前述的组合的通信介质彼此连接。例如,CPU 1006可以经由通信接口单元1008连接到数据存储设备。CPU 1006可以被配置为执行一个或多个特定的处理功能。
数据存储设备可以存储例如(i)计算设备1000的操作系统1012;(ii)适于根据本文描述的系统和方法并且特别是根据关于CPU 1006详细描述的过程来指导CPU 1006的一个或多个应用1014(例如,计算机程序代码或计算机程序产品);或(iii)可用于存储程序所需的信息的、适于存储信息的数据库1016。
操作系统1012和应用1014可以例如以压缩的、未编译的和加密的格式存储,并且可以包括计算机程序代码。程序的指令可以从除数据存储设备之外的计算机可读介质——诸如从ROM 1004或从RAM 1002读入到处理器的主存储器中。当程序中的指令序列的执行使得CPU 1006执行本文描述的处理步骤时,可以使用硬连线电路代替用于实现本公开的过程的软件指令,或与该软件指令结合来使用。因此,所描述的系统和方法不限于硬件和软件的任何特定组合。
可以提供合适的计算机程序代码以用于执行与本文所描述的任何处理相关的一个或多个功能。该程序还可以包括程序元素,诸如操作系统1012、数据库管理系统和允许处理器经由输入/输出控制器1010与计算机外围设备(例如,视频显示器、键盘、或计算机鼠标)相接口的“设备驱动器”。
本文所用的术语“计算机可读介质”指代提供或参与向计算设备1000的处理器(或本文所述的设备的任何其他处理器)提供指令以供执行的任何非暂时性介质。这样的介质可以采取许多形式,包括但不限于非易失性介质和易失性介质。非易失性介质包括例如光盘、磁盘、或磁光盘,或诸如闪存的集成电路存储器。易失性介质包括通常构成主存储器的动态随机存取存储器(DRAM)。计算机可读介质的常见形式包括例如软盘、柔性盘、硬盘、磁带、任何其他磁介质、CD-ROM、DVD、任何其他光学介质、打孔卡、纸带、具有孔图案的任何其他物理介质、RAM、PROM、EPROM或EEPROM(电可擦除可编程只读存储器)、FLASH-EEPROM、任何其它存储器芯片或盒、或计算机可以读取的任何其他非暂时性介质。
各种形式的计算机可读介质可以涉及携载向CPU 1006(或本文描述的设备的任何其他处理器)的供执行的一个或多个指令的一个或多个序列。例如,指令最初可以承载在远程计算机(未示出)的磁盘上。远程计算机可以将指令加载到其动态存储器中,并使用调制解调器通过以太网连接、电缆线、或甚至电话线发送该指令。计算设备1000(例如,服务器)本地的通信设备可以在相应的通信线路上接收数据,并将数据放置在处理器的系统总线上。系统总线将数据携载到主存储器,处理器从该主存储器检索并执行指令。由主存储器接收的指令可以在处理器执行之前或之后可选地存储在存储器中。此外,可以经由通信端口接收作为电信号、电磁信号或光信号指令,这些信号是携载各种类型信息的无线通信或数据流的示例性形式。
尽管在本文中已经示出和描述了本公开的各种实施例,但是对于本领域技术人员显而易见的是,这些实施例仅以示例的方式提供。在不脱离本公开的情况下,本领域技术人员将会想到许多变型、改变、和替换。应当理解,在实践本公开中可以采用本文描述的本公开的实施例的各种替选方案。

Claims (26)

1.一种用于向用户通知对存储在基于云的文件存储系统中的文件的改变的方法,所述方法包括:
从远程服务器接收由第一用户对所述文件进行的第一改变的第一指示,其中所述文件与第二用户相关联并由所述远程服务器存储;
接收所述第二用户的预订偏好;以及
如果通知的类别被所述预订偏好所允许,则在与所述第二用户相关联的移动设备上显示所述通知,所述通知指示对所述文件的所述第一改变;
其中,所述通知包括:
所述文件的图形预览,
所述文件的标识符,以及
所述第一用户的身份。
2.根据权利要求1所述的方法,其中,所述图形预览包括所述文件的受所述第一改变影响的一部分。
3.根据权利要求1或2所述的方法,其中,所述通知包括允许所述第二用户响应于所述通知而执行动作的动作按钮。
4.根据权利要求3所述的方法,进一步包括:响应于对所述动作按钮中的一个动作按钮的选择而调用所述移动设备上的本地应用来处置所述文件。
5.根据权利要求4所述的方法,其中,处置所述文件包括打开所述文件、查看所述文件、共享所述文件和编辑所述文件中的至少一个。
6.根据权利要求3至5中的任一项所述的方法,其中,所述动作按钮包括用于联系所述第一用户的按钮。
7.根据权利要求6所述的方法,进一步包括:
响应于对用于联系所述第一用户的按钮的选择,在所述移动设备上调用本地电子邮件应用;以及
用所述本地电子邮件应用自动生成寻址到所述第一用户的电子邮件地址的电子邮件。
8.根据权利要求6或7所述的方法,进一步包括:从存储在所述移动设备中的地址簿中检索所述第一用户的联系信息。
9.根据权利要求6所述的方法,进一步包括:
基于包括在所述通知中的所述第一用户的身份来检索所述第一用户的电话号码;以及
响应于对用于联系所述第一用户的按钮的选择,生成寻址到所述第一用户的所述电话号码的文本消息。
10.根据任一前述权利要求所述的方法,进一步包括:
从所述远程服务器接收对所述文件的第二改变的第二指示;以及
响应于确定所述第一改变和所述第二改变相关而对所述第一改变和所述第二改变进行分组;
其中,所述通知指示所分组的第一改变和第二改变。
11.根据权利要求3至9中的任一项所述的方法,其中,所述动作按钮包括用于更新所述预订偏好的动作按钮。
12.根据权利要求1至11中的任一项所述的方法,其中,所述预订偏好包括活动类型、被监视文件的身份、被监视文件夹的身份、以及感兴趣的用户的身份中的至少一个。
13.根据权利要求1至12中的任一项所述的方法,其中,所述通知进一步包括所述第一用户的图像、所述文件的类型、所述文件的描述、所述文件的大小、与所述文件相关联的开放URL、所述第一改变的时间、所述第一改变的类型或所述文件的所有者的标识符。
14.一种用于向用户通知对存储在基于云的文件存储系统中的文件的改变的系统,所述系统包括电路,所述电路被配置为:
从远程服务器接收由第一用户对所述文件进行的第一改变的第一指示,其中所述文件与第二用户相关联并由远程服务器存储;
接收所述第二用户的预订偏好;以及
如果通知的类别被所述预订偏好所允许,则由与所述第二用户相关联的移动设备显示所述通知,所述通知指示对所述文件的所述第一改变;
其中,所述通知包括:
所述文件的图形预览,
所述文件的标识符,以及
所述第一用户的身份。
15.根据权利要求14所述的系统,其中,所述图形预览包括所述文件的受所述第一改变影响的一部分。
16.根据权利要求14或15所述的系统,其中,所述通知包括允许所述第二用户响应于所述通知而执行动作的动作按钮。
17.根据权利要求16所述的系统,其中,所述电路进一步被配置为响应于对所述动作按钮中的一个动作按钮的选择而调用所述移动设备上的本地应用来处置所述文件。
18.根据权利要求17所述的系统,其中,处置所述文件包括打开所述文件、查看所述文件、共享所述文件和编辑所述文件中的至少一个。
19.根据权利要求16至18中的任一项所述的系统,其中,所述动作按钮包括用于联系所述第一用户的按钮。
20.根据权利要求19所述的系统,其中,所述电路进一步被配置为:
响应于对用于联系所述第一用户的按钮的选择,在所述移动设备上调用本地电子邮件应用;以及
用所述本地电子邮件应用自动生成寻址到所述第一用户的电子邮件地址的电子邮件。
21.根据权利要求19或20所述的系统,其中,所述电路进一步被配置为从存储在所述移动设备中的地址簿中检索所述第一用户的联系信息。
22.根据权利要求19所述的系统,其中,所述电路进一步被配置为:
基于包括在所述通知中的所述第一用户的身份来检索所述第一用户的电话号码;以及
响应于对用于联系所述第一用户的按钮的选择,生成寻址到所述第一用户的所述电话号码的文本消息。
23.根据权利要求14至22中的任一项所述的系统,其中,所述电路进一步被配置为:
从所述远程服务器接收对所述文件的第二改变的第二指示;以及
响应于确定所述第一改变和所述第二改变相关而对所述第一改变和所述第二改变进行分组;
其中,所述通知指示所分组的所述第一改变和所述第二改变。
24.根据权利要求14至23中的任一项所述的系统,其中,所述动作按钮包括更新所述预订偏好的选项。
25.根据权利要求14至24中的任一项所述的系统,其中,所述预订偏好包括活动类型、被监视文件的身份、被监视文件夹的身份、以及感兴趣的用户的身份中的至少一个。
26.根据权利要求14至25中的任一项所述的系统,其中,所述通知进一步包括所述第一用户的图像、所述文件的类型、所述文件的描述、所述文件的大小、与所述文件相关联的开放URL、所述第一改变的时间、所述第一改变的类型或所述文件的所有者的标识符。
CN201680018865.8A 2015-04-16 2016-04-15 用于向用户通知对存储在基于云的文件存储系统中的文件的改变的系统和方法 Pending CN107430622A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410129094.6A CN117873980A (zh) 2015-04-16 2016-04-15 用于向用户通知对文件的改变的系统和方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/688,848 2015-04-16
US14/688,848 US10356157B2 (en) 2015-04-16 2015-04-16 Systems and methods for notifying users of changes to files in cloud-based file-storage systems
PCT/US2016/027926 WO2016168726A1 (en) 2015-04-16 2016-04-15 Systems and methods for notifying users of changes to files in cloud-based file-storage systems

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202410129094.6A Division CN117873980A (zh) 2015-04-16 2016-04-15 用于向用户通知对文件的改变的系统和方法

Publications (1)

Publication Number Publication Date
CN107430622A true CN107430622A (zh) 2017-12-01

Family

ID=55861228

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202410129094.6A Pending CN117873980A (zh) 2015-04-16 2016-04-15 用于向用户通知对文件的改变的系统和方法
CN201680018865.8A Pending CN107430622A (zh) 2015-04-16 2016-04-15 用于向用户通知对存储在基于云的文件存储系统中的文件的改变的系统和方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202410129094.6A Pending CN117873980A (zh) 2015-04-16 2016-04-15 用于向用户通知对文件的改变的系统和方法

Country Status (5)

Country Link
US (3) US10356157B2 (zh)
CN (2) CN117873980A (zh)
DE (2) DE112016001737T5 (zh)
GB (1) GB2553930B (zh)
WO (1) WO2016168726A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109729218A (zh) * 2018-12-10 2019-05-07 珠海格力电器股份有限公司 消息的处理方法、系统和手机
US20230199056A1 (en) * 2021-12-21 2023-06-22 Citrix Systems, Inc. Accessing files from virtual desktops and applications during interruptions to connectivity

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9998555B2 (en) 2014-04-08 2018-06-12 Dropbox, Inc. Displaying presence in an application accessing shared and synchronized content
US10270871B2 (en) 2014-04-08 2019-04-23 Dropbox, Inc. Browser display of native application presence and interaction data
US10091287B2 (en) 2014-04-08 2018-10-02 Dropbox, Inc. Determining presence in an application accessing shared and synchronized content
US10171579B2 (en) 2014-04-08 2019-01-01 Dropbox, Inc. Managing presence among devices accessing shared and synchronized content
US10387834B2 (en) 2015-01-21 2019-08-20 Palantir Technologies Inc. Systems and methods for accessing and storing snapshots of a remote application in a document
US9846528B2 (en) 2015-03-02 2017-12-19 Dropbox, Inc. Native application collaboration
US9740378B2 (en) * 2015-05-25 2017-08-22 Cisco Technology, Inc. Collaboration content sharing
US10528627B1 (en) * 2015-09-11 2020-01-07 Amazon Technologies, Inc. Universal search service for multi-region and multi-service cloud computing resources
US10489492B2 (en) * 2015-12-10 2019-11-26 Dropbox, Inc. Sending feature-instruction notifications to user computing devices
US10089289B2 (en) 2015-12-29 2018-10-02 Palantir Technologies Inc. Real-time document annotation
US10248933B2 (en) 2015-12-29 2019-04-02 Dropbox, Inc. Content item activity feed for presenting events associated with content items
US10620811B2 (en) * 2015-12-30 2020-04-14 Dropbox, Inc. Native application collaboration
US10439968B2 (en) * 2016-01-27 2019-10-08 Microsoft Technology Licensing, Llc Activity notification system
US20170286490A1 (en) * 2016-04-01 2017-10-05 Arista Networks, Inc. Implicit subscriptions in the connection protocol of a network switch
US10642844B2 (en) 2016-04-01 2020-05-05 Arista Networks, Inc. Non-materialized tables with standing queries
US10817512B2 (en) 2016-04-01 2020-10-27 Arista Networks, Inc. Standing queries in memory
US10783144B2 (en) 2016-04-01 2020-09-22 Arista Networks, Inc. Use of null rows to indicate the end of a one-shot query in network switch
US10860568B2 (en) 2016-04-01 2020-12-08 Arista Networks, Inc. External data source linking to queries in memory
US10783147B2 (en) 2016-04-01 2020-09-22 Arista Networks, Inc. Query result flow control in a network switch
US10382502B2 (en) 2016-04-04 2019-08-13 Dropbox, Inc. Change comments for synchronized content items
US10075583B2 (en) * 2016-04-13 2018-09-11 Microsoft Technology Licensing, Llc Suppressing indications of incoming communications in user interfaces
US11356396B2 (en) 2016-12-30 2022-06-07 Dropbox, Inc. Content management system with integrated email service
US10552529B2 (en) * 2017-05-03 2020-02-04 International Business Machines Corporation Data change alerts in a collaborative environment
US10652037B2 (en) 2017-09-25 2020-05-12 Microsoft Technology Licensing, Llc Notifying affected users of feature changes in a software application
US11399357B2 (en) * 2018-01-29 2022-07-26 Ranjan Jagannathan Method and system of context-based personalized notification batching
US11200282B1 (en) * 2018-03-22 2021-12-14 Atlassian Pty Ltd. Integrated views of multiple different computer program applications with action options
US11003468B2 (en) * 2018-11-07 2021-05-11 Citrix Systems, Inc. Preloading of application on a user device based on content received by the user device
US11481205B2 (en) * 2019-06-01 2022-10-25 Apple Inc. User interfaces for managing subscriptions
FR3102587B1 (fr) * 2019-10-24 2023-04-07 Amadeus Sas Système, procédé et appareil pour la corrélation d’objets de données
CN111325004B (zh) * 2020-02-21 2021-08-31 腾讯科技(深圳)有限公司 一种文件评论、查看方法
US20230185859A1 (en) * 2021-12-13 2023-06-15 Toshiba Tec Kabushiki Kaisha Document management device, document management method, and non-transitory recording medium

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040003352A1 (en) * 2002-06-27 2004-01-01 Bargeron David M. Notification of activity around documents
CN101315621A (zh) * 2007-05-29 2008-12-03 北京书生国际信息技术有限公司 一种实现文档共享编辑的方法
CN101888620A (zh) * 2009-05-14 2010-11-17 联芯科技有限公司 移动终端应用服务共享系统及共享方法
CN102077163A (zh) * 2008-06-27 2011-05-25 微软公司 文档编辑器内空间用户界面与文档编辑器外空间用户界面之间的通信
CN103503020A (zh) * 2011-04-28 2014-01-08 微软公司 通过回复电子消息来做出文档变更
US20140059217A1 (en) * 2012-08-27 2014-02-27 Cloudfounders Nv Method for content change notification in a cloud storage system, a corresponding cloud broker and cloud agent
US20140281870A1 (en) * 2013-03-14 2014-09-18 Microsoft Corporation Document collaboration and notification of changes using different notification mechanisms
WO2015006718A1 (en) * 2013-07-11 2015-01-15 Google Inc. Systems and methods for providing notifications of changes in a cloud-based file system

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6438564B1 (en) * 1998-06-17 2002-08-20 Microsoft Corporation Method for associating a discussion with a document
US20030172368A1 (en) * 2001-12-26 2003-09-11 Elizabeth Alumbaugh System and method for autonomously generating heterogeneous data source interoperability bridges based on semantic modeling derived from self adapting ontology
US7543003B2 (en) * 2005-08-25 2009-06-02 Microsoft Corporation Providing change notifications to an entity-regarding a change of a specific type to data in a relational database
US8015152B2 (en) * 2006-01-24 2011-09-06 Microsoft Corporation Web based client/server notification engine
US20070282959A1 (en) * 2006-06-02 2007-12-06 Stern Donald S Message push with pull of information to a communications computing device
US9798789B2 (en) * 2006-09-12 2017-10-24 Facebook, Inc. Method and system for tracking changes to user content in an online social network
US8037093B2 (en) * 2006-09-12 2011-10-11 Facebook, Inc. Feeding updates to landing pages of users of an online social network from external sources
JP2008257317A (ja) * 2007-04-02 2008-10-23 Fuji Xerox Co Ltd 情報処理装置、情報処理システム及びプログラム
US8868499B2 (en) * 2007-08-15 2014-10-21 Salesforce.Com, Inc. Method and system for pushing data to subscribers in an on-demand service
WO2009043033A2 (en) * 2007-09-28 2009-04-02 Xcerion Aktiebolag Network operating system
US7889092B2 (en) * 2007-11-27 2011-02-15 Alertus Technologies Alert device having notification-based customizable settings
US8086565B2 (en) * 2008-02-18 2011-12-27 Microsoft Corporation File system watcher in the presence of different file systems
US9298834B2 (en) * 2009-05-26 2016-03-29 Adobe Systems Incorporated User presence data for web-based document collaboration
JP5743469B2 (ja) * 2010-09-22 2015-07-01 キヤノン株式会社 情報処理装置、その制御方法、及び制御プログラム
US9706247B2 (en) * 2011-03-23 2017-07-11 Audible, Inc. Synchronized digital content samples
US9760920B2 (en) * 2011-03-23 2017-09-12 Audible, Inc. Synchronizing digital content
US8655321B2 (en) 2011-04-11 2014-02-18 Microsoft Corporation Adaptive notifications
US8965983B2 (en) * 2011-05-06 2015-02-24 Microsoft Technology Licensing, Llc Changes to documents are automatically summarized in electronic messages
US9256859B2 (en) * 2011-07-26 2016-02-09 Salesforce.Com, Inc. Systems and methods for fragmenting newsfeed objects
US20130185252A1 (en) * 2012-01-17 2013-07-18 Jeffrey J. Palmucci Document Revision Manager
US20130254699A1 (en) * 2012-03-21 2013-09-26 Intertrust Technologies Corporation Systems and methods for managing documents and other electronic content
US9483652B2 (en) * 2012-06-14 2016-11-01 Google Inc. Enabling user privacy for changes of access to shared content
US8640257B1 (en) * 2012-06-14 2014-01-28 Google Inc. Enabling user privacy for changes of access to shared content
US20140129661A1 (en) * 2012-11-06 2014-05-08 Somas THYAGARAJA Smart Web Notifications
US20140325629A1 (en) 2013-03-15 2014-10-30 Securedock, Llc System and method of online document storage and retrieval for use by hosting companies as a service to their clients
US20140359465A1 (en) * 2013-05-31 2014-12-04 Nubo Software Ltd. Method and Apparatus for Annotated Electronic File Sharing
CA2853411C (en) 2013-06-04 2024-03-12 Diego Matute A method for securely sharing a url
US10229134B2 (en) * 2013-06-25 2019-03-12 Box, Inc. Systems and methods for managing upgrades, migration of user data and improving performance of a cloud-based platform
JP6265007B2 (ja) * 2014-03-31 2018-01-24 京セラドキュメントソリューションズ株式会社 情報処理装置、画像形成装置、文書管理システム、文書管理方法
US10110536B2 (en) * 2014-04-21 2018-10-23 Dropbox, Inc. System for managing event notifications to client devices
US9990372B2 (en) * 2014-09-10 2018-06-05 Panzura, Inc. Managing the level of consistency for a file in a distributed filesystem

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040003352A1 (en) * 2002-06-27 2004-01-01 Bargeron David M. Notification of activity around documents
CN101315621A (zh) * 2007-05-29 2008-12-03 北京书生国际信息技术有限公司 一种实现文档共享编辑的方法
CN102077163A (zh) * 2008-06-27 2011-05-25 微软公司 文档编辑器内空间用户界面与文档编辑器外空间用户界面之间的通信
CN101888620A (zh) * 2009-05-14 2010-11-17 联芯科技有限公司 移动终端应用服务共享系统及共享方法
CN103503020A (zh) * 2011-04-28 2014-01-08 微软公司 通过回复电子消息来做出文档变更
US20140059217A1 (en) * 2012-08-27 2014-02-27 Cloudfounders Nv Method for content change notification in a cloud storage system, a corresponding cloud broker and cloud agent
US20140281870A1 (en) * 2013-03-14 2014-09-18 Microsoft Corporation Document collaboration and notification of changes using different notification mechanisms
WO2015006718A1 (en) * 2013-07-11 2015-01-15 Google Inc. Systems and methods for providing notifications of changes in a cloud-based file system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109729218A (zh) * 2018-12-10 2019-05-07 珠海格力电器股份有限公司 消息的处理方法、系统和手机
US20230199056A1 (en) * 2021-12-21 2023-06-22 Citrix Systems, Inc. Accessing files from virtual desktops and applications during interruptions to connectivity
US11722552B2 (en) * 2021-12-21 2023-08-08 Citrix Systems, Inc. Accessing files from virtual desktops and applications during interruptions to connectivity

Also Published As

Publication number Publication date
CN117873980A (zh) 2024-04-12
GB2553930B (en) 2021-09-22
US11258842B2 (en) 2022-02-22
US20160308940A1 (en) 2016-10-20
GB2553930A (en) 2018-03-21
US20220224750A1 (en) 2022-07-14
WO2016168726A1 (en) 2016-10-20
DE202016107435U1 (de) 2017-01-24
US10356157B2 (en) 2019-07-16
US20190342369A1 (en) 2019-11-07
GB201715223D0 (en) 2017-11-08
DE112016001737T5 (de) 2018-01-18

Similar Documents

Publication Publication Date Title
CN107430622A (zh) 用于向用户通知对存储在基于云的文件存储系统中的文件的改变的系统和方法
US10721279B2 (en) Managing messages between users for collaborative editing of electronic documents
US8219920B2 (en) Methods and systems for managing to do items or notes or electronic messages
EP3114622B1 (en) Communicating status regarding application of compliance policy updates
US9071615B2 (en) Shared space for communicating information
CN110839104B (zh) 群组通信方法、装置和设备
US20110191688A1 (en) Network system, server apparatus, and computer-readable storage medium
EP3221829A1 (en) Local representation of shared files in disparate locations
US10706033B2 (en) Content management system and method for managing ad-hoc collections of content
US11663540B2 (en) Ad hoc group management within a collaboration project sharing workflow
US10650085B2 (en) Providing interactive preview of content within communication
CN114528473A (zh) 一种基于WebSocket的信息集成发布方法及系统
CN111934985A (zh) 媒体内容的分享方法、装置、设备及计算机可读存储介质
CN111309211A (zh) 图片处理方法、装置及存储介质
WO2023147425A1 (en) Automatic canvas creation associated with a group-based communication channel
US10929351B2 (en) Determining document libraries to sync to a local computing device
US11727190B1 (en) Previews for collaborative documents
US20140026028A1 (en) Managing webpage edits

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: American California

Applicant after: Google limited liability company

Address before: American California

Applicant before: Google Inc.