CN108028857A - 智能通知 - Google Patents

智能通知 Download PDF

Info

Publication number
CN108028857A
CN108028857A CN201680053878.9A CN201680053878A CN108028857A CN 108028857 A CN108028857 A CN 108028857A CN 201680053878 A CN201680053878 A CN 201680053878A CN 108028857 A CN108028857 A CN 108028857A
Authority
CN
China
Prior art keywords
notice
equipment
individual
area
priority
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.)
Granted
Application number
CN201680053878.9A
Other languages
English (en)
Other versions
CN108028857B (zh
Inventor
Z·H·阿里
K·弗恩
S·M·L·M·道森
J·马斯特森
S·R·曼达
E·D·F·梅洛
严骏
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing 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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN108028857A publication Critical patent/CN108028857A/zh
Application granted granted Critical
Publication of CN108028857B publication Critical patent/CN108028857B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0604Management of faults, events, alarms or notifications using filtering, e.g. reduction of information by using priority, element types, position or time
    • H04L41/0609Management of faults, events, alarms or notifications using filtering, e.g. reduction of information by using priority, element types, position or time based on severity or priority
    • 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/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0604Management of faults, events, alarms or notifications using filtering, e.g. reduction of information by using priority, element types, position or time
    • H04L41/0622Management of faults, events, alarms or notifications using filtering, e.g. reduction of information by using priority, element types, position or time based on time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0604Management of faults, events, alarms or notifications using filtering, e.g. reduction of information by using priority, element types, position or time
    • H04L41/0618Management of faults, events, alarms or notifications using filtering, e.g. reduction of information by using priority, element types, position or time based on the physical or logical position
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)

Abstract

描述了基于通知对用户的重要性来控制所述通知。服务提供者可以接收通知。所述服务提供者可以部分地基于分配给所述通知的优先级水平以及与所述通知的呈现相关联的位置来确定用于发送所述通知的顺序。服务提供者可以在第一时段向至少一个设备发送第一通知。服务提供者可以确定发送第二通知引起与呈现策略的冲突。由此,服务提供者可以至少部分地基于预先确定量的时间的消逝和/或事件的发生来确定用于向至少一个设备发送第二通知的第一时间段之后的第二时间段,并且可以在第二时间段向至少一个设备发送第二通知。

Description

智能通知
背景技术
通知是在计算设备的用户界面上弹出以向所述计算设备的用户传送信息的警报。各种类型的通知用于向用户传送信息。例如,通知包括用于通知用户关于问题、改进的机会、对产品的更新、新特征的通告等的警报。越来越多数量的应用、服务提供者、网站等发布越来越多数量的通知,用户常常无法承受他们在其计算设备上接收的通知的数量。作为结果,通知常常被用户忽略,并且由此,在传送重要信息时可能不是有用的和/或有效的。
发明内容
该公开描述了用于基于通知对用户的重要性来控制通知的技术。该公开描述了由服务提供者接收可以与对应于一个或多个设备的简档相关联的通知。所述服务提供者可以至少部分地基于分配给通知的优先级水平以及与通知的呈现相关联的位置来确定用于发送所述通知的顺序。所述位置可以对应于要呈现所述通知的用户界面的区域。此外,该公开描述了在第一时间段中将所述通知中的第一通知从所述服务提供者发送至所述一个或多个设备中的至少一个设备。所述服务提供者可以确定所述通知中的第二通知超过要在第一时段中被发送至所述一个或多个设备的通知的预先确定的数量。由此,该公开描述了至少部分地基于预先确定量的时间的流逝和/或事件的发生来确定用于将所述第二通知发送至所述至少一个设备的所述第一时段之后的第二时段,并且在所述第二时段中将所述第二通知发送至所述至少一个设备。
提供该发明内容以用简化的形式引入在以下的具体实施方式中进一步描述的概念的选择。本发明内容不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于限制所要求保护的主题的范围。
附图说明
关于附图阐述了具体实施方式,在图中,附图标记的最左边的数字标识了该附图标记第一次出现所在的图。在描述和图中的不同的实例中使用的相同的附图标记可以指代相似或相同的项或特征。
图1是示出了用于至少部分地基于通知对用户的重要性来控制通知示例环境的示意图。
图2A是示出了经由设备的显示器呈现的用户界面的区域的示例的示意图。
图2B是示出了经由设备的显示器呈现的用户界面的多个区域的示例的示意图。
图2C是示出了经由设备的显示器呈现的用户界面的区域的示例的示意图。
图3是流程图,其示出了用于确定用于将通知发送至一个或多个设备的顺序以及根据所确定的顺序和呈现策略将通知发送至所述一个或多个设备的过程。
图4是流程图,其示出了用于确定用于将通知发送至一个或多个设备的顺序以及根据所确定的顺序将通知发送至所述一个或多个设备的过程。
图5是示出了用于至少部分地基于用户反馈来确定用户对通知的批准的示例过程。
图6是流程图,其示出了用于至少部分地基于经由与简档相关联的至少一个设备而与通知的用户交互来抑制将通知发送至与简档相关联的一个或多个设备的示例过程。
图7是计算机架构图,其示出了针对能够实现在本文中所呈现的技巧和技术的方面的计算系统的说明性计算机硬件和软件架构。
图8是示出了能够实现在本文中所描述的技巧和技术的方面的分布式计算环境的图。
图9是计算机架构图,其示出了针对能够实现在本文中所呈现的技巧和技术的方面的计算设备的计算设备架构。
具体实施方式
该公开描述了用于基于通知对用户的重要性来控制通知的技术。更加具体地,在本文中所描述的技术利用优先次序策略和呈现策略来确定用于将通知发送至与用户相关联的设备的顺序和时序,以便将对与其设备进行交互的用户的打扰最小化。通过规定通知被发送至设备的顺序和/或时序,通知可以在关于信息警报用户的同时允许用户在没有不必要的打扰的情况下与其设备交互。即,在本文中所描述的技术改进了在用户与其设备进行交互时的体验。额外地,通过减少发送至设备的通知的数量,在本文中所描述的技术增加了处理速度并且降低了处理器负载,从而改进了设备处理和/或发送通知请求的效率。
如在上文中所描述的,通知是在设备的用户界面上弹出以向设备的用户传送信息的警报。通知可以经由用户界面、电子邮件、文本消息、推送通知等呈现给用户。作为非限制性示例,通知可以包括用于通知用户关于问题、改进的机会、对产品的更新、新特征的通告等的警报。出于该讨论的目的,通知可以包括包含要传送至一个或多个用户的文本的数据分组以及使得一个或多个用户能够与通知交互的功能。作为非限制性示例,所述功能可以包括要在用户界面上呈现以提供使得用户评价或忽略该通知的功能的控件。例如,所述控件可以对应于滑尺、多选问题、Likert问题、下拉菜单、或者用于提供使得用户指示是否喜欢通知的功能的其他机制。额外地和/或可替代地,所述控件可以对应于提供使得用户忽略通知的功能的机制,其包括但不限于“接受”控件、“忽略”控件、由特定图形(例如,“x”)标记的控件等。
在本文中所描述的技术包括:由服务提供者接收能够与对应于一个或多个设备的简档相关联的通知。在本文中所描述的技术还包括:由服务提供者至少部分地基于分配给通知的优先级水平以及与通知的呈现相关联的位置来确定用于发送通知的顺序。所述位置可以对应于要呈现通知的用户界面的区域。此外,在本文中所描述的技术包括在第一时间段将通知中的第一通知从服务提供者发送至一个或多个设备中的至少一个设备。服务提供者可以确定通知中的第二通知超过要在第一时段中发送至一个或多个设备的通知的预先确定的数量。由此,该公开描述了至少部分地基于预先确定量的时间的流逝和/或事件的发生来确定用于将第二通知发送至至少一个设备的第一时段之后的第二时段,并且在所述第二时段中将所述第二通知发送至所述至少一个设备。
如在上文中所描述的,通过利用优先次序策略和/或呈现策略,在本文中所描述的技术将呈现给用户的通知的数量最小化。由此,在本文中所描述的技术将通知过载最小化并且使得用户能够在与设备进行交互时具有改进的体验。例如,在本文中所描述的技术使得用户能够接收与用户相关的警报和信息,同时仍然允许用户同与设备相关联的应用进行交互,而不重复通知以打断其交互。
作为非限制性示例,用户可以登录至他或她的电子邮箱账户(例如,等)。当用户登入时,服务提供者可以使得阻止用户访问他或她的电子邮件的第一通知被呈现给用户。与第一通知相关联的内容可以是诸如安全、规定之类的重要信息,和/或由用户指示为优选的通知。优先次序和/或呈现策略可以阻止用户接收再一次阻止用户访问他或她的电子邮件的紧随其后的第二通知。服务提供者可以至少部分地基于预先确定的时间段的消逝或事件的发生来在所确定的随后的时间处呈现第二通知。额外地和/或可替代地,如果第三通知不阻止用户访问他或她的电子邮件,则服务提供者可以在呈现第一通知紧接着之后和/或与第一通知同时地呈现第三通知。也就是说,优先次序策略和/或呈现策略将呈现给用户的通知的数量最小化,由此使得用户能够在与他或她的电子邮件账户进行交互时具有改进的体验。
作为另一非限制性示例,用户可以登录至他或她的电子笔记记录账户(例如,等)。当用户登入时,服务提供者可以使得阻止用户访问他或她的笔记记录功能的第一通知被呈现给用户。再一次,与第一通知相关联的内容可以是诸如安全、规定等之类的重要信息,和/或由用户指示为优选通知。优先次序和/或呈现策略可以阻止用户接收再一次阻止用户访问他或她的笔记记录功能的紧随其后的第二通知。服务提供者可以在至少部分地基于预先确定的时间段的流逝或事件的发生而确定的随后的时间处呈现第二通知。额外地和/或可替代地,如果第三通知不阻止用户访问他或她的笔记记录功能,则服务提供者可以在呈现第一通知紧接着之后和/或与第一通知同时地呈现第三通知。也就是说,优先次序策略和/或呈现策略将呈现给用户的通知的数量最小化,由此使得用户能够在与他或她的笔记记录账户进行交互时具有改进的体验。
说明性环境
图1是示出了用于至少部分地基于通知对用户的重要性来控制通知示例环境100的示意图。更加特别地,示例环境100可以包括服务提供者102、一个或多个网络104、一个或多个用户106、以及与一个或多个用户106相关联的一个或多个设备108A、108B、108C(统称“设备”108)。在一些示例中,与一个或多个用户106相对应的一个或多个用户简档可以与设备108中的一个或多个设备相关联。作为非限制性示例,在示例环境100中,用户106与设备108A、设备108B、和设备108C相关联。如将详细描述的,在本文中所公开的技术可以涉及被配置为至少部分地基于通知对用户的重要性来控制通知的任何数量的计算设备。该示例是出于说明性目的提供的,并且将不被理解成进行限制。应当理解的是,示例环境100可以包括任何数量的设备108和/或任何数量的服务提供者102。在以下的图7-9中描述了与示例环境100相关联的额外细节。
服务提供者102可以是促进确定用于将通知发送至设备108的顺序和/或时序以及根据所确定的顺序和/或时序将通知发送至设备108的任何实体、服务器、平台等。服务提供者102很可能是通过运行设备108或其他远程定位的设备上的一些模块而在非分布式计算环境中实现或者在分布式计算环境中实现。如图所示,服务提供者102可以包括一个或多个服务器110,其可以包括一个或多个处理单元(例如,处理器112)和计算机可读介质114(例如,存储器)。在各种示例中,服务提供者102可以接收和/或访问与一个或多个应用、服务提供者、网站等相关联的通知。服务提供者102可以至少部分地基于优先次序策略来确定用于将通知发送至设备108的顺序。额外地和/或可替代地,服务提供者102可以至少部分地基于呈现策略来确定用于将通知发送至设备108的时序。服务提供者102可以根据所确定的顺序和时序来将通知发送至设备108。在一些示例中,服务提供者102可以接收与通知相关联的反馈并且可以利用所述反馈来改进(或禁用)所述通知。
网络104可以促进服务器110同与一个或多个用户106相关联的设备108之间的通信。在一些示例中,网络104可以是本领域已知的任何类型的网络,例如互联网。此外,设备108可以以任何方式通信地耦合至网络104,例如通过全球或本地有线或无线连接(例如,局域网(LAN)、内联网等)。另外,设备108可以使用任何其他技术(例如蓝牙、NFC、或任何其他合适的基于光的、有线的、或无线的技术)来通信。应当理解的是,可以利用比在图1中所示出的更多类型的连接。
设备可以被包括在一个或多个服务器110中的示例支持场景可以包括在用于共享资源、平衡负载、增加性能、提供容错支持或冗余、或者出于其他目的的聚类或其他聚类配置中操作的一个或多个计算设备。包括在一个或多个服务器110中的设备可以表示但不限于台式计算机、服务器计算机、网络服务器计算机、个人计算机、移动计算机、膝上型计算机、平板计算机、可穿戴计算机、植入计算设备、电信设备、汽车计算机、支持网络的电视、瘦客户端、终端、游戏控制台、游戏设备、工作站、媒体播放机、数字视频录像机(DVR)、机顶盒、相机、包含在计算设备中的集成组件、家电、或任何其他类型的计算设备。
可以包括在一个或多个服务器110中的设备可以包括具有一个或多个处理单元(例如,处理器112)的任何类型的计算设备,其能够例如经由总线连接至计算机可读介质114,所述总线在一些实例中可以包括以下中的一个或多个:系统总线、数据总线、地址总线、PCI总线、Mini-PCI总线、以及任何多种本地、外围、和/或独立总线。存储在计算机可读介质114上的可执行指令可以包括例如简档模块116、通知模块118、优先次序模块120、呈现模块122、以及能够由处理器112加载和执行的其他模块、程序、或应用。
可替代地或另外地,在本文中所描述的功能可以至少部分地由诸如加速度计之类的一个或多个硬件逻辑组件来执行。例如而非限制,可以使用的说明性类型的硬件逻辑组件可以包括现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑器件(CPLD)等。可以与不同的服务提供者102相关联的一个或多个服务器110还可以包括组件,例如在图8中所示出的用于执行在本文中所描述的技术的一个或多个方面的组件。如将在本文中更加详细地描述的,服务器模块可以结合其他模块或设备来操作以实现在本文中所公开的技术的方面。
处理单元(例如,处理器112)可以表示例如CPU类型的处理单元、GPU类型的处理单元、现场可编程门阵列(FPGA)、另一类数字单处理器(DSP)、或者在一些实例中由CPU驱动的其他硬件逻辑组件。例如而非限制,可以使用的说明性类型的硬件逻辑组件包括:专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑器件(CPLD)等。在各种示例中,处理单元(例如,处理器112)可以执行一个或多个模块和/或过程以使得服务器110执行多种功能,如在上文中阐述并且在以下公开中详细解释的。额外地,处理单元(例如,处理器112)中的每个可以处理其自己的本地存储器,其还可以存储程序模块、程序数据、和/或一个或多个操作系统。在以下的图9中描述了与处理单元相关联的额外的细节。
在至少一个配置中,服务器110的计算机可读介质114可以包括促进服务提供者102与一个或多个设备108之间的交互的组件。所述组件可以表示在计算设备上执行的代码的片段。例如,计算机可读介质114可以包括简档模块116、通知模块118、优先次序模块120、呈现模块122等。在至少一些示例中,模块(116、118、120、122等)可以经由至少一个处理单元(例如,处理器112)而被实现为计算机可读指令、各种数据结构等,从而配置设备执行指令并且确定用于将通知发送至设备108的顺序并根据所确定的顺序来发送通知。用于执行这些操作的功能可以被包括在多个设备或单个设备中。在以下的图7中提供了与计算机可读介质114相关联的额外的细节。
简档模块116可以存储与一个或多个用户106相关联的数据(例如,用户数据)。所述数据可以被映射至和/或以其他方式关联至对应于个体用户106的简档。对应于个体用户106的简档每个可以与唯一的标识符相关联。一个或多个设备108可以与对应于唯一的标识符的个体的简档相关联。简档模块116可以从一个或多个用户106接收与一个或多个用户106相关联和/或代表一个或多个用户106的数据,和/或经由第三方源和系统(例如,社交网络、职业网络等)来访问与一个或多个用户106相关联的数据。在一些示例中,一个或多个用户106可以在他们建立其简档以用于与服务提供者102、应用(例如,应用128等)、网站等交互时响应于针对数据等的提示而输入数据。在至少一个示例中,一个或多个用户106可以输入与针对接收通知的偏好相关联的数据。作为非限制性示例,一个或多个用户106可以指示他们“总是”或“永不”想要接收与指定内容相关联的通知,可以指定优选的传递机制、时间、频率、服务提供者、应用、网站等。在一些示例中,一个或多个用户106可以指示他们优选于在预先确定的时间处和/或在事件发生之后看到与指定内容、传递机制、时间、服务提供者、应用、网站等相关联的通知。作为额外的和/或可替代的非限制性示例,一个或多个用户106可以指示他们想要在预先确定的时间段内接收不超过指定数量的通知。
通知模块118可以访问、接收、创建、和/或存储通知。所述通知可以与一个或多个应用(例如,应用128)、服务提供者(例如,服务提供者102)、网站等相关联。如在上文中所描述的,所述通知可以每个包括包含要传送至一个或多个用户106的文本的数据分组以及使得一个或多个用户106能够与通知交互的功能。所述通知可以每个与指示关于通知的信息的元数据相关联。所述元数据可以与来自通知源(例如,应用(例如,应用128)、服务提供者(例如,服务提供者102)、网站等)的通知进行通信。
在至少一个示例中,所述元数据可以指示通知的源、通知的目的等,如由通知的设计者(例如,程序管理员、项目管理员等)所指示的。在至少一个示例中,所述元数据可以与对应于个体通知的标识符相关联,所述个体通知指示通知的内容与安全、规定、更新、新特征、增销机会(例如,提供新的产品和/或服务的通知)等相关联。个体通知可以与指示该个体通知被推荐发送至设备108的时序的数据相关联。所述元数据可以包括指示所述时序的数据。额外地,个体通知可以与指示个体通知在其后过期的时间段的过期数据相关联。所述元数据可以包括过期数据。所述个体通知每个可以与该个体通知被呈现的用户界面中的区域相关联。所述信息可以包括关于该个体通知被呈现的用户界面中的区域的信息。此外,个体通知每个可以与一个或多个事件(例如,触发事件)相关联,所述事件的发生使得通知被发送至至少一个设备(例如,设备108A、设备108B、和/或设备108C)。所述元数据可以包括关于一个或多个事件的信息。
在至少一个示例中,通知模块118可以包括能够存储通知的队列。如在下文中所描述的,优先次序模块120可以利用优先次序策略来确定用于在通知模块118中存储通知的顺序。如在下文中所描述的,呈现模块122可以访问来自与通知模块118相关联的队列的通知并且利用呈现策略来确定是否和/或何时将通知发送至设备108。
优先次序模块120可以利用优先次序策略来确定用于将通知发送至设备108的顺序。优先次序策略可以包括指定针对所述通知中的每个个体通知的优先级水平的一个或多个规则。优先级水平与通知相对于通知模块中的其他通知的重要性相对应。通知可以与范围从P0至PN的优先级水平相关联,其中N是大于零的任何整数。具有P0的优先级水平的通知表示最重要的通知。P1的优先级水平表示没有P0的优先级水平重要,但是比P2、P3、P4、…、PN的优先级水平重要的通知。与不同的优先级水平相关联的通知可以至少部分地基于优先次序策略和/或呈现策略而在同一时段期间或不同的时段期间被发送至至少一个设备(例如,设备108A、设备108B、和/或设备108C)。
优先次序模块120可以利用优先级水平来确定用于将通知发送至设备108的顺序。优先次序策略可以至少部分地基于元数据来向个体通知分配优先级水平,所述元数据标识个体通知的源,与个体通知相关联的内容是否与安全、规定、更新、新特征、增销机会等相关联,与个体通知相关联的时序等。优先次序策略将最高优先级水平分配给包括与安全和/或规定相关联的内容的通知,并且可以将随后较低的优先级水平分配给包括与由用户106(例如,如在上文中所描述的,根据与简档相关联的数据,所述简档与用户106相关联)明确地请求的内容、更新、新特征、增销机会等相关联的内容的通知。以下的表1是多个通知以及由优先次序策略所确定的对应的优先级水平的示例。
表1
除了利用优先级水平来确定用于发送通知的顺序,优先次序策略还可以至少部分地基于与通知的呈现相关联的位置来确定用于将通知发送至设备108的顺序。也就是说,优先次序策略可以考虑要显示通知的用户界面上的区域,以及该区域是否会与用户106尝试执行的任务冲突和/或干扰,如在下文中所描述的。
在一些示例中,优先次序策略可以至少部分地基于与接收通知的时间相关联的时间戳来确定用于将通知发送至设备108的顺序。例如,在非限制性示例中,如果通知模块118接收两个通知并且优先次序模块120确定所述通知两者都与优先级水平P3相关联,则与时间较早的时间戳相关联的第一通知可以排序在与时间较晚的时间戳相关联的第二通知之前。由此,第一通知可以在第二通知之前被发送至一个或多个设备108。
在一些示例中,优先次序策略可以至少部分地基于与通知相关联的过期时间来确定用于将通知发送至设备108的顺序。例如,在非限制性示例中,如果通知模块118接收三个通知并且优先次序模块120确定所述通知全都与优先级水平P2相关联,则在时间上首先过期的通知可以排序在时间上较晚过期的通知之前。由此,时间上首先过期的通知可以在其他通知之前被发送至一个或多个设备108。
额外地和/或可替代地,优先次序策略可以至少部分地基于语义上挖掘通知以识别有关确定顺序的特定词语来确定用于将通知发送至设备108的顺序。例如,在非限制性示例中,如果通知模块118接收两个通知并且优先次序模块120确定所述通知两个都与优先级水平P3相关联,则优先次序模块120可以利用语义来确定第一通知包括预先识别的词语或多个词语,以使得优先次序模块120将第一通知排序在第二通知之前。例如,第一通知可以包括诸如“紧急”、“重要”、“必需”等之类的词语。可以识别额外的和/或可替代的词语以将通知的顺序在通知模块118中提前。
图2A-2C示出了被划分成区域的示例用户界面。图2A是示出了经由设备(设备108)的显示器124呈现的用户界面的区域202的示例的示意图。图2A可以表示登录用户界面,区域202可以与诸如区域0之类的标签相关联。登录用户界面可以被分成任何数量的区域。所述区域可以具有相同或不同的形状,占据相同或不同的面积,对应于用户界面上的一个或多个控件等。在一些实例中,一个或多个区域可以重叠。区域202的配置是关于区域可以如何被配置的一个示例,并且可以使用可替代和/或额外的配置。图2B是示出了经由设备(设备108)的显示器124呈现的用户界面的多个区域206-216的示例的示意图204。图2B可以表示阅读窗格或活动用户界面,而区域206-216可以分别与诸如区域1-区域N之类的标签相关联。阅读窗格可以被分成任何数量的区域。所述区域可以具有相同或不同的形状,占据相同或不同的面积,对应于用户界面上的一个或多个控件等。在一些示例中,一个或多个区域可以重叠。区域206-216的配置是关于区域可以如何被配置的一个示例,并且可以使用可替代和/或额外的配置。图2C是示出了经由设备(例如,设备108A)的显示器124呈现的用户界面的区域220的示例的示意图。图2C可以表示登出用户界面,而区域220可以与诸如区域N之类的标签相关联,其中,N是大于2的整数。登出用户界面可以被分成任何数量的区域。所述区域可以具有相同或不同的形状,占据相同或不同的面积,对应于用户界面上的一个或多个控件等。在一些示例中,一个或多个区域可以重叠。区域218的配置是关于区域可以如何被配置的一个示例,并且可以使用可替代和/或额外的配置。
以下的表2是如在与通知中的每个通知相关联的元数据中所指示的多个通知以及对应的区域的非限制性示例。
表2
通知类型 优先级水平
通知(用户语音) R4
通知(杂物) R2
通知(新的特征) R5
通知(垃圾消息) R1
呈现模块122可以将通知发送至一个或多个设备108。在至少一个示例中,呈现模块122可以与应用编程接口(API)相关联,并且所述API可以将通知发送至与设备108相关联的一个或多个应用(例如,应用128)的各种区域。呈现模块122可以利用呈现策略来确定与向一个或多个设备108发送通知相关联的时序。所述呈现策略可以包括指定能够在时间段内被发送至一个或多个设备108的通知的数量。在一些示例中,所述时间段可以是一天、一小时、一分钟、一秒等。在其他示例中,所述时间段可以与会话、动作等相关联。会话可以是两个或多个设备(例如,设备108与服务器110)或者是设备(例如,设备108A、设备108B、设备108C等)与用户106之间的信息的半永久交换(例如,登录会话)。在至少一个示例中,呈现策略可以与存储在与简档模块116中的用户106相关联的简档中的数据相关联。
呈现模块122还可以确定发送通知是否引起与呈现策略的冲突。如果发送通知引起与呈现策略的冲突,则在一些示例中,呈现模块122可以抑制所述通知并且在时间延迟之后发送所述通知。所述时间延迟的长度可以至少部分地基于预先确定的标准。如在下文中所描述的,预先确定的标准可以是预先确定量的时间的流逝、事件的发生等。在可替代的示例中,如果发送通知引起与呈现策略的冲突,则呈现模块122可以覆写呈现策略冲突。例如,如果通知模块118包括各自与P0优先级水平相关联的三个通知,但是呈现策略限制在一段时间内能够被发送的通知的数量,则呈现模块122覆写呈现策略并且发送全部三个通知。在其他示例中,如果发送通知引起与呈现策略的冲突,则呈现模块122可以提示服务提供者102覆写呈现策略冲突。以下的表3是以至少部分地基于优先次序策略和/或呈现策略所确定的用于发送通知中的每个通知的顺序来布置的多个通知的示例。
表3
示例过程
在以下的图3-7中所描述的过程被示出为逻辑流程图中的框的集合,其标识可以以硬件、软件、或其组合来实现的操作的序列。在软件的上下文中,所述框表示存储在一个或多个计算机可读存储介质上的计算机可执行指令,当由一个或多个处理器执行时,所述计算机可执行指令执行所述操作。通常而言,计算机可执行指令包括执行特定的功能或者实现特定的抽象数据类型的例程、程序、对象、组件、数据结构等。所述操作被描述的顺序不旨在被理解为限制,并且任何数量的所描述的框可以以任何顺序和/或并行地组合以实现所述过程。
图3是流程图,其示出了用于确定用于将通知发送至一个或多个设备108的顺序以及根据呈现策略将通知发送至所述一个或多个设备108的示例过程300。
框302示出了接收和/或访问通知。如在上文中所描述的,通知模块118可以访问、接收、和/或创建与一个或多个应用(例如,应用128)、服务提供者(例如,服务提供者102)等相关联的通知。在至少一些示例中,与通知相关联的元数据(例如,通知的源、指示与通知相关联的内容的标识符、与通知相关联的时序、与通知的呈现相关联的位置等)可以与来自通知的源的通知进行通信。通知模块118可以以在下文中所描述的由优先次序模块120和/或呈现模块122所确定的顺序将通知以及相关联的元数据存储在队列中。在一些示例中,所述元数据和通知可以与用于将所述元数据映射至对应的通知的标签或其他机制相关联。
框304示出了至少部分地基于优先次序策略来确定用于将通知发送至至少一个设备(例如,设备108A、设备108B、和/或设备108C)的顺序。优先次序模块120可以如在上文中所描述的利用优先次序策略来确定用于将通知发送至一个或多个设备的顺序。优先次序策略可以至少部分地基于分配给通知的优先级水平以及与通知的呈现相关联的位置来确定用于发送通知的顺序。如在上文中所描述的,所述位置对应于呈现所述通知的用户界面的区域。
如在上文中所描述的,优先次序策略可以至少部分地基于元数据而将优先级水平分配给个体的通知,所述元数据指示个体通知的源(例如,服务提供者、应用等)、标识与个体通知相关联的内容的标识符、与个体通知相关联的时序等。优先次序策略可以在确定用于发送通知的顺序时首先考虑优先级水平。例如,在至少一个示例中,与优先级水平P0相关联的通知可以被存储在与通知模块108相关联的队列的顶部,并且可以是要发送至一个或多个设备108的第一个通知。与优先级水平P1-PN相关联的通知可以被存储在P0水平之后,以使得在一些示例中,与优先级水平P1相关联的通知可以在P0水平的通知被发送之后而被发送至一个或多个设备108,与优先级水平P2相关联的通知可以在P1水平的通知被发送之后而被发送至一个或多个设备108,以此类推。
除了利用优先级水平来确定用于发送通知的顺序,优先次序策略还可以考虑呈现个体通知的用户界面上的位置。所述位置可以对应于用户界面中与个体通知中的每个通知的呈现相关联的区域(例如,区域0-N)。优先次序模块120可以确定用户界面中与个体通知中的每个通知的呈现相关联的区域。为了避免在同一区域和/或在相邻的区域中接连地呈现多个通知,优先次序模块120可以至少部分地基于优先级水平以及用户界面中与个体通知中的每个通知的呈现相关联的区域来确定用于将通知发送至一个或多个设备108的顺序。在一些示例中,与同一优先级水平相关联的通知可以至少部分地基于用户界面中将呈现个体通知的区域而被散布在与通知模块118相关联的整个队列中。上文中的表3是所述散布的非限制性示例。也就是说,与同一优先级水平相关联的通知可以在同一时间段或不同的时间段中被发送至至少一个设备(例如,设备108A、设备108B、和/或设备108C),并且具有较低优先级水平的通知可以在至少部分地基于与通知的呈现相关联的区域而具有较高优先级的通知之前被发送至至少一个设备(例如,设备108A、设备108B、和/或设备108C)。
在至少一个示例中,优先次序模块120可以确定两个通知与同一优先级水平相关联。优先次序模块120可以确定这两个通知中的第一通知与用户界面中的第一通知相关联,以及这两个通知中的第二通知与用户界面中的第二区域相关联。所述第一区域和第二区域可以是同一区域或不同的区域。优先次序模块120可以确定第一区域与第二区域之间的空间关系,并且可以利用所述空间关系来确定用于将所述第一通知和第二通知发送至一个或多个设备108的顺序。空间关系可以对应于代表用户界面上的第一区域如何与用户界面上的第二区域相关的值。优先次序模块可以基于确定以下距离来确定所述空间关系:第一区域中的一个或多个参考点与第二区域中的一个或多个对应的参考点之间的距离、所述第一区域的边与所述第二区域的边之间的距离等。
在一些示例中,优先次序模块120可以确定第一区域位于第二区域的阈值距离内。第一区域和第二区域可以是同一区域或相邻的区域。作为非限制性示例,第一区域和第二区域可以都是区域0或区域1,或者第一区域可以是区域0而第二区域可以是区域1。优先次序模块120可以确定第一通知和第二通知应该在不同的时间被发送至一个或多个设备108。在一些示例中,不同的时间可以在同一时间段期间或者在不同的时间段期间。由此,与优先级水平P2相关联的两个通知可以在不同的时间和/或在不同的时间段中被发送至至少一个设备(例如,设备108A、设备108B、和/或设备108C),即使这两个通知与同一优先级水平相关联。
在其他示例中,优先次序模块120可以确定第一区域在第二区域的阈值距离之外。作为非限制性示例,第一区域可以是区域0而第二区域可以是区域4。优先次序模块120可以确定第一通知和第二通知可以在同一时间和/或在同一时间段内被发送至一个或多个设备108。由此,与优先级水平P2相关联的两个通知可以在同一时间和/或同一时间段内被发送至至少一个设备(例如,设备108A、设备108B、和/或设备108C),这是因为所述通知没有在相同或相邻的区域中被呈现。
框306示出了确定发送通知是否与呈现策略的规则冲突。呈现模块122可以利用呈现策略来确定与将通知发送至一个或多个设备108相关联的时序。如在上文中所描述的,呈现策略可以包括指定能够在同一时间和/或预先确定的时间段内被发送至一个或多个设备108的通知的数量。在一些示例中,所述时间段可以是一天、一小时、一分钟、一秒等。在其他示例中,所述时间段可以与会话、动作等相关联。
呈现模块122可以从队列中排名最高的通知开始访问通知模块118中的个体通知。呈现模块122可以确定发送排名最高的通知是否违反呈现策略的任何规则。在一些示例中,如果呈现模块122还没有发送针对一段时间所分配的数量的通知,则发送排名最高的通知可以不违反任何规则(例如,没有冲突)。由此,呈现模块可以将排名最高的通知发送至至少一个设备(例如,设备108A、设备108B、和/或设备108C)。框308示出了在第一时间将通知发送至至少一个设备(例如,设备108A、设备108B、和/或设备108C)。所述第一时间可以与第一时间段(例如,一天、一小时、一分钟、一秒、会话、动作等)相关联。
在其他示例中,如果呈现模块122已经发送了针对一段时间所分配的数量的通知,则发送排名最高的通知可能违反规则(例如,引起冲突)。由此,呈现模块122可以抑制发送排名最高的通知。呈现模块122可以利用呈现策略来确定是否和/或何时发送排名最高的通知。在至少一个示例中,呈现策略可以包括用于确定要延迟发送排名最高的通知的时间量的一个或多个预先确定的标准。如在上文中所描述的,所述一个或多个预先确定的标准可以包括预先确定量的时间的消逝、事件的发生等。预先确定量的时间可以与时间间隔(例如,预先确定数量的秒、分等)、会话、动作等相关联。事件的发生可以对应于用户106与设备(例如,设备108A、设备108B、或设备108C)之间的某一交互。作为非限制性示例,事件可以包括会话的启动、应用128的激活、维修的完成、用户任务的改变等。
在一些示例中,事件的发生可以至少部分地基于检测用户106与经由设备(例如,设备108A、设备108B、或设备108C)的显示器124呈现的用户界面之间的交互。作为非限制性示例,用户106可以与如在图2B中所示出的设备(例如,设备108A、设备108B、或设备108C)上的电子邮件应用进行交互。用户106可以滚动通过文件夹并且通过与用户界面的某一交互(例如,经由鼠标、笔、触摸输入、传感器输入等对控件的致动)来选择文件夹中的一个文件夹(例如,收件箱)。至少部分地基于选择收件箱文件夹,用户106可以查看用户的收件箱中的电子邮件。当用户106完成查看用户的收件箱中他或她的电子邮件时,用户106可以与用户界面中不同的文件夹和/或区域进行交互(例如,经由鼠标、笔、触摸输入、传感器输入等对控件的致动)。一个或多个服务器110可以检测与不同文件夹和/或区域的交互,并且由此可以触发发送通知以用于在用户106的电子邮件当前或先前被呈现的阅读窗格(例如,区域216)中呈现所述通知。
框310示出了在第二时间将通知发送至至少一个设备(例如,设备108A、设备108B、或设备108C)。所述至少一个设备(例如,设备108A、设备108B、或设备108C)可以是相同的至少一个设备(例如,设备108A、设备108B、或设备108C)或者是与第一通知被发送不同的至少一个设备(例如,设备108A、设备108B、或设备108C)。如在上文中所描述的,如果呈现模块122已经发送了针对一段时间所分配的数量的通知,则发送排名最高的通知可能违反规则(例如,冲突)。由此,呈现模块122可以抑制发送排名最高的通知并且可以利用呈现策略来确定是否和/或何时发送排名最高的通知。呈现模块122可以至少部分地基于在上文中所描述的一个或多个预先确定的标准来确定在第二时间发送排名最高的通知。也就是说,呈现模块122可以在预先确定量的时间消逝或者在事件的发生之后发送排名最高的通知。
在一些示例中,排名最高的通知可以与指示排名最高的通知在其后过期的过期元数据相关联。如果排名最高的通知在预先确定量的时间消逝或者在事件的发生之后过期,则呈现模块122可以制止将通知发送至至少一个设备(例如,设备108A、设备108B、或设备108C)。
图4是流程图,其示出了用于确定用于将通知发送至一个或多个设备108的顺序以及根据所确定的顺序将通知发送至所述一个或多个设备108的示例过程400。
框402示出对通知进行接收。如在上文中所描述的,通知模块118可以访问、接收、和/或常见与一个或多个应用(例如,应用128)、服务提供者(例如,服务提供者102)、网站等相关联的通知。
框404示出至少部分地基于优先次序策略来确定与通知中的个体通知相关联的优先级水平。在至少一个示例中,优先次序模块120可以确定与个体通知相关联的标识符,并且可以至少部分地基于与所述个体通知相关联的标识符来向个体通知分配优先级水平,如在上文中所描述的。
框406示出确定第一通知和第二通知具有同一优先级水平。如在上文中所描述的,在至少一个示例中,优先策略模块120可以确定第一通知和第二通知与同一优先级水平相关联。
框408示出确定用户界面中与第一通知和第二通知的呈现相关联的区域。优先次序模块120可以确定第一通知与用户界面中的第一区域相关联,并且第二通知与用户界面中的第二区域相关联。第一区域和第二区域可以是同一区域或不同的区域。优先次序模块120可以确定第一区域与第二区域之间的空间关系。
框410示出至少部分地基于优先级水平以及与第一通知和第二通知相关联的区域来确定用于将第一通知和第二通知发送至至少一个设备(例如,设备108A、设备108B、或设备108C)的顺序。如在上文中所描述的,优先次序模块120可以首先考虑与第一通知和第二通知相关联的优先级水平。接着,优先次序模块120可以利用第一区域与第二区域之间的空间关系来确定用于将第一通知和第二通知发送至至少一个设备(例如,设备108A、设备108B、或设备108C)的顺序,如在上文中所描述的。
框412示出了根据所确定的顺序将第一通知或第二通知中的至少一个发送至至少一个设备(例如,设备108A、设备108B、或设备108C)。呈现模块122可以从队列中排名最高的一个或多个通知(例如,第一通知和/或第二通知)开始访问与通知模块118相关联的队列中的个体通知。呈现模块122可以确定发送排名最高的一个或多个通知是否违反呈现策略中的任何规则。在一些示例中,如果呈现模块122还没有发送针对一段时间所分配的数量的通知,则发送排名最高的一个或多个通知可以不违反任何规则并且呈现模块122可以将排名最高的一个或多个通知发送至至少一个设备(例如,设备108A、设备108B、或设备108C)。在其他示例中,如果呈现模块122已经发送了针对一段时间所分配的数量的通知,则发送排名最高的一个或多个通知可能违反呈现策略的规则。由此,呈现模块122可以抑制发送排名最高的一个或多个通知。呈现模块122可以利用呈现策略来确定是否和/或何时发送排名最高的通知。在至少一个示例中,呈现策略可以包括用于确定要延迟发送排名最高的通知的时间量的一个或多个预先确定的标准。至少部分地基于满足呈现策略的规则和/或一个或多个预先确定的标准,呈现模块122可以根据由优先次序模块120所确定的顺序将通知发送至至少一个设备(例如,设备108A、设备108B、或设备108C)。
图5是示出了用于至少部分地基于用户反馈来确定用户对通知的批准的示例过程500。
框502示出了使得通知经由至少一个设备(例如,设备108A、设备108B、或设备108C)的用户界面来呈现。如在上文中所描述的,呈现模块122将通知发送至至少一个设备(例如,设备108A、设备108B、或设备108C)。所述通知可以在至少一个设备(例如,设备108A、设备108B、或设备108C)的显示器124上被呈现。如在上文中所描述的,通知可以包括包含要传送至一个或多个用户106的文本的数据分组,以及供一个或多个用户106与通知进行交互的功能。作为非限制性示例,所述功能可以包括控件,所述控件要在用户界面上被呈现以提供供用户106评价或忽略所述通知的功能。
框504示出了对与通知相关联的反馈进行接收。如在上文中所描述的,通知可以包括包含要传送至一个或多个用户106的文本的数据分组,以及供一个或多个用户106与通知进行交互的功能。作为非限制性示例,所述功能可以包括控件,所述控件要在用户界面上被呈现以提供供用户106评价或忽略所述通知的功能。用户106可以与至少一个设备(例如,设备108A、设备108B、或设备108C)进行交互。例如,用户106可以与滑块、多选问题、Likert问题、下拉菜单、或者用于指示他或她喜欢还是不喜欢所述通知的其他机制进行交互。
框506示出了对与通知相关联的批准分数进行确定。至少部分地基于接收到反馈,通知模块118可以访问与多个用户相关联的反馈以从所述反馈确定批准分数。在至少一个示例中,所述批准分数可以是考虑到所接收的所有评分的良好评分的平均,从所接收的所有评分确定的中等评分等。
框508示出了对所述批准分数是否满足或超过阈值进行确定。在至少一个示例中,个体通知可以与阈值相关联,阈值可以表示阈值批准分数、百分比等。通知模块118可以将与通知相关联的批准分数同阈值进行比较。如果批准分数满足或超过阈值,则通知模块118可以继续将通知发送至其他设备108(例如,与其他简档相关联的)。框510示出了将通知保留在与通知模块120相关联的队列中。如果批准分数不满足或不超过阈值,则通知模块118可以禁用通知。框512示出了对通知进行禁用。在至少一个示例中,至少部分地基于通知模块118确定与通知相关联的批准分数不满足或不超过阈值,恢复动作工作流可以开始禁用通知以供未来呈现。
图6是流程图,其示出了用于至少部分地基于用户交互来抑制将通知发送至与简档相关联的一个或多个设备108的示例过程600,所述用户交互是经由与简档相关联的至少一个设备(例如,设备108A、设备108B、或设备108C)而与通知进行的。
框602示出了将通知发送至与简档相关联的多个设备108。如在上文中所描述的,呈现模块122可以将通知发送至与简档相关联的一个或多个设备108。在图1的上下文中,所述多个设备可以包括设备108A、108B、和108C。
框604示出了确定与简档相关联的用户106是否与设备中的至少一个设备(例如,设备108A、设备108B、或设备108C)上的通知进行交互。呈现模块122可以确定与简档相关联的用户106是否例如通过评价通知、忽略通知等来与设备中的至少一个设备(例如,设备108A、设备108B、或设备108C)上的通知进行交互。在图1的上下文中,用户106可以经由设备108A、108B、和/或108C中的任何一个或多个来与通知进行交互。作为非限制性示例,呈现模块122可以确定用户106与设备108A进行交互。
框606示出了对多个设备108中的其他设备上的通知进行抑制。至少部分地基于确定用户106经由设备中的至少一个设备(例如,设备108A、设备108B、或设备108C)来与通知进行交互,呈现模块122可以抑制多个设备108中的其他设备上的通知以防止用户106接收与用户106的简档相关联的所有设备108上的同一通知。在上文中所描述的非限制性示例中,在图1的上下文中,呈现模块122可以抑制设备108B和108C上的通知。
在没有与多个设备108中的设备中的至少一个设备(例如,设备108A、设备108B、或设备108C)的用户交互的情况下,呈现模块可以继续将通知发送至多个设备中的所有设备,直到用户106与通知进行交互或者通知过期为止。框608示出了将通知发送至多个设备108中的其他设备,直到用户106与通知进行交互或者通知过期为止。
图7示出了计算机的示例计算机架构700的额外细节,所述计算机例如能够执行在上文中所描述的程序组件以用于至少部分地基于通知对用户的重要性来控制通知,例如设备108A、设备108B、设备108C、和/或服务器110(图1)。因此,如在图7中所示出的计算机架构700示出了针对服务器计算机、移动电话、PDA、智能电话、台式计算机、上网本计算机、平板计算机、和/或膝上型计算机的架构。计算机架构700可以用于执行在本文中所呈现的软件组件的任何方面。
在图7中所示出的计算机架构700包括中央处理单元702(“CPU”)、包括随机存取存储器706(“RAM”)和只读存储器(“ROM”)708的系统存储器704、以及将存储器704耦合至CPU702的系统总线710。包含帮助在计算机架构700内的元件间转移信息(例如,在启动期间)的基本例程的基本输入/输出被存储在ROM 706中。计算机架构700还包括用于存储操作系统707以及一个或多个应用程序等的大容量存储设备712。
大容量存储设备712通过连接至总线710的大容量存储控制器(未示出)而连接至CPU 702。大容量存储设备712及其相关联的计算机可读介质为计算机架构700提供非易失性存储。尽管对在本文中所包含的计算机可读介质的描述指的是大容量存储设备,例如,固态驱动器、硬盘、或CD-ROM驱动,但是本领域技术人员应当认识到的是,计算机可读介质可以是能够由计算机架构700访问的任何可用的计算机存储介质或者通信介质。
通信介质包括计算机可读指令、数据结构、程序模块、或者诸如载波或其他传输机制之类的经调制的数据信号中的其他数据,并且包括任何传递介质。术语“经调制的数据信号”表示具有以关于对信号中的信息进行编码的方式改变或设置的信号的特性中的一个或多个特性的信号。作为示例而非限制,通信介质包括诸如有线网络或直接有线连接之类的有线介质,以及诸如声音、RF、红外线和其他无线介质之类的无线介质。还应当将以上中的任意一个的组合包括在计算机可读介质的范围内。
作为示例而非限制,计算机存储介质可以包括以用于存储信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动的介质,所述信息例如是计算机可读指令、数据结构、程序模块、或其他数据。例如,计算机介质包括但不限于,RAM、ROM、EPROM、EEPROM、闪速存储器或其他固态存储器技术、CD-ROM、数字多功能盘(“DVD”)、HD-DVD、BLU-RAY、或者其他光存储设备、盒式磁带、磁带、磁盘存储装置或其他磁存储设备、或者可以用于存储期望的信息并且可以由计算机架构700访问的任何其他介质。出于权利要求的目的,短语“计算机存储介质”、“计算机可读存储介质”及其变型不包括波、信号、和/或其他瞬时和/或无形的通信介质本身。
根据各种配置,计算机架构700可以使用通过网络104和/或另一网络(未示出)至远程计算机的逻辑连接来在联网环境中操作。计算机架构700可以通过连接至总线710的网络接口单元714而连接至网络104。应当认识到的是,网络接口单元714还可以用于连接至其他类型的网络和远程计算机系统。计算机架构700还可以包括用于接收和处理来自许多其他设备的输入的输入/输出控制器716,其包括键盘、鼠标、电子触笔(未在图7中示出)。相似地,输入/输出控制器716可以向显示屏、打印机、或者其他类型的输出设备(也未在图7中示出)提供输出。
应当认识到的是,在本文中所描述的软件组件可以在被加载到CPU 702中并且被执行时,将CPU 702以及整体计算机架构700从通用计算系统转换成定制以促进在本文中所呈现的功能的专用计算系统。可以从任何数量的晶体管或者其他分立电路元件构建CPU702,所述晶体管或其他分立电路元件可以单独地或者共同地假定任何数量的状态。更加具体地,CPU 702可以响应于包含在在本文中所公开的软件模块内的可执行指令而充当有限状态机。这些计算机可执行指令可以通过指定CPU 702如何在状态之间进行转变来转换CPU702,由此转换构成CPU 702的晶体管或其他分立硬件元件。
对在本文中所呈现的软件模块进行编码还可以转换在本文中所呈现的计算机可读介质的物理结构。在该描述的不同实现中,物理结构的具体转换可以取决于各种因素。这样的因素的示例可以包括但不限于,用于实现计算机可读介质的技术,计算机可读介质的特征在于主要存储还是次要存储等。例如,如果计算机可读介质被实现为基于半导体的存储器,则还可以通过转换半导体存储器的物理状态来在计算机可读介质上对在本文中所公开的软件进行编码。例如,所述软件可以转换晶体管、电容器、或构成半导体存储器的其他分立电路元件的状态。所述软件还可以转换这样的组件的物理状态以便将数据存储在其上。
作为另一示例,在本文中所公开的计算机可读介质可以使用磁或光技术来实现。在这样的实现中,当软件在磁或光学介质中被编码时,在本文中所呈现的软件可以转换磁或光学介质的物理状态。这些转换可以包括改变给定磁性介质内的特定位置的磁特性。这些转换还可以包括改变给定光学介质内的特定位置的物理特征或者特性以改变那些位置的光学特性。在不脱离本描述的范围和精神的情况下,物理介质的其他转换是可能的,其中仅仅用于促进该讨论而提供了前述示例。
鉴于以上,应当认识到的是,许多类型的物理转换在计算机架构700中进行以便存储并且执行在本文中所呈现的软件组件。还应当认识到的是,计算机架构700可以包括其他类型的计算实体,其包括手持计算机、嵌入式计算机系统、个人数字助理、以及对于本领域技术人员而言已知的其他类型的计算设备。还可以预期的是,计算机架构700可以不包括在图7中所示出的组件中的所有组件,可以包括没有在图7中明确地示出的其他组件,或者可以利用与在图7中所示出的架构完全不同的架构。
图8描绘了说明性分布式计算环境800,其能够执行本文中描述的、用于至少部分地基于通知对用户的重要性来控制所述通知的软件组件。因此,图8中所示出的分布式计算环境800可以用于执行在本文中所呈现的软件组件的方面。例如,分布式计算环境800可以用于执行在本文中所描述的技术的方面。
根据各种实现,分布式计算环境800包括在网络104上操作、与网络104进行通信、或者作为网络104的部分的计算环境802。在至少一个示例中,计算环境802中的至少一些可以对应于一个或多个服务器110。网络104可以是或者可以包括在上文中参考图7所描述的网络104。网络104还可以包括各种接入网络。一个和多个客户端设备806A-806N(此后共同和/或一般地被称为“客户端806”)可以经由网络104和/或其他连接(未在图8中示出)来与分布式计算环境802进行通信。客户端设备806A-806N可以对应于图1中的设备108中的任何一个。在示出的配置中,客户端806包括:计算设备806A,例如,膝上型计算机、台式计算机、或其他计算设备;“板式”或平板计算设备(“平板计算设备”)806B;移动计算设备806C,例如,移动电话、智能电话、或其他移动计算设备;服务器计算机806D;和/或其他设备806N。应当理解的是,任何数量的客户端806可以与计算环境802进行通信。参考图7和图8在本文中示出并描述了针对客户端806的两个示例计算架构。应当理解的是,所示出的客户端806和在本文中所示出和描述的计算架构是说明性的,并且不应当被解释为以任何方式受到限制。
在所示出的配置中,计算环境802包括应用服务器808、数据存储810、以及一个或多个网络接口812。根据各种实现,应用服务器808的功能可以由一个或多个服务器计算机来提供,所述一个或多个服务器计算机作为网络104的部分来执行或者与网络104进行通信。计算环境802可以对应于图1中的一个或多个服务器110。应用服务器808可以托管各种服务、虚拟机、端口、和/或其他资源。在示出的配置中,应用服务器808可以托管用于执行应用或其他功能的一个或多个虚拟机。根据各种实现,虚拟机可以执行一个或多个应用和/或软件模块,以用于至少部分地基于通知对用户的重要性来控制所述通知。应当理解的是,该配置是说明性的,并且不应当被解释为以任何方式进行限制。应用服务器808还可以托管或者提供对一个或多个端口、链接页、网站和/或其他信息(“网络端口”)816的访问。网络端口816可以用于与一个或多个客户端计算机进行通信。
根据各种实现,应用服务器808还包括一个或多个邮箱服务818以及一个或多个消息传送服务820。邮箱服务818可以包括电子邮件(“email”)服务。邮箱服务818还可以包括各种个人信息管理(“PIM”)服务,所述个人信息管理服务包括但不限于,日历服务、联系人管理服务、协同服务、和/或其他服务。消息传送服务820可以包括但不限于,即时消息传送服务、聊天服务、论坛服务、和/或其他通信服务。
应用服务器808还可以包括一个或多个社交网络服务822。社交网络服务822可以包括各种社交网络服务,包括但不限于,用于共享或发布状态更新、即时消息、链接、照片、视频、和/或其他信息的服务;用于评论或显示文章、产品、博客或其他资源的兴趣的服务;和/或其他服务。在一些配置中,社交网络服务822由以下网络服务来提供或者包括以下网络服务:FACEBOOK社交网络服务、LINKEDIN职业网络服务、MYSPACE社交网络服务、FOURSQUARE地理网络服务、YAMMER办公室同事网络服务等。在其他配置中,社交网络服务822由可以或可以不被明确地称为社交网络提供商的其他服务、网站、和/或提供商来提供。例如,一些网站允许用户在诸如阅读发行的文章、评论物品或服务、发行、合作、玩游戏之类的各种活动和/或上下文期间经由电子邮件、聊天服务、和/或其他方式彼此进行交互。这样的服务的示例包括但不限于来自Washington州Redmond市的微软公司的WINDOWS LIVE服务和XBOX LIVE服务。其他服务是可能的并且是预期的。
社交网络服务822还可以包括评论、博客、和/或微博客服务。这样的服务的示例包括但不限于,YELP评论服务、KUDZU评述服务、OFFICETALK企业微博客服务、TWITTER消息传送服务、GOOGLE BUZZ服务、和/或其他服务。应当认识到的是,以上服务的列表不是穷尽性的并且为了简单起见,在本文中没有提及许多额外的和/或可替代的社交网络服务822。由此,在上文中所描述的配置是说明性的,并且不应当被理解为以任何方式受到限制。根据各种实现,社交网络服务822可以托管用于提供在本文中所描述的用于为计算设备提供上下文感知的位置共享服务的功能的一个或多个应用和/或软件模块。例如,应用服务808中的任何一个可以传送或促进在本文中所描述的功能和特征。例如,社交网络应用、邮件客户端、消息传送客户端、在电话或任何其他客户端806上运行的浏览器可以与联网服务822进行通信。
还如在图8中所示出的,应用服务器808还可以托管其他服务、应用、端口、和/或其他资源(“其他资源”)824。其他资源824可以采用面向服务的架构或者任何其他客户端-服务器管理软件。因此应当理解的是,计算环境802可以提供对在本文中所公开的概念和技术与各种邮箱、消息传送、社交网络、生产和/或其他类型的多租户云服务或资源的集成。在至少一个示例中,邮箱、消息传送、社交网络、和/或其他服务或资源可以向通知模块118发送通知。
如在上文中提及的,计算环境104可以包括数据存储810。根据各种实现,数据存储810的功能是由在网络104上操作的或者与网络104进行通信的一个或多个数据库提供的。数据存储810的功能还可以由一个或多个服务器计算机来提供,所述服务器计算机被配置为托管针对计算环境802的数据。数据存储810可以包括、托管、或者提供一个或多个实际或虚拟的容器826A-826N(在下文中共同和/或一般地被称为“容器826”)。尽管没有在图8中示出,容器826还可以托管或存储由模块(例如,程序模块112A等)执行的数据结构和/或算法。容器826的方面可以与数据库程序、文件系统、和/或存储具有安全访问特征的任何程序相关联。容器826的方面可以使用诸如ACTIVE DIRECTORY、DKM、DROPBOX、或GOOGLEDRIVE之类的产品或服务来实现。
计算环境802可以与网络接口812进行通信或者由网络接口812来访问。网络接口812可以包括用于支持两个或多个计算实体之间的通信的各种类型的网络硬件和软件,所述计算设备包括但不限于客户端806和应用服务器808。应当认识到的是,网络接口812还可以用于连接至其他类型的网络和/或计算机系统。
应当理解的是,在本文中所描述的分布式计算环境800可以提供在本文中所描述的具有任何数量的虚拟计算资源和/或其他分布式计算功能的软件元件的任何方面,所述虚拟计算资源和/或其他分布式计算功能可以被配置为执行在本文中所公开的软件组件的任何方面。根据在本文中所公开的概念和技术的各种实现,分布式计算环境800提供在本文中所描述的软件功能作为对客户端806的服务。应当理解的是,客户端806可以包括真实或虚拟的机器,所述真实或虚拟的机器包括但不限于,服务器计算机、网络服务器、个人计算机、移动计算实体、智能电话、和/或其他设备。由此,在本文中所公开的概念和技术的各种配置使得被配置为访问分布式计算环境800的任何设备能够利用在本文中所描述的用于至少部分地基于通知对用户的重要性来控制所述通知的功能等。在一个具体的示例中,如在上文中所总结的,在本文中所描述的技术可以至少部分地由结合图8的应用服务器808工作的网络浏览器应用来实现。
现在转到图9,将描述计算实体的说明性计算设备架构900,所述计算设备能够执行在本文中所描述的用于至少部分地基于通知对用户的重要性来控制所述通知的各种软件组件。计算设备架构900适用于部分由于形状因子、无线连通性、和/或电池供电操作而促进实现移动计算的计算实体。在一些配置中,计算设备包括但不限于移动电话、平板设备、板式设备、便携视频游戏设备等。计算设备架构900适用于在图8中所示出的客户端806中的任何一个(例如,设备108A、设备108B、设备108C等)。此外,计算设备架构900的方面适用于传统台式计算机、便携计算机(例如,膝上型计算机、笔记本、超便携本、以及上网本)、服务器计算机、和其他计算机系统,例如在本文中参考图8所描述的那些计算系统(例如,服务器110)。例如,在下文中所公开的单点触控和多点触控方面可以应用于台式计算机,所述台式计算机利用触摸屏或某一其他支持触摸的设备,例如具有触摸功能的跟踪板或支持触摸的鼠标。
在图9中所示出的计算设备架构900包括处理器902、存储器组件904、网络连通性组件906、传感器组件908、输入/输出组件910、以及电源组件912。在所示出的配置中,处理器902与存储器组件904、网络连通性组件906、传感器组件908、输入/输出(“I/O”)组件910、以及电源组件912进行通信。尽管没有示出在图9中所示出的个体组件之间的连接,但是所述组件可以交互以实行设备功能。在一些配置中,组件被设置以便经由一个或多个总线(未示出)来进行通信。
处理器902包括中央处理单元(“CPU”),其被配置为处理数据、执行一个或多个应用程序的计算机可执行指令、以及与计算设备架构900的其他组件进行通信以便执行在本文中所描述的各种功能。处理器902可以用于执行在本文中所呈现的软件组件的方面,并且特别地,执行至少部分地利用支持触摸的输入的软件组件的方面。
在一些配置中,处理器902包括图形处理单元(“GPU”),其被配置为加速由CPU所执行的操作,包括但不限于通过执行通用科学和/或工程计算应用以及诸如高分辨率视频(例如,920P、1080P、4K、以及更高的分辨率)、视频游戏、三维(3D)建模应用等之类的图形密集型计算应用而执行的操作。在一些配置中,处理器902被配置为与分立GPU(未示出)进行通信。在任何情况下,CPU和GPU可以根据协同处理CPU/GPU计算模型来配置,其中应用的串行部分在CPU上执行,并且计算密集型部分是由GPU加速的。
在一些配置中,处理器902是与在下文中所描述的其他组件中的一个或多个其他组件一同的片上系统(“SoC”)或者包括在所述片上系统中。例如,SoC可以包括处理器902、GPU、网络连通性组件906中的一个或多个、以及传感器组件908中的一个或多个。在一些配置中,部分地利用堆叠式封装(“PoP”)集成电路封装技术来制造处理器902。处理器902可以是单核处理器或多核处理器。
可以根据ARM架构来创建处理器902,所述ARM架构可用于从英联邦的剑桥市的ARM控股公司获得许可证。可替代地,可以根据x86架构来创建处理器902,例如从加利福尼亚州的Mountain View市的Intel公司或其他公司可获得。在一些配置中,处理器902是从加利福尼亚州San Diego市的高通公司可获得的SNAPDRAGON SoC、从加利福尼亚州Santa Clara市的NVIDIA公司可获得的TEGRA SoC、从韩国首尔市的SAMSUNG公司可获得的HUMMINGBIRDSoC、从Texas州的Dallas市的德州仪器公司可获得的开放多媒体应用平台(“OMAP”)SoC、上述SoC中任何一个的定制版本、或者专有SoC。
存储器组件904包括随机存取存储器(“RAM”)914、只读存储器(“ROM”)916、集成存储存储器(“集成存储”)918、以及可移动存储存储器(“可移动存储”)920。在一些配置中,RAM 914或其部分、ROM 916或其部分、和/或RAM 914与ROM 916的某一组合被集成在处理器902中。在一些配置中,ROM 916被配置为存储固件、操作系统或其部分(例如,操作系统内核)、和/或用于从集成存储918和/或可移动存储920加载操作系统内核的引导加载程序。
集成存储918可以包括固态存储器、硬盘、或固态存储器和硬盘的组合。集成存储918可以被焊接或以其他方式连接至逻辑板,处理器902和在本文中所描述的其他组件也可以在该逻辑板上连接。由此,集成存储918被集成在计算设备中。集成存储918被配置为存储操作系统或其部分、应用程序、数据、和在本文中描述的其他软件组件。
可移动存储920可以包括固态存储器、硬盘、或固态存储器和硬盘的组合。在一些配置中,代替集成存储918而提供可移动存储920。在其他配置中,可移动存储920被提供为额外的可选存储器。在一些配置中,可移动存储920在逻辑上与集成存储918组合,以使得全部的可用存储器可使用为集成存储918和可移动存储920的总组合存储容量。在一些配置中,将集成存储918和可移动存储920的组合容量而不是将集成存储918和可移动存储920的分别的存储容量示出给用户。
可移动存储920被配置为插入到可移动存储存储器插槽(未示出)或其他机制中,可移动存储920利用该机制被插入并且被固定以促进通过其可移动存储920可以与诸如处理器902之类的计算设备的其他组件通信的连接。可移动存储920可以以各种存储器卡格式实施,包括但不限于,PC卡、压缩闪存卡、记忆棒、安全数字(“SD”)、迷你SD、微SD、通用集成电路卡(“UICC”)(例如,订阅者身份模块(“SIM”)或者通用SIM(“USIM”))、专有格式等。
可以理解的是,存储器组件904中的一个或多个可以存储操作系统。根据各种配置,操作系统包括但不限于来自SYMBIAN LIMITED的SYMBIAN OS、来自Washington州Redmond市的微软公司的WINDOWS MOBILE OS、来自微软公司的WINDOWS PHONE OS、来自微软公司的WINDOWS OS、来自California州Palo Alto市的惠普公司的PALM WEBOS、来自加拿大安大略省Waterloo市的RESEARCH IN MOTION有限公司的BLACKBERRY OS、来自加利福尼亚州Cupertino市的苹果公司的IOS、来自加利福尼亚州Mountain View市的GOOGLE有限公司的ANDROID OS。可以预期其他操作系统。
网络连通性组件906包括无线广域网组件(“WWAN组件”)922、无线局域网组件(“WLAN组件”)924、以及无线个域网组件(“WPAN组件”)926。网络连通性组件906促进往来于网络104或另一网络的通信,所述网络可以是WWAN、WLAN、或WPAN。尽管示出了网络104,但是网络连通性组件906可以促进与包括图9中的网络104的多个网络的同时通信。例如,网络连通性组件906可以促进经由WWAN、WLAN或WPAN中的一个或多个与多个网络的同时通信。
网络104可以是或可以包括WWAN,例如经由WWAN组件922利用一个或多个移动电信技术来向利用计算设备架构900的计算设备提供声音和/或数据服务的移动电信网络。移动电信网络技术可以包括但不限于移动通信全球系统(“GSM”)、码分多址(“CDMA”)ONE、CDMA2000、通用移动电信系统(“UMTS”)、长期演进(“LTE”)、以及全球微波接入互操作性(WiMAX)。此外,网络104可以利用各种信道来访问方法(其可以由或不能由前述标准使用),所述方法包括但不限于,时分多址(“TDMA”)、频分多址(“FDMA”)、CDMA、宽带CDMA(“W-CDMA”)、正交频分复用(“OFDM”)、空分多址(“SDMA”)等。数据通信可以使用以下方法来提供:通用分组无线电服务(“GPRS”),用于全球演进的增强型数据速率(“EDGE”),包括高速下行链路分组访问(“HSDPA”)、增强型上行链路(“EUL”)、或者另外被称为高速上行链路分组访问(“HSUPA”)、演进型HSPA(“HSPA+”)的高速分组访问(“HSPA”)协议家族,LTE,以及各种其他当前的和未来的无线数据访问标准。网络104可以被配置为利用上文技术的任何组合来提供声音和/或数据通信。网络104可以被配置为或者被适配成根据后代的技术来提供声音和/或数据通信。
在一些配置中,WWAN组件922被配置为向网络104提供双-多模连通性。例如,WWAN组件922可以被配置为向网络104提供连通性,其中网络104经由GSM和UMTS技术或者经由技术的一些其他组合来提供服务。可替代地,多个WWAN组件922可以用于执行这样的功能,和/或提供额外的功能以支持其他非兼容(即,不能由单个WWAN组件支持)的技术。WWAN组件922可以促进类似的到多个网络(例如,UMTS网络和LTE网络)的连通性。
网络104可以是根据电气和电子工程师协会(“IEEE”)802.11标准中的一个或多个标准来操作的WLAN,所述标准例如IEEE 802.11a、802.11b、802.11g、802.11n、和/或未来的802.11标准(在本文中统称为WI-FI)。可以预期802.11标准草案。在一些配置中,利用一个或多个无线WI-FI接入点来实现WLAN。在一些配置中,无线WI-FI接入点中的一个或多个是具有到充当WI-FI热点的WWAN的连通性的另一计算设备。WLAN组件924被配置为经由WI-FI接入点而连接至网络104。可以经由各种加密技术来使这样的连接安全,所述技术包括但不限于:WI-FI保护接入(“WPA”)、WPA2、有线等效保密(“WEP”)等。
网络104可以是根据红外线数据协会(“IrDA”)、蓝牙、无线通用串行总线(“USB”)、Z-波、ZIGBEE、或某一其他短距无线技术来操作的WPAN。在一些配置中,WPAN组件926被配置为促进经由WPAN与诸如外围设备、计算机、或其他计算实体之类的其他设备进行通信。
传感器组件908包括磁力计928、环境光传感器930、接近度传感器932、加速度计934、陀螺仪936、以及全球定位系统传感器(“GPS传感器”)938。可以预期的是,例如但不限于温度传感器或震动检测传感器的其他的传感器也可以被包含在计算设备架构900中。
磁力计928被配置为测量磁场的强度和方向。在一些配置中,磁力计928提供了针对在存储组件904中的一个中存储的指南针应用程序的测量,以便在参考框架中给用户提供准确的方向,包括基本方向、北、南、东和西。可以向包括指南针组件的导航应用程序提供类似的测量。可以构想通过磁力计928获得的测量的其他使用。
环境光传感器930被配置为测量环境光。在一些配置中,环境光传感器930提供对存储在存储组件904内的应用程序的测量,以便自动地调整显示器的亮度(在下文描述)来针对低亮度和高亮度环境进行补偿。可以构想由环境光传感器930所获得的测量的其他使用。
接近度传感器932被配置为检测邻近于计算设备而不直接接触的对象或东西的存在。在一些配置中,接近度传感器932检测用户的身体(例如,用户的脸)的存在,并且将该信息提供给存储在存储组件904中的一个内的应用程序,该应用程序利用该接近度信息来启用或禁用计算设备的一些功能。例如,电话应用程序可以响应于接收邻近信息而自动地禁用触摸屏(下文描述的),以使得用户的脸不会无意地造成结束通话或者在通话期间启用/禁用电话应用程序之内的其他功能。可以构想如由接近度传感器932所检测到的接近度的其他使用。
加速度计934被配置为测量准确的加速度。在一些配置中,来自加速度计934的输出由应用程序用作输入机制以控制应用程序的一些功能。例如,应用程序可以是其中角色或其部分或者对象响应于经由加速度计934所接收的输入而被移动或者以其他方式被操纵的视频游戏。在一些配置中,向应用程序提供来自加速度计934的输出以用于在风景和肖像模式之间切换、计算协调加速度、或检测降落时使用。可以构想对加速度计934的其他使用。
陀螺仪936被配置为测量并保存朝向。在一些配置中,来自陀螺仪936的输出由应用程序用作输入机制以控制应用程序的一些功能。例如,陀螺仪936可以用于对视频游戏应用或某一其他应用的3D环境内的运动进行准确识别。在一些配置中,应用程序利用来自陀螺仪936和加速度计934的输出来增强对应用程序的一些功能的控制。可以构想对陀螺仪936的其他使用。
GPS传感器938被配置为从GPS卫星接收信号以用于在计算位置时使用。由GPS传感器938所计算的位置可以由需要位置信息或者从位置信息受益的任何应用程序使用。例如,由GPS传感器938计算的位置可以与导航应用程序一起使用,以提供从该位置到目的地的方向或者从目的地到该位置的方向。此外,GPS传感器938可以用于向诸如E911服务之类的基于外部位置的服务提供位置信息。GPS传感器938可以利用网络连通性组件906中的一个或多个来获得经由WI-FI、WIMAX、和/或的蜂窝三角测量技术所生成的位置信息,从而在获得位置定位时协助GPS传感器938。GPS传感器938还可以在辅助GPS(“A-GPS”)系统中使用。
I/O组件910包括显示器940、触摸屏942、数据I/O接口组件(“数据I/O”)944、音频I/O接口组件(“音频I/O”)946、视频I/O接口组件(“视频I/O”)948、以及相机950。在一些配置中,将显示器940和触摸屏942进行组合。在一些配置中,将数据I/O组件944、音频I/O组件946、和视频I/O组件948中的两个或更多个进行组合。I/O组件910可以包括被配置为支持在下文中所描述的各种接口的分立处理器,或者可以包括内置在处理器902中的处理功能。
显示器940是被配置为以可视的形式呈现信息的输出设备。特别地,显示器940可以呈现图形用户界面(“GUI”)元素、文本、图像、视频、通知、虚拟按钮、虚拟键盘、消息传送数据、互联网内容、设备状态、时间、日期、日历数据、偏好、地图信息、位置信息、以及能够以可视的形式被呈现的任何其他信息。在一些配置中,显示器940是利用任何有源或无源矩阵技术和任何背光技术(如果使用的话)的液晶显示器(“LCD”)。在一些配置中,显示器940是有机发光二极管(“OLED”)显示器。可以构想其他显示器类型。
触摸屏942(也被称为“支持触摸的屏幕”)是被配置为检测触摸的存在和位置的输入设备。触摸屏942可以是电阻性触摸屏、电容性触摸屏、表面声波触摸屏、红外线触摸屏、光学成像触摸屏、分散信号触摸屏、声学脉冲识别触摸屏、或者可以利用任何其他触摸屏技术。在一些配置中,触摸屏942作为透明层而被包含在显示器940顶部,以使得用户能够使用一次或多次触摸来与在显示器940上呈现的对象或其他信息进行交互。在其他配置中,触摸屏942是包含在不包括显示器940的计算设备的表面上的触摸板。例如,计算设备可以具有被包含在显示器940的顶部的触摸屏以及在显示器940对面的表面上的触摸板。
在一些配置中,触摸屏942是单点触摸触摸屏。在其他配置中,触摸屏942是多点触摸触摸屏。在一些配置中,触摸屏942被配置为检测不连续的触摸、单点触摸手势、和/或多点触摸手势。为了方便起见,在本文中将这些被统称为“手势”。现在将描述几个手势。应当理解的是,这些手势是说明性的并且不旨在限制所附权利要求的范围。此外,所描述的手势、额外的手势、和/或可替代的手势可以以软件来实现以与触摸屏942一同使用。由此,开发者可以创建专用于特定应用程序的手势。
在一些配置中,触摸屏942支持轻击手势,其中,用户在呈现在显示器940上的项目上轻击触摸屏942一次。轻击手势可以用于各种原因,包括但不限于,打开或启动任何用户所点击的内容。在一些配置中,触摸屏942支持双击手势,其中用户在呈现在显示器940上的项目上点击触摸屏942两次。双击手势可以用于各种原因,包括但不限于,分阶段地缩小或放大。在一些配置中,触摸屏942支持点击并保持的手势,其中用户点击触摸屏942并保持接触达至少预先定义的时间。点击和保持手势可以用于各种原因,包括但不限于,打开特定于上下文的菜单。
在一些配置中,触摸屏942支持平移手势,其中用户将手指放在触摸屏942上并且在将手指在触摸屏942上移动的同时保持与触摸屏942的接触。平移手势可以用于各种原因,包括但不限于,以受控制的速率移动通过屏幕、图像、或菜单。还可以构想多个手指平移手势。在一些配置中,触摸屏942支持轻弹手势,其中用户在用户想要屏幕移动的方向上滑动手指。轻弹手势可以用于各种原因,包括但不限于,水平地或垂直地滚动通过菜单或页面。在一些配置中,触摸屏942支持捏合和伸展手势,其中用户使用两个手指(例如,拇指和食指)在触摸屏942上进行捏合运动或将两个手指移动分开。捏合和伸展手势可以用于各种原因,包括但不限于逐渐缩小或放大网站、地图、或图片。
尽管已经参考用于执行手势的一个或多个手指的使用而呈现了在上文中所描述的手势,但是诸如脚趾之类的其他附属物或者诸如触摸笔之类的对象可以用于与触摸屏942交互。由此,上文的手势应该被理解为是说明性的而不应该被解释为以任何方式进行限制。
数据I/O接口组件944被配置为促进向计算设备输入数据以及从计算设备输出数据。在一些配置中,数据I/O接口组件944包括被配置为例如出于同步操作的目的而在计算设备与计算机系统之间提供有线连通性的连接器。连接器可以是专有连接器或者标准化连接器,例如USB、微USB、迷你USB等。在一些配置中,连接器是用于将计算设备与诸如扩展坞、音频设备(例如,数字音乐播放机)、或视频设备之类的另一设备计算设备对接的底座连接器。
视频I/O接口组件946被配置为向计算设备提供音频输入和/或输出功能。在一些配置中,音频I/O接口组件946包括被配置为收集音频信号的麦克风。在一些配置中,音频I/O接口组件946包括被配置为提供针对耳机或其他外部扬声器的连通性的耳机插孔。在一些配置中,音频I/O接口组件946包括针对音频信号输出的扬声器。在一些配置中,音频I/O接口组件946包括光学音频电缆固定。
视频I/O接口组件948被配置为向计算设备提供视频输入和/或输出功能。在一些配置中,视频I/O接口组件948包括视频连接器,其被配置为将来自另一设备(例如,诸如DVD或蓝光播放机之类的视频媒体播放机)的视频作为输入来接收或者向另一设备(例如,监视器、电视、或某一其他外部显示器)发送视频作为输出。在一些配置中,视频I/O接口组件948包括用于输入/输出视频内容的高分辨率多媒体接口(“HDMI”)、迷你HDMI、微HDMI、显示端口、或者专有连接器。在一些配置中,视频I/O接口组件946或其部分与音频I/O接口组件948或其部分相结合。
相机950可以被配置为捕获静态图像和/或视频。相机950可以利用电荷耦合器件(“CCD”)或互补金属氧化物半导体(“CMOS”)图像传感器来捕获图像。在一些配置中,相机950包括用于在低亮度环境中协助拍照的闪光灯。针对相机950的设置可以被实现为硬件或软件按钮。
尽管未示出,但一个或多个硬件按钮也可以被包括在计算设备架构900中。硬件按钮可以用于控制计算设备的一些操作性方面。硬件按钮可以是专用按钮或多用途按钮。硬件按钮可以是机械的或基于传感器的。
所示出的电源组件912包括一个或多个电池952,其可以连接至电池电量计954。电池952可以是可充电的或可丢弃的。可充电电池类型包括但不限于锂聚合物、锂离子、镍镉、镍氢。电池952中的每个可以由一个或多个单元组成。
电池电量计954可以被配置为测量诸如电流、电压、和温度之类的电池参数。在一些配置中,电池电量计954被配置为测量电池的放电速率效应、温度、使用年限、和其他因素,以在某一误差百分比之内预测剩余寿命。在一些配置中,电池电量计954提供了对被配置为使用上述测量来向用户呈现有用的电源管理的应用程序的测量。电源管理数据可以包括以下中的一个或多个:使用的电池百分比、剩余的电池百分比、电池状况、剩余时间、剩余容量(例如,以瓦时为单位)、电流消耗、以及电压。
电源组件912还可以包括电源连接器,其可以与前述I/O组件910中的一个或多个相结合。电源组件912可以经由电源I/O组件与外部电源系统或充电设备接合。
在本文中所呈现的公开可以根据以下条款来考虑。
A.一种系统,包括:一个或多个处理器;存储器;一个或多个模块,其被存储在所述存储器中并且能够由所述一个或多个处理器执行以执行以下操作,包括:接收与对应于一个或多个设备的简档相关联的通知;至少部分地基于分配给所述通知的优先级水平以及与所述通知的呈现相关联的位置来确定用于将所述通知发送至所述一个或多个设备的顺序,其中,所述位置与所述用户界面的区域相对应;在第一时段中将所述通知中的第一通知发送至所述一个或多个设备中的至少一个设备;确定发送所述通知中的第二通知超过要在所述第一时段中被发送至所述一个或多个设备的通知的预先确定的数量;至少部分地基于预先确定量的时间的消逝或事件的发生中的至少一个来确定要将所述第二通知发送至所述至少一个设备的所述第一时段之后的第二时段;以及在所述第二时段中将所述第二通知发送至所述至少一个设备。
B.根据段落A所述的系统,其中,优先次序策略至少部分地基于以下中的一个或多个来将所述优先级水平中的优先级水平分配给所述通知中的个体通知:所述个体通知的源、与所述个体通知相关联的标识符、或者与所述个体通知相关联的时序。
C.根据段落B所述的系统,其中,与所述个体通知相关联的所述标识符包括:关于所述通知包括与安全、规定、更新、或新的特征相关联的内容的指示。
D.根据段落C所述的系统,其中,所述优先次序策略将最高的优先级水平分配给由所述简档明确地请求的通知或者与安全或规定内容相关联的通知中的至少一个,并且将相继地较低的优先级水平分别分配给包括与更新或新的特征相关联的内容的通知。
E.根据段落A-D中的任何一段所述的系统,其中,确定用于发送所述通知的所述顺序是至少部分地基于以下操作的,所述操作还包括:访问所述通知中的第三通知;确定所述第一通知和所述第三通知与同一优先级水平相关联;确定所述第一通知与所述位置中的第一位置相关联,所述第一位置与所述用户界面的所述区域中的第一区域相对应;确定所述第三通知与所述位置中的第二位置相关联,所述第二位置与所述用户界面的所述区域中的所述第一区域或第二区域相对应,其中,所述第二区域在所述第一区域的阈值距离之内;以及在所述第一时段之后的第三时段中将所述第三通知发送至所述至少一个设备。
F.根据段落A-E中的任何一段所述的系统,其中,确定用于发送所述通知的所述顺序是至少部分地基于以下操作的,所述操作还包括:访问所述通知中的第三通知;确定所述第一通知和所述第三通知与同一优先级水平相关联;确定所述第一通知与所述位置中的第一位置相关联,所述第一位置与所述用户界面的所述区域中的第一区域相对应;确定所述第三通知与所述位置中的第二位置相关联,所述第二位置与所述用户界面的所述区域中的所述第二区域相对应,其中,所述第二区域在所述第一区域的阈值距离之外;以及在所述第一时段期间将所述第三通知发送至所述至少一个设备。
G.根据段落A-F中的任何一段所述的系统,其中,所述第一时段与第一会话相对应,而所述第二时段与第二会话相对应。
H.根据段落A-G中的任何一段所述的系统,其中:所述简档与所述一个或多个设备中的至少两个设备相对应;并且所述操作还包括:至少部分地基于将所述第一通知发送至所述至少一个设备,确定与所述简档相关联的用户与所述第一通知进行交互;以及至少部分地基于确定与所述简档相关联的所述用户与所述第一通知进行交互,抑制将所述第一通知发送至所述至少两个设备中的其他设备。
I.一种方法,包括:从存储所述多个通知的队列访问所述多个通知中的个体通知;确定与所述个体通知中的每个个体通知相关联的标识符;确定与对所述个体通知中的每个个体通知的呈现相关联的用户界面中的区域;确定用于将所述个体通知中的每个个体通知发送至与简档相关联的设备的顺序,其中,确定所述顺序是至少部分地基于所述标识符以及与对所述个体通知中的每个个体通知的所述呈现相关联的所述用户界面中的所述区域的;确定要在时段中被发送至所述简档的所述个体通知的数量;至少部分地基于所述顺序将所述数量的所述个体通知发送至所述设备;以及在至少部分地基于预先确定的标准确定的一个或多个随后的时段中将一个或多个随后的通知发送至所述设备。
J.根据段落I所述的方法,还包括:访问所述个体通知中的第一个体通知;访问所述个体通知中的第二个体通知;确定所述第一个体通知和所述第二个体通知具有同一优先级水平;确定所述第一个体通知与所述用户界面中的第一区域相关联;确定所述第二个体通知与所述用户界面中的第二区域相关联;确定所述第一区域与所述第二区域之间的空间关系;以及至少部分地基于所述空间关系将所述第一通知和所述第二通知发送至所述设备。
K.根据段落J所述的方法,还包括:确定所述第一区域在所述第二区域的阈值距离之内;在与所述时段相关联的第一时间处发送所述第一通知;以及在与所述一个或多个随后的时段中的随后的时段相关联的第二时间处发送所述第二通知。
L.根据段落J所述的方法,还包括:确定所述第一区域在所述第二区域的阈值距离之外;以及在同一时段内发送所述第一通知和所述第二通知。
M.根据段落I-L中的任何一段所述的方法,其中,所述预先确定的标准包括预先确定量的时间的消逝或者事件的发生中的至少一个。
N.根据段落M所述的方法,还包括至少部分地基于检测与所述用户界面的用户交互来确定所述事件的所述发生。
O.编码有指令的一个或多个计算机可读介质,所述指令当由处理器执行时,配置计算机执行如在段落I-N中的任何一段所述的方法。
P.一种设备,其包括一个或多个处理器和编码有指令的一个或多个计算机可读介质,所述指令当由处理器执行时,配置计算机执行如在段落I-N中的任何一段所述的计算机实现的方法。
Q.一种方法,包括:用于从存储所述多个通知的队列访问所述多个通知中的个体通知的装置;用于确定与所述个体通知中的每个个体通知相关联的标识符的装置;用于确定与对所述个体通知中的每个个体通知的呈现相关联的用户界面中的区域的装置;用于确定用于将所述个体通知中的每个个体通知发送至与简档相关联的设备的顺序的装置,其中,确定所述顺序是至少部分地基于所述标识符以及与对所述个体通知中的每个个体通知的所述呈现相关联的所述用户界面中的所述区域的;用于确定要在时段中被发送至所述简档的所述个体通知的数量的装置;用于至少部分地基于所述顺序将所述数量的所述个体通知发送至所述设备的装置;以及用于在至少部分地基于预先确定的标准确定的一个或多个随后的时段中将一个或多个随后的通知发送至所述设备的装置。
R.根据段落Q所述的方法,还包括:用于访问所述个体通知中的第一个体通知的装置;用于访问所述个体通知中的第二个体通知的装置;用于确定所述第一个体通知和所述第二个体通知具有同一优先级水平的装置;用于确定所述第一个体通知与所述用户界面中的第一区域相关联的装置;用于确定所述第二个体通知与所述用户界面中的第二区域相关联的装置;用于确定所述第一区域与所述第二区域之间的空间关系的装置;以及用于至少部分地基于所述空间关系将所述第一通知和所述第二通知发送至所述设备的装置。
S.根据段落R所述的方法,还包括:用于确定所述第一区域在所述第二区域的阈值距离之内的装置;用于在与所述时段相关联的第一时间处发送所述第一通知的装置;以及用于在与所述一个或多个随后的时段中的随后的时段相关联的第二时间处发送所述第二通知的装置。
T.根据段落R所述的方法,还包括:用于确定所述第一区域在所述第二区域的阈值距离之外的装置;以及用于在同一时段内发送所述第一通知和所述第二通知的装置。
U.根据段落Q-T中的任何一段所述的方法,其中,所述预先确定的标准包括预先确定量的时间的消逝或者事件的发生中的至少一个。
V.根据段落U所述的方法,还包括用于至少部分地基于检测与所述用户界面的用户交互来确定所述事件的所述发生的装置。
W.一种设备,包括:一个或多个处理器;存储器;一个或多个模块,其被存储在所述存储器中并且能够由所述一个或多个处理器执行以执行以下操作,包括:访问与简档相关联的通知;至少部分地基于与所述通知中的个体通知相关联的标识符来将优先级水平分配给所述个体通知;至少部分地基于所述优先级水平以及与对应于所述个体通知被呈现的用户界面的区域的个体通知相关联的位置来对所述个体通知进行排序;将所述个体通知中的第一个体通知发送至与所述简档相关联的用户设备,其中,所述第一个体通知与第一优先级水平相关联;以及在发送所述第一个体通知之后的时间处将所述个体通知中的第二个体通知发送至所述用户设备,其中,所述第二个体通知与以下中的至少一个相关联:比所述第一优先级水平优先级低的第二优先级水平;或者第一位置,其与对应于与所述第一个体通知相关联的第二位置的区域是同一区域的用户界面的区域相关联,或者在所述第二位置的阈值距离之内。
X.根据段落W所述的一种设备,其中,所述个体通知每个包括包含提供对事件的通告的文本的数据分组,以及用于与所述个体通知进行交互的功能。
Y.根据段落X所述的设备,其中,所述操作还包括:接收与所述第一个体通知相关联的反馈;确定与所述第一个体通知相关联的批准分数;确定与所述第一个体通知中的至少一个相关联的第一批准分数小于阈值;以及发起用于禁用所述第一个体通知的工作流。
Z.根据段落W-Y中的任何一段所述的设备,其中,所述操作还包括:访问所述个体通知中的第三通知;确定所述第三个体通知与比所述第一优先级水平优先级低的第三优先级水平相关联;抑制所述第三个体通知;确定与所述第三个体通知相关联的过期元数据;以及至少部分地基于确定所述第三个体通知没有过期,至少部分地基于时间的流逝或事件的发生将所述第三个体通知发送至与所述简档相关联的用户设备。
AA.根据段落W-Z中的任何一段所述的设备,其中,所述操作还包括:访问所述个体通知中的第三通知;确定所述第三个体通知与比所述第一优先级水平优先级低的第三优先级水平相关联;抑制所述第三个体通知;确定与所述第三个体通知相关联的过期元数据;以及至少部分地基于确定所述第三个体通知过期,禁用所述第三个体通知。
AB.根据段落W-AB中的任何一段所述的设备,其中:所述简档与多个用户设备相关联;并且所述操作还包括:至少部分地基于将所述第一个体通知发送至所述用户设备,确定与所述简档相关联的用户与所述第一个体通知进行交互;以及抑制将所述第一个体通知发送至所述多个用户设备中的其他用户设备。
结论
尽管已经用特定于结构特征和/或方法动作的语言描述了本发明,但应当理解的是,在所附权利要求中所定义的主题不一定限于在本文中所描述的具体的特征或动作。相反,在上文中所描述的具体的特征和动作是作为实现权利要求的示例形式而公开的。
除非另外具体陈述,否则诸如“可以”、“可”、“可能”、或“能够”之类的条件性语言在所述上下文内被理解为呈现某些示例包括而其他示例不一定包括某些特征、元素、和/或步骤。因此,这样的条件性语言通常不旨在暗示某些特征、元素、和/或步骤是以某一方式针对一个或多个示例必须的,或者一个或多个示例必须包括用于在有或者没有输入或提示的情况下决定某些特征、元素、和/或步骤是否被包括在任何特定示例中或者要在任何特定示例中被执行的逻辑。除非另外具体陈述,诸如短语“在X、Y、或Z中的至少一个中”之类的连接性语言要被理解为呈现项目、术语等可以是X、Y、或Z中的一个或其组合。

Claims (15)

1.一种用于控制通知在用户界面上的呈现的系统,所述系统包括:
一个或多个处理器;
存储器;
一个或多个模块,其被存储在所述存储器中并且能够由所述一个或多个处理器执行以执行以下操作,包括:
接收与对应于一个或多个设备的简档相关联的通知,其中,所述通知每个包括包含提供对事件的通告的文本的数据分组,以及用于与所述通知进行交互的功能;
至少部分地基于分配给所述通知的优先级水平以及与所述通知的呈现相关联的位置来确定用于将所述通知发送至所述一个或多个设备的顺序,其中,所述位置与所述用户界面的区域相对应;
在第一时段中将所述通知中的第一通知发送至所述一个或多个设备中的至少一个设备;
确定发送所述通知中的第二通知超过要在所述第一时段中被发送至所述一个或多个设备的通知的预先确定的数量;
至少部分地基于预先确定量的时间的消逝或事件的发生中的至少一个来确定要将所述第二通知发送至所述至少一个设备的所述第一时段之后的第二时段;以及
在所述第二时段中将所述第二通知发送至所述至少一个设备。
2.根据权利要求1所述的系统,其中,优先次序策略至少部分地基于以下中的一个或多个来将所述优先级水平中的优先级水平分配给所述通知中的个体通知:所述个体通知的源、与所述个体通知相关联的标识符、或者与所述个体通知相关联的时序。
3.根据权利要求2所述的系统,其中,与所述个体通知相关联的所述标识符包括:关于所述通知包括与安全、规定、更新、或新的特征相关联的内容的指示。
4.根据权利要求3所述的系统,其中,所述优先次序策略将最高的优先级水平分配给由所述简档明确地请求的通知或者与安全或规定内容相关联的通知中的至少一个,并且将相继地较低的优先级水平分别分配给包括与更新或新的特征相关联的内容的通知。
5.根据权利要求1-4中的任何一项所述的系统,其中,确定用于发送所述通知的所述顺序是至少部分地基于还包括以下项的操作的:
访问所述通知中的第三通知;
确定所述第一通知和所述第三通知与同一优先级水平相关联;
确定所述第一通知与所述位置中的第一位置相关联,所述第一位置与所述用户界面的所述区域中的第一区域相对应;
确定所述第三通知与所述位置中的第二位置相关联,所述第二位置与所述用户界面的所述区域中的所述第一区域或第二区域相对应,其中,所述第二区域在所述第一区域的阈值距离之内;以及
在所述第一时段之后的第三时段中将所述第三通知发送至所述至少一个设备。
6.根据权利要求1-5中的任何一项所述的系统,其中,确定用于发送所述通知的所述顺序是至少部分地基于还包括以下项的操作的:
访问所述通知中的第三通知;
确定所述第一通知和所述第三通知与同一优先级水平相关联;
确定所述第一通知与所述位置中的第一位置相关联,所述第一位置与所述用户界面的所述区域中的第一区域相对应;
确定所述第三通知与所述位置中的第二位置相关联,所述第二位置与所述用户界面的所述区域中的所述第二区域相对应,其中,所述第二区域在所述第一区域的阈值距离之外;以及
在所述第一时段期间将所述第三通知发送至所述至少一个设备。
7.根据权利要求1-6中的任何一项所述的系统,其中,所述第一时段与第一会话相对应,而所述第二时段与第二会话相对应。
8.根据权利要求1-7中的任何一项所述的系统,其中:
所述简档与所述一个或多个设备中的至少两个设备相对应;并且
所述操作还包括:
至少部分地基于将所述第一通知发送至所述至少一个设备,确定与所述简档相关联的用户与所述第一通知进行交互;以及
至少部分地基于确定与所述简档相关联的所述用户与所述第一通知进行交互,抑制将所述第一通知发送至所述至少两个设备中的其他设备。
9.一种计算机实现的方法,其用于控制多个通知在用户界面上的呈现,所述方法包括:
从存储所述多个通知的队列访问所述多个通知中的个体通知;
确定与所述个体通知中的每个个体通知相关联的标识符;
确定与对所述个体通知中的每个个体通知的呈现相关联的用户界面中的区域;
确定用于将所述个体通知中的每个个体通知发送至与简档相关联的设备的顺序,其中,确定所述顺序是至少部分地基于所述标识符以及与对所述个体通知中的每个个体通知的所述呈现相关联的所述用户界面中的所述区域的;
确定要在时段中被发送至所述简档的所述个体通知的数量;
至少部分地基于所述顺序将所述数量的所述个体通知发送至所述设备;以及
在至少部分地基于预先确定的标准确定的一个或多个随后的时段中将一个或多个随后的通知发送至所述设备。
10.根据权利要求9所述的计算机实现的方法,还包括:
访问所述个体通知中的第一个体通知;
访问所述个体通知中的第二个体通知;
确定所述第一个体通知和所述第二个体通知具有同一优先级水平;
确定所述第一个体通知与所述用户界面中的第一区域相关联;
确定所述第二个体通知与所述用户界面中的第二区域相关联;
确定所述第一区域与所述第二区域之间的空间关系;以及
至少部分地基于所述空间关系将所述第一通知和所述第二通知发送至所述设备。
11.根据权利要求10所述的计算机实现的方法,还包括:
确定所述第一区域在所述第二区域的阈值距离之内;
在与所述时段相关联的第一时间处发送所述第一通知;以及
在与所述一个或多个随后的时段中的随后的时段相关联的第二时间处发送所述第二通知。
12.根据权利要求10所述的计算机实现的方法,还包括:
确定所述第一区域在所述第二区域的阈值距离之外;以及
在同一时段内发送所述第一通知和所述第二通知。
13.根据权利要求9-12中的任何一项所述的计算机实现的方法,其中,所述预先确定的标准包括预先确定量的时间的消逝或者事件的发生中的至少一个。
14.根据权利要求13所述的计算机实现的方法,还包括至少部分地基于检测与所述用户界面的用户交互来确定所述事件的所述发生。
15.根据权利要求9-14中的任何一项所述的计算机实现的方法,其中,所述个体通知每个包括包含提供对事件的通告的文本的数据分组,以及用于与所述个体通知进行交互的功能。
CN201680053878.9A 2015-09-18 2016-09-09 智能通知 Active CN108028857B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/858,007 2015-09-18
US14/858,007 US10627976B2 (en) 2015-09-18 2015-09-18 Smart notifications
PCT/US2016/050844 WO2017048587A1 (en) 2015-09-18 2016-09-09 Smart notifications

Publications (2)

Publication Number Publication Date
CN108028857A true CN108028857A (zh) 2018-05-11
CN108028857B CN108028857B (zh) 2021-05-11

Family

ID=56959059

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680053878.9A Active CN108028857B (zh) 2015-09-18 2016-09-09 智能通知

Country Status (4)

Country Link
US (1) US10627976B2 (zh)
EP (1) EP3350977B1 (zh)
CN (1) CN108028857B (zh)
WO (1) WO2017048587A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114174989A (zh) * 2020-02-12 2022-03-11 谷歌有限责任公司 通知节流

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050033811A1 (en) * 2003-08-07 2005-02-10 International Business Machines Corporation Collaborative email
US9221385B2 (en) * 2012-05-18 2015-12-29 Texas Emergency Network, LLC Emergency digital sign network with video camera, methods of operation, and storage medium
EP3015984A1 (en) 2014-10-29 2016-05-04 Hewlett-Packard Development Company, L.P. Providing data from data sources
US10924445B2 (en) * 2015-10-26 2021-02-16 Facebook, Inc. Notification targeting
US10489492B2 (en) * 2015-12-10 2019-11-26 Dropbox, Inc. Sending feature-instruction notifications to user computing devices
US10447810B2 (en) * 2016-06-09 2019-10-15 Google Llc Limiting alerts on a computing device
WO2018106271A1 (en) * 2016-12-05 2018-06-14 Google Llc Systems and methods for stateless maintenance of a remote state machine
US11770411B2 (en) * 2019-09-23 2023-09-26 Kyndryl, Inc. Prioritize endpoint selection based on criteria
US11726995B2 (en) 2019-12-17 2023-08-15 Hewlett Packard Enterprise Development Lp System and method for value pack generation using generic SQL plugin for unified console
US12088681B2 (en) * 2021-07-24 2024-09-10 VMware LLC Synchronization of notification actions across multiple enrolled devices

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102437972A (zh) * 2010-11-12 2012-05-02 微软公司 消息通知活动
US20120295645A1 (en) * 2011-05-18 2012-11-22 Microsoft Corporation Delayed and time-space bound notifications
CN103562858A (zh) * 2011-05-27 2014-02-05 微软公司 应用程序通知
US20140280657A1 (en) * 2013-03-13 2014-09-18 Google Inc. Prioritized and contextual display of aggregated account notifications
CN104322040A (zh) * 2012-06-29 2015-01-28 宇龙计算机通信科技(深圳)有限公司 终端和通知消息的管理方法
CN104407827A (zh) * 2014-10-31 2015-03-11 广东欧珀移动通信有限公司 一种通知栏中显示消息的方法及移动终端

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE60103085T2 (de) 2000-11-20 2004-11-25 British Telecommunications P.L.C. Verfahren zur verwaltung von resourcen
US7068189B2 (en) 2001-07-03 2006-06-27 Nortel Networks Limited Location and event triggered notification services
US7698276B2 (en) 2002-06-26 2010-04-13 Microsoft Corporation Framework for providing a subscription based notification system
US7877356B1 (en) 2004-05-24 2011-01-25 Apple Inc. Retaining intermediate states of shared groups of objects and notification of changes to shared groups of objects
US7890085B2 (en) 2004-07-12 2011-02-15 Research In Motion Limited Delayed user notification of events in a mobile device
US7634780B2 (en) * 2004-11-23 2009-12-15 Microsoft Corporation Method and system for exchanging data between computer systems and auxiliary displays
US7617162B2 (en) 2005-03-04 2009-11-10 Atul Saini Real time push notification in an event driven network
US8595323B2 (en) 2005-04-14 2013-11-26 Accenture Global Services Limited Providing excess resources as a service
WO2009039223A1 (en) * 2007-09-17 2009-03-26 Vidoop Llc Methods and systems for management of image-based password accounts
US9357052B2 (en) 2008-06-09 2016-05-31 Immersion Corporation Developing a notification framework for electronic device events
US8344852B2 (en) 2008-12-24 2013-01-01 Blackboard Connect Inc. Method and system for transmitting a plurality of notifications in a notification pool
US20100281409A1 (en) * 2009-04-30 2010-11-04 Nokia Corporation Apparatus and method for handling notifications within a communications device
WO2012099617A1 (en) 2011-01-20 2012-07-26 Box.Net, Inc. Real time notification of activities that occur in a web-based collaboration environment
US8483665B2 (en) 2011-03-31 2013-07-09 Matthew R. Kissinger Mobile device featuring sensor responsive re-notifications
US20120323933A1 (en) 2011-06-20 2012-12-20 Microsoft Corporation Displaying notifications based on importance to the user
US8924493B1 (en) 2012-03-09 2014-12-30 Google Inc. Prioritized notifications in a social network
US8612534B1 (en) 2013-01-31 2013-12-17 Electronic Arts Inc. Pausing of content delivery in push notifications
FR3001854B1 (fr) 2013-02-01 2015-05-15 Imediapp Procede d'optimisation temporelle d'envoi de notifications.
KR20160047879A (ko) * 2014-10-23 2016-05-03 엘지전자 주식회사 이동 단말기 및 그 제어 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102437972A (zh) * 2010-11-12 2012-05-02 微软公司 消息通知活动
US20120295645A1 (en) * 2011-05-18 2012-11-22 Microsoft Corporation Delayed and time-space bound notifications
CN103562858A (zh) * 2011-05-27 2014-02-05 微软公司 应用程序通知
CN104322040A (zh) * 2012-06-29 2015-01-28 宇龙计算机通信科技(深圳)有限公司 终端和通知消息的管理方法
US20140280657A1 (en) * 2013-03-13 2014-09-18 Google Inc. Prioritized and contextual display of aggregated account notifications
CN104407827A (zh) * 2014-10-31 2015-03-11 广东欧珀移动通信有限公司 一种通知栏中显示消息的方法及移动终端

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114174989A (zh) * 2020-02-12 2022-03-11 谷歌有限责任公司 通知节流
US11985206B2 (en) 2020-02-12 2024-05-14 Google Llc Notification throttling

Also Published As

Publication number Publication date
US20170083165A1 (en) 2017-03-23
EP3350977B1 (en) 2020-01-15
WO2017048587A1 (en) 2017-03-23
US10627976B2 (en) 2020-04-21
CN108028857B (zh) 2021-05-11
EP3350977A1 (en) 2018-07-25

Similar Documents

Publication Publication Date Title
CN108028857A (zh) 智能通知
US11115423B2 (en) Multi-factor authentication using positioning data
US11703990B2 (en) Animated visual cues indicating the availability of associated content
CN104541271B (zh) 从电子表格数据生成场景和游览
US10146402B2 (en) User terminal device for displaying different content for an application based on selected screen and display method thereof
US10803189B2 (en) Location-based access control of secured resources
CN109074550A (zh) 上下文感知调度特例
CN109074351A (zh) 文档协作发现
CN104067215B (zh) 呈现数据驱动表单
CN104737185A (zh) 用于具有伴随的备注的交互式幻灯片演示的阅读模式
CN108292332A (zh) 利用第三方数据和元数据来扩展联合图
CN108141702A (zh) 上下文知晓的位置共享服务
CN109074531A (zh) 工作流事件的自动化
CN105934756A (zh) 索引电子表格结构属性以供搜索
CN106537371A (zh) 可视化建议
CN105393222A (zh) 网络应用与本地应用之间的渲染委托
US20210158304A1 (en) Enhanced views and notifications of location and calendar information
CN110168588A (zh) 基于位置、使用模式以及内容来识别文档
US10433105B2 (en) Geographically-driven group communications
US20180143024A1 (en) Automated generation of indoor map data
CN108885640A (zh) 生成服务应用
US11121993B2 (en) Driving contextually-aware user collaboration based on user insights
CN107409085A (zh) 电子邮件消息的有条件的即时递送
CN107810489A (zh) 应用与设备之间的无缝转换
CN105408866B (zh) 远程脚本环境中的上下文关联性

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
GR01 Patent grant
GR01 Patent grant