[go: up one dir, main page]

CN103155510A - 自动通知器分配 - Google Patents

自动通知器分配 Download PDF

Info

Publication number
CN103155510A
CN103155510A CN2010800695640A CN201080069564A CN103155510A CN 103155510 A CN103155510 A CN 103155510A CN 2010800695640 A CN2010800695640 A CN 2010800695640A CN 201080069564 A CN201080069564 A CN 201080069564A CN 103155510 A CN103155510 A CN 103155510A
Authority
CN
China
Prior art keywords
notice
request
notifying device
notification
computing equipment
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
CN2010800695640A
Other languages
English (en)
Other versions
CN103155510B (zh
Inventor
詹姆士·H·史蒂芬斯
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.)
Empire Technology Development LLC
Original Assignee
Empire Technology Development 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 Empire Technology Development LLC filed Critical Empire Technology Development LLC
Publication of CN103155510A publication Critical patent/CN103155510A/zh
Application granted granted Critical
Publication of CN103155510B publication Critical patent/CN103155510B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/60Subscription-based services using application servers or record carriers, e.g. SIM application toolkits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/20Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Telephone Function (AREA)
  • Telephonic Communication Services (AREA)
  • User Interface Of Digital Computer (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

这里所描述的技术一般涉及在计算设备中分配通知器以响应于通知请求来提供通知。计算设备可以包括平台应用,所述平台应用被配置为从应用接收请求提供通知的通知请求。所述平台应用可以发现能够提供至少一个通知的通知器。所述平台应用可以利用所发现的通知器之一来调度通知请求,一旦利用所发现的通知器之一来调度通知请求,可以使所调度的通知器响应于通知请求来提供通知。这里所述的技术可以通过确定通知请求的优先级排序等级和计算设备的注意限制,根据用户需求来分配通知器,使得计算设备可以管理多个通知请求,而不会使用户被过多的通知淹没。

Description

自动通知器分配
背景技术
除非本文中另行指出,否则在本节中描述的材料并非本申请的权利要求的现有技术,且不因为其被本节包括而被承认为现有技术。
近来,用户经由安装在其智能电话或其它移动设备上的应用程序接收越来越多的信息。典型地,除了典型由传统电话提供的基本功能(如,电话呼叫、文本消息、和/或语音邮件)之外,这些应用程序可以向用户提供通知,如天气警报、股市警报、新闻警报和/或体育比赛。智能电话可以通过通知器(如,可视图形、闪光、听觉声音、振动等)向用户提供这些通知。随着越来越多的应用安装在智能电话上,提供给用户的通知的数量会过量地给予用户,并在特定时间使用户不必要地被可能对于用户来说不是特别相关、有趣或重要的信息淹没。这种失调随时间会变得更严重。
发明内容
本公开描述了与在计算设备中分配通知器以响应于通知请求来提供通知相关的各种技术。一些计算设备(如,这里所描述的智能电话)包括处理器和存储了平台应用的存储器。平台应用被配置为在处理器中执行,以使处理器从应用接收通知请求。处理器还被配置为发现可以响应于通知请求来提供通知的通知器。然后处理器可以利用通知器调度通知请求,并响应于通知请求,经由通知器来提供通知。
本公开还描述了一种计算机存储介质,包括在其上存储的计算机可执行指令,用于在由计算设备执行时使计算设备分配通知器以响应于通知请求来提供通知的方法。根据这里描述的一些示例方法,从应用接收通知请求。发现响应于通知请求来提供通知的通知器。然后利用通知器调度通知请求。然后通知器响应于应用请求来提供通知。
本公开还描述了针对分配通知器以响应于通知请求来提供通知的计算机实现的方法的各种技术。根据一些示例方法,计算设备从应用接收通知请求。计算设备发现能够响应于通知请求来提供通知的通知器。然后,计算设备利用通知器调度通知请求。然后,计算设备通过通知器响应于通知请求来提供通知。
以上发明内容仅仅是说明性的,而绝不是限制性的。除了上述示例性的各方案、各实施例和各特征之外,参照附图和以下详细说明,将清楚其他方案、其他实施例和其他特征。
附图说明
根据以下说明和所附权利要求,结合附图,本公开的前述和其他特征将更加清楚。在认识到这些附图仅仅示出了根据本公开的一些示例且因此不应被认为是限制本公开范围的前提下,通过使用附图以额外的特征和细节来详细描述本公开,附图中:
图1是示出了包括平台应用的计算环境的框图,该平台应用可以从应用接收通知请求,并响应于通知请求,经由计算设备的通知器来提供通知;
图2是示出了示例平台应用的框图;
图3是示出了可以经由网络与平台应用通信的多个设备的框图;
图4是示出了用于分配通知器的示例过程的流程图;
图5是示出了用于分配通知器的示例过程的流程图;
图6是示出了示例计算设备的框图;以及
图7是示出了包括用于在计算设备上执行计算机过程的计算机程序的示例计算机程序产品的局部视图的示意图;
以上附图全部根据本文所述的至少一些实施例来布置。
具体实施方式
在以下详细说明中,参考了作为详细说明的一部分的附图。在附图中,类似符号通常表示类似部件,除非上下文另行指明。具体实施方式部分、附图和权利要求书中记载的示例性实施例并不是限制性的。在不脱离在此所呈现主题的精神或范围的情况下,可以利用其他实施例,且可以进行其他改变。应当理解,在此一般性记载以及附图中图示的本公开的各方案可以按照在此明确公开的多种不同配置来设置、替换、组合、分割和设计。
本公开尤其针对涉及在计算设备(如,智能电话、移动设备、电视、台式机、膝上型电脑和/或其他计算设备)中分配通知器以响应于通知请求来提供通知的方法、设备、系统和计算机程序产品。简言之,这里所描述的技术一般涉及在示例计算设备中分配通知器以响应于通知请求来提供通知。计算设备可以包括平台应用。平台应用可以被配置为从至少一个应用接收请求提供至少一个通知的至少一个通知请求。平台应用还可以被配置为发现能够提供通知的通知器。然后,平台应用可以利用所发现的通知器之一来调度通知请求,并且平台应用可以使被调度的通知器响应于通知请求来提供通知。这里所提出的技术可以通过确定通知请求的优先级排序等级和计算设备的注意限制,根据用户需求分配通知器,使得计算设备可以管理多个通知请求,而不会使用户被无关的通知淹没。
图1是示出了包括平台应用102的计算环境100的框图,根据这里所提出的至少一些实施例,该平台应用102可以从应用120A-120N接收通知请求122A-122N,并响应于通知请求122A-122N,经由计算设备110的通知器130A-130N来提供通知132A-132N。根据一些实施例,计算设备110可以是移动设备,如移动电话、智能电话、平板计算机、便携式媒体播放器等。计算设备110还可以是非移动设备,如个人计算机、电视机、监视器、车载立体声系统等。应当理解,计算设备110可以是包括处理器和可以存储平台应用102的存储器的任何设备。
应用120A-120N在此一般被称为应用120。这些应用120可以在计算设备110上操作,或者在一些示例实施例中,在与计算设备110通信的远程设备上操作。根据一些示例实施例,应用120可以是任意类型的计算机应用,包括文本消息收发应用、日历应用或天气应用等。应用120的一些其他示例可以包括被配置为显示正由计算设备110接收的蜂窝信号的强度的应用,或被配置为显示其信号正由计算设备110接收的蜂窝提供商的名称的应用。在一些示例实施例中,这些应用120的一个或多个可以被配置为向计算设备110的用户提供与该应用相关联的信息。
根据一些实施例,应用120可以被配置为通过向平台应用102发布通知请求122A-122N,向用户通知特定事件。通知请求122A-122N在此一般被称为通知请求122。通知请求122可以是提供一个或多个通知(如,在此一般可以被称为通知132的通知132A-132N)的请求。诸如通知132中的任何一个的通知可以指可以响应于诸如通知请求122A之类的通知请求而提供给用户的诸如警报、警告、或提醒之类的通知。根据一些示例实施例,通知132可以是视觉、听觉或振动通知。
根据一些示例实施例,并使用应用120A作为示例,应用120A可以在应用120确定发生了应引起用户注意的事件之后发布通知请求122A。这种事件的一些示例可以包括:接收到来电呼叫、文本消息或电子邮件,发布龙卷风警报,股票价格降至特定阈值价格以下,剩余电池寿命降至特定阈值以下等。可以呈现通知的持续时间可以改变。在一些实例中,可以不变地呈现通知,以向用户提供实时或接近实时的信息。例如,信号强度通知132A可以向用户持续提供蜂窝信号强度,提供商通知132B可以持续提供其蜂窝信号正由计算设备110接收的提供商名称。类似地,通知132C可以持续提供计算设备110的剩余电池寿命。根据一些示例实施例,当计算设备接收到文本消息或来电呼叫时,可以呈现听觉通知一次。然而,如果用户没有响应到来的文本消息或来电呼叫,则计算设备110可以呈现视觉通知器,直至用户响应于视觉通知而采取行动。根据一些实施例,虚线包围的图像所表示的天气通知132D可以提供当前的天气条件。天气通知132D可以在可选择用于访问天气应用的天气图形图标134A的界限内。应当理解,类似于天气通知132D,可以在与特定应用相关联的图形图标的界限内提供其他通知。按照这样的方式,用户可以知道该通知与特定应用相关。根据一些示例,未读邮件通知132N指未读邮件数。未读邮件通知132N可以在可选择用于访问邮件应用的邮件图形图标134N上或附近显示。应当理解,图1所示的通知仅为示例通知,未示出或提及的其他通知也可以包括在即时应用的范围内。
在一些示例实施例中,使用应用120B作为示例,应用120B可以仅在确定发生了事件时发布通知请求122B。应用120B可以指定要向用户呈现的内容的种类。应用120B可以通过向平台应用102发布通知请求122B来这样做。通知请求122B可以包括应用120期望呈现给用户的内容和要提供通知的持续时间。通知请求122B还可以包括要呈现的通知类型。以下在讨论了平台应用102之后,提供对通知和通知的不同类型的详细讨论。
通知请求122B还可以包括针对正在呈现的数据的内容的关联时间值。正在呈现的数据的关联内容时间值可以指数据值随时间变化的测量。换言之,具有较高的内容时间值的通知请求可以指对于用户来说比具有相对较低的内容时间值的通知请求更有价值的数据。与特定通知请求相关联的内容时间值典型地可以与同相同应用所发布的其他通知请求的内容相关联的时间值相关。这样,可以确定来自应用的数据的相关值,并且平台应用102能够基于数据的相关值对未决的通知请求以优先顺序排列。根据一些实施例,通知请求122可以不提供与要提供的通知的类型或要使用的通知器的类型有关的信息。而是,通知请求可以只包括向用户通知特定事件出现的指令。
根据一些示例实施例,应用120可以具有可以针对其自动发布通知请求122的事件的列表。应当理解,应用120还可以向每个通知请求指派内容时间值,指示特定通知请求与其他通知请求相比的相对重要性。
根据示例实施例,用户可以定制针对一个或多个应用120的设置,以添加或删除应用120应当针对其自动发布通知请求122的事件。此外,用户还可以定制一个或多个应用120的设置,以向特定事件指派与信息对用户的重要性相对应的关联内容时间值。这样,可以向与对用户来说更重要的事件相关联的通知请求指派比与对用户来说较不重要的事件相关联的通知请求高的内容时间值。
平台应用102可以被配置为从应用120接收通知请求122。平台应用102还可以被配置为同时发现能够响应于应用120接收的通知请求122来提供通知132的一个或多个通知器。此外,平台应用102可以根据所发现的通知器确定可用通知器,并利用可用通知器调度未决的通知请求。只要通知器在计算设备110正在操作的当前操作模式之下可用于提供通知,便可以认为该通知器可用。平台应用102还可以被配置为响应于通知请求122,经由可用通知器提供通知132。以下将参照图2,描述与发现通知器、确定通知器的可用性并利用可用通知器调度通知请求有关的详情。
如上所述,诸如通知132之类的通知可以指可以响应于一个或多个通知请求122提供给用户的诸如警告、警报或提醒之类的通知。通知可以是视觉通知、听觉通知或振动通知。视觉通知的一些示例可以包括:在显示屏幕的一部分上显示具有文本标记“连接”或“断开”的布尔值,在显示屏幕上显示彩色图标,发光二极管(LED)所发出的彩色光,闪光、闪动显示屏等。听觉通知的一些示例可以包括铃音、哔哔声或语音通知,如“连接”或“断开”,“你有邮件”或“向左”。振动通知的一些示例可以包括具有变化的持续时间和强度的振动。应当理解,振动也可以产生声音,因而在一些实施例中可以被认为是听觉通知。
通知器130A-130N在此一般可以称为通知器130。通知器130可以是能够提供一个或多个通知的组件。存在不同类型的通知器130,如提供视觉通知的视觉通知器、提供听觉通知的听觉通知器和提供振动通知的振动通知器。视觉通知器的一些示例可以包括显示屏(例如计算设备的显示屏130A、显示屏130A的一部分)、LED或任意其他光源。听觉通知器的一些示例可以包括扬声器,如扬声器130N,或任意其他声音产生组件。振动通知器的一些示例可以包括任意类型的振动产生组件。
图2是示出了根据这里所示的至少一些实施例的与一个或多个应用120和一个或多个通知器130通信的示例平台应用102。如上所述,平台应用102可以被配置为从应用120接收通知请求122,并使通知器130响应于从应用120接收的通知请求来提供通知器132。
平台应用102可以包括通知请求收集模块152、通知请求优先级排序模块154、通知器发现模块162、通知器可用性模块164和调度模块170。此外,平台应用102可以包括包含一个或多个未决通知请求的未决通知请求列表156和包含一个或多个通知器的通知器列表166。
通知请求收集模块152可以被配置为从一个或多个应用120接收一个或多个通知请求122。通知请求收集模块152可以在未决通知请求列表156中存储通过通知请求收集模块152接收的这些通知请求。根据一些示例实施例,一个或多个通知请求122可以包括识别发布了通知请求的应用的应用标识符、要提供的通知类型、关联内容时间值等。
通知请求优先级排序模块154可以被配置为对存储在未决通知请求列表156中的未决通知请求进行动态优先级排序。通知请求优先级排序模块154可以随着通知请求收集模块152接收到更多的通知请求122来调整未决通知请求的优先级。
应当理解,建立一个或多个应用120所发布的一些或所有通知请求122的优先级可以有助于改进用户的整体体验。因此,根据一些示例实施例,可以建立对通知请求进行优先级排序的归一化标准。优先级排序模块154可以通过至少部分地基于发布应用所指派的通知请求的优先级排序等级、该应用相对于其他应用的优先级等级、用户正在进行的当前活动、用户偏好等来归一化每个通知请求122的优先级排序等级,从而对未决通知请求进行优先级排序。
根据一些示例实施例,诸如发布通知请求122A的应用120A之类的应用能够向应用120所发布的每个通知请求122A指派优先级排序等级。如上所述,通知请求122A可以由事件的出现而触发。应用120A可以被配置为确定特定事件的重要性,并向与事件相关联的通知请求122A指派优先级排序等级。例如,股票应用可以给用户投资组合中股票的股价10%的下跌所触发的通知请求指派比用户投资组合中股票的股价1%的上升所触发的通知请求更高的优先级排序等级。类似地,天气应用可以给在用户当前位置发布龙卷风警报所触发的通知请求指派比在与用户相距500英里的位置发布龙卷风警报所触发的通知请求更高的优先级排序等级。
根据一些示例实施例,可以由用户手动指派或由平台应用102自动指派应用120A相比于其他应用的优先级等级。例如,根据一些示例实施例,电话应用的优先级等级可以高于游戏应用的优先级等级。因而,电话应用所发布的任何通知请求将被指派比游戏应用发布的任何通知请求更高的优先级排序等级。
此外,确定从多个应用接收的通知请求的优先级等级的过程也与用户正在进行的当前活动相关。根据一些示例实施例,当用户正在工作时,可以向涉及所安排会议的提醒的通知请求指派比涉及交通延迟的通知请求更高的优先级排序等级。然而,当用户在开车时,可以向涉及交通延迟的通知请求指派比涉及所安排会议的提醒的通知请求更高的优先级排序等级。
用户偏好的示例可以包括用户对于接收金融新闻胜于天气更新的偏好。因而,通知请求优先级排序模块154可以被配置为向金融新闻应用所发布的通知请求指派比天气应用所发布的通知请求更高的优先级排序等级。类似地,通知请求优先级排序模块154还可以被配置为:即使相同应用发布了通知请求,也向与金融新闻相关联的通知请求发布比与天气更新相关联的通知请求更高的优先级排序等级。
通知请求优先级排序模块154还可以被配置为基于用户当前正在从事的活动来指派通知请求。在示例场景中,计算设备的用户可能正在开车。当用户正在开车时,用户会偏好接收交通更新和天气更新,而不会偏好接收金融新闻。因而,通知请求优先级排序模块154可以被配置为确定用户当前正在从事的活动,并在确定用户当前正在开车时,通知请求优先级排序模块154可以向与交通和天气更新相关联的通知请求指派比与金融新闻相关联的通知请求高的优先级排序等级。
通知请求优先级排序模块154还可以被配置为利用应用所提供的关联内容时间值来确定相同应用所发布的通知请求的优先级排序等级。然而,由于每个应用任意指派关联内容时间值,并未针对不同应用归一化,因而与不同应用所发布的通知请求相关联的关联内容时间值可以不需要被归一化为根据关联内容时间值进行优先级排序。通过利用值调整函数对不同应用所发布的通知请求122的关联内容时间值函数进行优先级排序,可以执行归一化。因此,利用用户正在开车的示例,通知请求优先级排序模块154可以被配置为将与交通或天气更新相关联的通知请求的关联内容时间值乘以第一值调整函数,而通知请求优先级排序模块154可以将与金融新闻相关联的通知请求的关联内容时间值乘以比第一值调整函数小的值调整函数值。这样,通知请求优先级排序模块154可以基于考虑了用户偏好、用户当前所从事的活动等的归一化内容时间值,对未决通知请求列表156中的每一个未决通知请求进行优先级排序。
平台应用102可以利用通知器发现模块162来发现能够提供通知的通知器。平台应用102可以同时发现通知器并对未决通知请求进行优先级排序。通知器发现模块162可以发现计算设备110的一个或多个通知器130和计算设备110可访问的一个或多个通知器130。通知器发现模块162还可以发现在新硬件与计算设备110耦接时变得可访问的任何新通知器。
根据一些示例实施例,计算设备110可以与一个或多个远程设备通信。远程设备可以包括电视机、膝上型计算机、台式机、移动设备、与计算设备110类似的另一计算设备、车载立体声系统或包括能够与平台应用102通信的一个或多个通知器的任何其他设备。通知器发现模块162还可以被配置为发现与计算设备通信的一个或多个远程设备的一个或多个通知器。通知器发现模块162可以向远程设备询问远程设备是否具有任意通知器。然后,远程设备可以向通知器发现模块162提供与远程设备相关联的通知器列表,包括不是远程设备的一部分但可通过远程设备进行访问的一个或多个通知器。
通知器发现模块162可以被配置为更新包含通知器的列表的通知器列表166。通知器发现模块162可以通过在发现通知器时向通知器列表166添加通知器发现模块162所发现的通知器来更新通知器列表166。通知器发现模块162还可以包括与通知器列表166中的一个或多个通知器相关联的附加信息,包括通知器类型、与通知器相关联的设备、通知器可以通知的数据的类型(文本、声音、振动)、通知器可以响应于其通知请求来提供通知的应用、通知器成本函数、或通知器注意函数等。
通知器的通知器成本函数可以将通知器使用的持续时间映射到可以针对可用的一些或所有通知器归一化的抽象成本单位。通知器的通知器注意函数可以将通知器使用映射到指示通知器可能消耗的用户注意量的抽象单位。这样,可以利用具有较高通知器注意功能的通知器来调度用户想要被中断的通知请求,而可以利用具有较低通知器注意功能的通知器来调度用户不想要被中断的通知请求。根据一些示例实施例,移动电话上的LED可以具有比移动电话的扬声器或移动电话的显示屏低的通知器注意函数。应当理解,还可以基于计算设备的环境来调整通知器注意函数。在滚石音乐会,移动电话的扬声器可以具有比移动电话上的LED低的通知器注意函数,因为滚石音乐会的背景音乐对于用户来说过于嘈杂以至于听不到从移动电话的扬声器发出的铃音。
根据一些示例实施例,通知器发现模块162还可以包括指示特定通知器提供通知所消耗的功率量的通知器功耗电平。这样,如果计算设备正在低功率模式下操作,则消耗比阈值功率电平高的功率的通知器会不可用来提供通知。应当理解,通知器功耗电平可以与通知器的通知器成本函数成正比。因此,消耗较少功率的通知器可以具有较低的通知器成本函数。
通知器可用性模块164可以被配置为确定通知器列表166内的通知器提供通知的可用性。只要通知器在计算设备110正在操作的当前操作模式下可用于提供通知,便可以认为通知器可用。操作模式的一些示例包括功耗模式、用户可用性模式、用户活动模式等。
功耗模式可以与计算设备110能够消耗的功率量相关。根据一些示例实施例,计算设备110正在操作的功率模式可以改变一个或多个通知器的可用性。例如,当计算设备110正在低功率模式下操作时,消耗多于阈值功率量的通知器不可用于提供通知。例如,第一振动通知器(如四个振动的序列)可以消耗比低功率模式所定义的预定功率量更多的功率。因而,通知器可用性模块164可以指示第一振动通知不可用。
类似地,如果计算设备110正在用户可用性模式(如,会议模式)下操作时,听觉通知器会变得不可用于提供听觉通知。这样,如果用户正在会议中,用户和会上的其他人不会被计算设备110所提供的听觉通知打扰。用户可用性模式的一些其他模式可以包括静音模式,其中听觉和振动通知器会变得不可用,因为听觉和振动通知器所提供的通知会产生一些可听声音。此外,如果用户正处于噪音环境中,用户可以将计算设备110设置为大声模式。在该操作模式中,听觉通知器能够以较高音量提供可听通知,以试图吸引用户注意。
根据一些示例实施例,计算设备110正在操作的用户可用性模式还可以改变一个或多个通知器的可用性。例如,当计算设备110正在“勿扰”模式中操作时,通知器可用性模块164会指示一些或所有通知器不可用。然而,如果计算设备110正在会议模式中操作时,通知器可用性模块164会指示只有视觉通知器和振动通知器可用,而听觉通知器不可用。
根据一些示例实施例,通知器发现模块162和通知器可用性模块164可以连续或周期性地更新通知器列表166和通知器列表166中通知器的可用性状态。在一些示例实施例中,如果计算设备110正在低功率模式中操作时,可以降低更新通知器列表166的频率,以努力节能。相反,如果计算设备110正在高功率模式中操作时,由于没有功耗限制,可以提高更新通知器列表166的频率。
根据一些示例实施例,通知器发现模块162和通知器可用性模块164可以彼此结合工作。通知器发现模块162可以连续或周期性地监视计算设备110和与计算设备110通信的可访问远程设备,以发现一个或多个通知器。当通知器发现模块162监视计算设备110和/或可访问远程设备时,通知器发现模块162可以识别可以是计算设备的通知器或远程设备之一的通知器的备选通知器,它不在通知器列表166中。一旦识别出备选通知器,通知器发现模块162可以向通知器列表166添加该通知器。通知器发现模块162还可以利用通知器可用性模块164的服务来确定备选通知器是否可用于在计算设备110的当前操作模式下提供通知。如果备选通知器可用于提供通知,则备选通知器可以被识别为可用。如上所述,通知器可用性模块164可以连续或周期性地监视通知器列表166中的通知器的可用性,并更新通知器列表166以反映对通知器可用性的任何改变。
调度模块170可以被配置为随时间改变,利用通知器列表166中的可用通知器来调度未决通知请求列表156中的未决通知请求122。如上所述,每个通知器可以具有通知器成本函数和通知器注意函数。类似地,每个通知请求可以具有关联内容时间值函数。根据一些示例实施例,调度模块170可以被配置为最小化聚集通知器成本函数,通知最大化聚集通知呈现。
聚集通知器成本函数可以是利用通知器以响应于通知请求来提供通知的通知器成本函数之和。聚集通知呈现可以是通知器的通知注意函数和通知请求的关联内容时间值的函数。在一个示例中,聚集通知呈现是通知器的通知注意函数和通知请求的关联内容时间值的乘积。这样,具有高内容时间值的通知请求证明更可能消耗用户注意的通知器的使用。
调度模块170还可以被配置为不重复预定(double-book)通知器且不超过可以动态改变的计算设备110的注意率限制。计算设备110的注意率限制是定量限制,设置了通知器可以在任意给定时间提供给用户的注意量的上边界。因此,一旦达到计算设备110的注意率限制,无法将附加通知提供给用户。例如,如果以10个单位设置计算设备的注意率限制,且提供了第一通知的可听通知器具有通知注意因子7,提供了第二通知的视觉通知器具有通知注意因子2,则调度模块170仅可以利用具有等于或小于1的通知注意因子的通知器调度另一通知请求。这样,用户可以限制用户在一时段内想要接收的信息量,从而用户不会被通知淹没。本领域技术人员应当理解,当计算设备110正在受限可用性模式中操作时的注意率限制比计算设备110正在完全可用性模式中操作时的注意率限制低。根据示例实施例,计算设备110可以在消混(declutter)模式中操作,在消混模式中,计算设备的注意率限制低于当计算设备110在正常模式中操作时计算设备110的注意率限制。这样,在计算设备110正在消混模式中操作时,向用户提供较少的通知。
然而,调度模块170必须平衡未决通知请求的通知需求和所呈现的通知器的可用性。取决于计算设备110的操作模式,调度模块170可以利用各种算法来确定是否要针对特定通知请求提供一个或多个通知,如果是,确定何时将提供一个或多个通知,并且哪些通知器将提供一个或多个通知。然而,为了优化用户的整体体验,调度模块170可以基于用户偏好做出这些确定,同时还尝试满足在通知请求内指示的偏好。
根据一些示例实施例,平台应用102还可以包括:学习模块180,被配置为监视提供给用户的通知,并进一步监视用户对所提供通知的响应。学习模块180能够发现指示在特定操作模式期间用户对于特定类型通知的偏好的倾向。类似地,学习模块180能够被配置为确定用户更多响应的那些应用,以及用户较少响应哪些应用。这有利于用户的整体体验,因为平台应用102的各个模块可以利用这些偏好来调整指派给特定类型的通知请求的优先级排序等级、指派给与特定类型的应用相关联的通知请求的优先级排序等级、通知器的通知器注意函数、通知器的通知器成本函数等。学习模块还能够基于计算设备的操作模式来确定用户偏好,包括在各种用户活动模式、各种功耗模式和各种用户可用性模式期间的用户偏好。
图3是示出了根据这里所述的至少一些实施例的可以经由网络304与平台应用102通信的多个设备302A-302N的框图。根据如图3所示的一些示例实施例,平台应用102可以不驻留在计算设备110内。而是,平台应用102可以在云中运行,并通过网络304与在此处一般称为设备302的一个或多个设备302A-302N通信。设备302可以是与计算设备110类似的计算设备。设备302还可以是可以包括能够发布通知的一个或多个应用的任意其他类型的设备。设备302还可以是包括能够响应于通知请求来提供通知的一个或多个通知器的任意类型的设备。
设备302可以经由网络304或通过其他短或长距离网络彼此连接。网络304可以包括无线网络,例如但不限于,如WI-FI网络之类的无线局域网(WLAN)、无线广域网(WWAN)、如蓝牙之类的无线个域网(WPAN)、如WiMAX网络之类的无线城域网(WMAN)、蜂窝网络或卫星网络。可选地,网络304可以是有线网络,例如但不限于,有线广域网(WAN)、如以太网之类的有线局域网(LAN)、有线个域网(PAN)、或有线城域网(MAN)。网络304可以包括因特网,从而平台应用102经由与因特网的无线或有线连接与设备302通信。
现在参照图4和5,将提供与这里所述的实施例有关的用于在计算设备中分配通知器以响应于通知请求来提供通知的附加详情。具体地,图4是示出了根据这里所述的至少一些实施例的分配通知器的示例过程400的流程图。过程400可以包括由块402、404、406、408、410、412、414、416和/或418中的一个或多个所示的一个或多个操作、功能或动作。
应当理解,这里所描述的块可以实现为在计算系统上运行的计算机实现的指令序列或程序模块,实现为计算系统内的互连机器逻辑电路或电路模块,或其某种组合。该实施方式是取决于各实施例的性能和其他需求的选择。这里所描述的一些逻辑操作不同地被称为状态操作、功能、结构设备、动作或模块。这些操作、功能、结构设备、动作和模块可以以软件、固件、专用数字逻辑及其任意组合实现。应当理解,在一些实施方式中,可以去除、组合一个或多个所示出的块,或将其分为除图中所示和这里所描述的那些块之外的附加块。还可以顺序、并行或按照与这里所描述的不同顺序来执行这些块。
过程400可以开始于块402(接收请求提供通知的通知请求)。块402之后是块404(发现能够响应于通知请求来提供通知的通知器)。块404之后是块406(从所发现的通知器中识别可用通知器)。块406之后是块408(从可用通知器中识别备选通知器以提供通知)。块408之后是块410(利用所识别的通知器调度通知请求,以提供通知)。块410之后是块412(响应于通知请求,经由所识别的通知器来提供通知)。在块412之后,处理终止。以下将描述关于每个块的进一步的详情。
在块402(接收请求提供通知的通知请求),平台应用102可以被配置为接收通知请求。可以由应用发布应用请求。典型地,应用120可以在确定已经发生了应当通知计算设备的用户的事件时发布通知请求。通知请求可以包括应用120期望呈现给用户的内容。通知请求122还可以包括要呈现的通知的类型和关联内容时间值。根据实施例,通知请求收集模块152可以接收通知请求,并在未决通知请求列表156中存储该通知请求,未决通知请求列表156包含一个或多个未决通知请求和与通知请求相关联的信息。根据一些示例实施例,通知请求优先级排序模块154可以对存储在未决通知请求列表中的未决通知请求进行优先级排序。
在块404(发现能够响应于通知请求来提供通知的通知器),平台应用102可以被配置为发现计算设备的一个或多个通知器和与计算设备通信的远程设备的通知器。根据一些示例实施例,平台应用102的通知器发现模块162可以被配置为发现一个或多个通知器。通知器发现模块162可以被配置为在发现操作期间收集与一个或多个所发现的通知器相关联的信息。通知器发现模块162所收集的信息示例可以包括通知器的关联功耗电平、通知器的类型、以及通知器的通知注意函数,该函数对通知器将消耗的用户注意的相对量进行量化。
在块406(从所发现的通知器中识别可用通知器),平台应用102的通知器可用性模块164可以被配置为从所发现的通知器中识别可用通知器。应当理解,平台应用102可访问的一些通知器可用于提供一个或多个通知请求。例如,听觉通知器不能提供视觉通知。此外,在特定时间针对第一通知请求所调度的听觉通知器会不可用于在与第一通知请求同时请求通知的第二通知请求。根据一些示例实施例,通知器发现模块162和通知器可用性模块164可以保持并更新包含关于所发现的通知器及其可用性的信息的通知器列表166。
在块408(从所发现的通知器中识别备选通知器,以响应于通知请求来提供通知),平台应用102的调度模块170可以被配置为从可用通知器中识别备选通知器,以响应于通知请求来提供通知。调度模块170可以与未决通知请求列表进行通信,以识别具有最高优先级排序等级的通知请求。在识别了具有最高优先级排序等级的通知请求时,调度模块170可以从通知器列表166中识别能够响应于所识别的通知请求来提供通知的备选通知器。调度模块170可以考虑按照调度模块170最大化通知呈现同时最小化聚集通知器成本函数的方式,基于未决通知请求来识别备选通知器。
在块410(利用所识别的通知器调度通知请求以提供通知),平台应用102的调度模块170可以被配置为利用所识别的通知器调度所识别的通知请求。调度模块170可以被配置为同时利用一个或多个通知器调度一个或多个通知请求。例如,指示正在接收来电呼叫的通知请求,平台应用102可以调度计算设备的显示屏、扬声器和振动产生组件,以同时提供相应通知。
在块412(响应于通知请求,经由所识别的通知器来提供通知),平台应用102可以被配置为根据调度,使所识别的通知器响应于所识别的通知请求来提供通知。应当理解,可以通过多个通知器同时提供多个通知。在块412之后,过程400可以重复(例如,周期性地、持续地或按需地)或终止。
图5是示出了根据这里所述的至少一些实施例的用于分配通知器的示例过程的流程图。过程500可以开始于块502(接收通知请求)。块502之后是块504(向未决通知请求列表156添加通知请求)。块504之后是块506(对未决通知请求列表156进行优先级排序)。块506之后是块508(识别具有最高优先级排序登记的通知请求)。块508之后是判决块510(通知请求指示专用通知器吗?)。判决块510之后是块512(利用专用通知器调度通知请求)或判决块514(通知请求指示通知器类型吗?)。块512之后是连接A,该连接A使处理500继续到块526。判决块514之后是块516(搜索所指示类型的通知器)或块518(搜索一些或所有通知器)。块516和518之后是块520(识别可用通知器)。块520之后是块522(识别要利用其调度所识别的通知请求的通知器)。块522之后是块524(利用所识别的通知器调度所识别的通知请求)。块524之后是块526(响应于所识别的通知请求,经由所识别的通知器来提供通知)。在块526之后,处理可以终止。以下将描述关于每个块的进一步详情。
在块502(接收通知请求),平台应用102可以被配置为从应用接收通知请求。通知请求可以包括应用120期望呈现给用户的内容。通知请求122还可以包括要呈现的通知的类型和关联内容时间值。
在块504(向未决通知请求列表156添加通知请求),平台应用102的通知请求分配模块152可以被配置为向未决通知请求列表156添加从应用接收的通知请求。未决通知请求列表156可以包括一个或多个附加通知请求和与通知请求相关联的信息。
在块506(对未决通知请求列表156进行优先级排序),通知请求优先级排序模块154可以被配置为通过给每个通知请求指派优先级排序等级,对未决通知请求列表156中的通知请求进行优先级排序,该优先级排序等级指示通知请求相对于未决通知请求列表156中的其他通知请求的优先级。通知请求优先级排序模块154可以被配置为基于一个或多个因素来指派优先级排序等级,所述因素包括发布请求的应用的优先级等级、发布请求的应用所指派的通知请求的优先级排序等级、关联内容时间值、被请求提供通知的通知器的类型、能够提供通知的通知器的可用性等。
在块508(识别具有最高优先级排序登记的通知请求),调度模块170可以被配置为识别未决通知请求中具有最高优先级排序等级的通知请求。这样,调度模块170可以被配置为向用户提供与要求用户立即注意的通知请求相关的通知。
在判决块510(通知请求指示专用通知器吗?),调度模块170可以被配置为确定所识别的通知请求是否指示提供通知的专用通知器。专用通知器是能够响应于来自一个特定应用的通知请求来提供通知的通知器。典型地,专用通知器可以包括占用显示屏上特定固定位置(real estate)的视觉通知器。例如,专用通知器可以包括提供通知132A-132C的通知器。通知器132D、132N也可以是专用的,但是能够基于表示特定应用的图形图标的放置在显示屏上的各个不同位置显示。例如,天气通知132D可以由视觉天气通知器在表示天气应用的天气图形图标134A内显示。视觉天气通知器不必占据显示屏130A上的特定固定位置,而是依赖于显示屏130A上由表示天气应用的天气图形图标134A所限定的固定位置。
如果在判决块510,调度模块170确定通知请求指示专用通知器,则例程500进行到块512(利用专用通知器调度通知请求),其中调度模块170可以被配置为利用专用通知器调度通知请求。根据一些示例实施例,调度模块170可以首先确定是否专用通知器可用。如果专用通知器可用,则调度模块170可以立即提供通知。然而,如果专用通知器不可用,则调度模块170可以针对何时专用通知器可用而调度通知。然而,如果专用通知器在足够长的时间不可用,通知请求的内容时间值变为零,则可以不执行通知请求。类似地,调度模块170还可以连续监视未决通知请求列表156,并且如果第二通知请求指示利用专用通知器并具有高于所识别的通知请求的内容时间值,则可以利用专用通知器调度第二通知请求。根据一些可选实施例,调度模块170可以响应于所识别的通知请求来提供通知,直至调度模块170识别第二通知请求以便执行。从块512,处理500进行到块526。
如果在判决块510,调度模块170确定通知请求不指示专用通知器,则例程500处理到判决块514(通知请求指示通知器类型吗?),其中调度模块170可以被配置为确定所识别的通知请求是否指示通知器的类型。如上所述,通知器可以是视觉通知器、听觉通知器和振动通知器之一或组合。类似地,可以基于可以表示通知器可能消耗的用户注意量的通知器注意函数、或可以表示利用特定通知器的成本的通知器成本函数,对通知器的类型进行不同地分类。具有较低通知器成本函数的通知器比具有较高通知器成本函数的通知器更有可能被调度以提供通知器。
如果在判决块514,调度模块170确定调度请求指示通知器类型,则例程500进行到块516(搜索所指示类型的通知器),其中调度模块170可以被配置为搜索所指示的类型的通知器,或更一般地,符合通知请求的标准的通知器。调度模块170可以利用包括一些或所有所发现的通知器的通知器列表166,以搜索符合通知请求的标准的备选通知器。
如果在判决块514,调度模块170确定通知请求不指示通知器类型,则例程500进行到块518(搜索一些或所有通知器),其中调度模块170可以被配置为搜索一些或所有类型的通知器。
在块520(识别可用通知器),通知器可用性模块164可以被配置为:基于在通知请求中指示的标准,识别可用于响应于所识别的通知器来提供通知的一些或所有备选通知器。
在块522(识别要利用其调度所识别的通知请求的通知器),调度模块170可以被配置为识别要利用其调度所识别的通知请求的通知器。调度模块170可以基于通知器成本函数和通知器注意函数来识别特定通知器。根据一些示例实施例,针对特定通知请求,可以最大化作为总内容值和通知器注意函数的乘积的通知呈现,同时最小化通知器成本函数。因而,除了其他调度因素之外,应当利用未决通知请求来调度具有最高通知器注意函数和最低通知器成本函数的通知器。然而,如果其他未决通知请求存在,则调度模块170可以平衡仅基于所识别的通知请求来选择通知器和基于其他未决通知请求的需求来选择通知器的兴趣。
在块524(利用所识别的通知器调度所识别的通知请求),调度模块170可以被配置为利用所识别的通知器调度所识别的通知请求。这可以包括针对特定持续时间或直至用户响应于该通知来提供通知。由于调度模块170或平台应用102不知道用户是否将响应通知,可以定义提供通知的最大持续时间。
例如,当正接收来电呼叫时,调度模块170可以使显示屏提供具有呼叫方详情的视觉通知,使扬声器提供可听通知,并使振动通知器提供振动。这些通知器可以提供长达30秒的相应通知,但是一旦用户应答呼叫或忽略呼叫,便可以停止提供通知。用户可以可选地通过按压静音输入按键决定采取动作,使得扬声器和振动通知器停止提供通知,但是显示屏继续提供视觉通知。因而,调度模块170可以典型地在最大持续时间内调度通知器,但是如果用户在最大持续时间前采取动作,能够使该通知器可用。
在块526(响应于所识别的通知请求,经由所识别的通知器来提供通知),调度模块170可以被配置为响应于所识别的通知请求,经由所识别的通知器来提供通知。如上所述,可以提供通知,直至用户响应该通知。此外,可以根据调度模块170所建立的调度来提供通知,因而可以在特定持续时间之后停止提供通知。在一些示例实施例中,可以提供特定通知,直至用户响应该通知,或者直至利用正在使用的通知器调度具有比所执行的通知请求更高的内容时间值的另一通知请求。在块526之后,过程500可以重复(例如,周期性地,持续地,或按需地)或终止。
参照图6,将讨论这里所述的用于实现各个实施例的示例计算设备。计算设备110可以包括处理器11、存储器12和一个或多个驱动器13。驱动器13及其关联计算机存储介质可以提供计算机可读指令、数据结构、程序模块23和计算设备110的其他数据的存储。计算系统可以适于支持分配通知器以响应于通知请求来提供通知的实施例。例如,计算系统可以包括程序模块23,如先前在此描述的平台应用102。各个实施例可以包括计算机、专用硬件或嵌入式计算系统。
计算设备110可以实现为传统计算机系统、嵌入式控制计算机、膝上型电脑或服务器计算机、移动设备、机顶盒、信息亭、车载信息系统、移动电话、定制机、或一些其他硬件平台。处理器11可以是通用处理器、处理器内核、多处理器、多核处理器、图形处理器、数字信号处理(DSP)处理器、专用集成电路(ASIC)内实现的定制计算设备、现场可编程门阵列(FPGA)内实现的定制计算设备、在任意类型的可编程逻辑内实现的定制计算设备、状态机、可重配置处理器、任意其他处理单元、或其任意组合或多数个。处理器11可以支持这里所述的并行动态优化杠杆(1everaging)多核处理器。
驱动器13、其他存储设备或其关联计算机可读存储介质可以存储操作系统21、应用程序22和程序模块23。计算设备110可以包括用户通过其输入命令和数据的用户输入设备15。输入设备可以包括电子数字变换器、麦克风、键盘、指向设备或其任意组合。指向设备的示例可以包括鼠标、轨迹球、光笔、触摸屏或触摸板。计算设备110的其他输入设备可以包括操纵杆、游戏板、圆盘式卫星、扫描仪等。输入设备可以通过与系统总线耦接的用户输入接口与处理器11耦接。输入设备还可以通过其他接口和总线结构(如,并行端口、游戏端口或通用总线(USB))耦接。诸如计算设备110之类的计算机还可以包括其他外设输出设备,如扬声器、可以通过输出外设接口19或类似接口耦接的显示屏130A、扬声器130N和振动产生设备116。
计算设备110可以使用与一个或多个设备的逻辑连接,在连网环境中操作,所述一个或多个设备包括但不限于,移动设备、电视机、车载声音系统或与网络接口16耦接的远程计算机。远程计算机可以是个人计算机、服务器、路由器、网络PC、对等设备或其他普通网络节点。远程计算机可以包括这里所述的与计算设备110相关的许多或所有元件。连网环境可以包括网络(WAN)、局域网(LAN)、内联网、因特网或其组合。
当在LAN或无线LAN(WLAN)连网环境中使用时,计算设备110可以通过网络接口16或网络适配器与LAN耦接。当在WAN连网环境中使用时,计算设备110可以包括通过WAN建立通信的调制解调器或其他机制。WAN可以包括因特网、所示网络18、各种其他网络或其组合。应当理解,可以使用用于建立通信链路、环、网格、总线、云或计算机之间的网络的其他机制。
根据一个或多个实施例,计算设备110可以被配置为使得处理器11和/或程序模块23可以根据这里所述的各个实施例,分配通知器以响应于通知请求来提供通知。计算设备110可以包括物理计算机可读存储介质或与驱动器13相关的介质或其他存储设备的一个或多个实例。系统总线可以使处理器11能够从/向计算机可读存储介质读取代码和/或数据。介质可以表示使用任何适合的技术实现的存储元件形式的设备,包括但不限于,半导体、磁材料、光介质、电存储器、电气化学存储器或任意其他这样的存储技术。介质可以表示与存储器12相关联的组件,以RAM、ROM、闪存或其他类型的易失性或非易失性存储技术为特征。介质还可以表示次级存储器,实现为存储驱动器13等。硬驱动实施方式以固态为特征,或者可以包括存储磁编码信息的旋转介质。
存储介质可以包括用于分配通知器以响应于通知请求来提供通知的一个或多个模块23。程序模块23可以包括软件指令,当载入处理器11并被执行时,将通用计算系统变换为被定制以促进这里所公开的通知器分配技术的所有或一部分的专用计算系统。如在本说明书中详述地,程序模块23可以提供各种工具或技术,计算设备110可以使用这里所讨论的组件、逻辑流和/或数据结构,借助于该各种工具或技术参与整个系统或操作环境中。
可以由任意数量的晶体管或其他电路元件(可单独或共同采取任意数量的状态)来构造处理器11。更具体地,处理器11可以作为状态机或有限状态机操作。这种机器可以通过加载程序模块23内包含的可执行指令而变换为第二机器或特定机器。这些计算机可执行指令可以通过指定处理器11如何在各状态之间变换来变换处理器11,从而将构成处理器11的晶体管或其他电路元件从第一机器变换为第二机器,其中第二机器可以被特别配置为支持分配通知器以响应于通知请求来提供通知。还可以通过从一个或多个用户输入设备15、网络接口16、其他外设、其他接口或一个或多个用户或其他参与者接收输入,来变换任一机器状态。任一机器也可以变换状态、或者各种输出设备(如,打印机、扬声器、视频显示器等)的各种物理特性。
对程序模块23进行编码也可以变换存储介质的物理结构。在本文的不同实施方式中,物理结构的特定变换可以取决于各种因素。这些因素的示例可以包括但不限于:用于实现存储介质的技术、存储介质以初级存储器为特征还是以次级存储器为特征等。例如,如果存储介质实现为基于半导体的存储器,则程序模块23可以在在其中对软件进行编码时变换半导体存储器12的物理状态。例如,软件可以变换晶体管、电容器或构成半导体存储器12的其它分立电路元件的状态。
作为另一示例,可以使用诸如驱动器13之类的磁或光技术来实现存储介质。在这样的实施方式中,程序模块23可以在在其中对软件进行编码时变换磁或光介质的物理状态。这些变换可以包括改变给定磁介质内特定位置的磁特性。这些变换还可以包括改变给定光介质内的特定位置的物理特征或特性,以改变那些位置的光特性。应当理解,可以在不偏离本文的范围和精神的情况下做出物理介质的各种其他变换。
现在转向图7,图7示意性地示出了示例计算机程序产品700的部分视图,包括用于在计算设备上执行根据这里所述的至少一些实施例设置的计算机过程的计算机程序。示例计算机程序产品的示意性实施例使用信号承载介质702提供,并且可以包括以下704中的至少一个指令:一个或多个指令,用于接收请求提供通知的通知请求;一个或多个指令,用于通过计算设备发现能够响应于通知请求来提供通知的通知器;一个或多个指令,用于通过计算设备,利用所发现的通知器中的通知器来调度通知请求,以提供通知;或者一个或多个指令,用于通过计算设备,响应于通知请求,经由通知器来提供通知。一个或多个指令可以是例如计算机可执行和/或逻辑实现的指令。在一些实施例中,一个或多个计算机程序产品700的信号承载介质702包括计算机可读介质706、可记录介质708和/或通信介质710。
在一些实施方式中,信号承载介质702可以包括计算机可读介质706,例如但不限于,硬盘驱动、紧致盘(CD)、数字视频盘(DVD)、数字带、存储器等。在一些实施方式中,信号承载介质702可以包括可记录介质708,例如但不限于,存储器、读/写(R/W)CD、R/W DVD等。在一些实施方式中,信号承载介质702可以包括通信介质710,例如但不限于,数字和/或模拟通信介质(例如,光缆、波导、有线通信链路、无线通信链路等)。因此,例如,可以通过RF信号承载介质702将计算机程序产品700传送给所述系统的一个或多个模块,其中通过通信介质710的无线形式(例如,符合IEEE 802.11标准的无线通信介质)传送信号承载介质702。
本公开不局限于在该申请中描述的具体实施例的方面,这些方面意在作为各个方面的说明。如对于本领域普通技术人员清楚明白的,在不脱离本发明精神和范围的情况下可以进行许多改进和变化。除了这里所列举的之外,本领域普通技术人员根据前述描述对于本发明公开范围内的功能等效方法和设备是清楚明白的。这些改进和变化均落在所附权利要求的范围之内。本发明公开只受到所附权利要求以及这些权利要求所赋予的全部等效范围的限制。应该理解的是这种公开不是局限于具体的方法、组件、元件、设备或系统,而是当然可以变化。还应该理解的是这里使用的术语只是为了描述具体实施例的目的,而不是为了限制。
至于本文中任何关于多数和/或单数术语的使用,本领域技术人员可以从多数形式转换为单数形式,和/或从单数形式转换为多数形式,以适合具体环境和应用。为清楚起见,在此明确声明单数形式/多数形式可互换。
本领域技术人员应当理解,一般而言,所使用的术语,特别是所附权利要求中(例如,在所附权利要求的主体部分中)使用的术语,一般地应理解为“开放”术语(例如,术语“包括”应解释为“包括但不限于”,术语“具有”应解释为“至少具有”等)。
本领域技术人员还应理解,如果意在所引入的权利要求中标明具体数目,则这种意图将在该权利要求中明确指出,而在没有这种明确标明的情况下,则不存在这种意图。例如,为帮助理解,所附权利要求可能使用了引导短语“至少一个”和“一个或多个”来引入权利要求中的特征。然而,这种短语的使用不应被解释为暗示着由不定冠词“一”或“一个”引入的权利要求特征将包含该特征的任意特定权利要求限制为仅包含一个该特征的实施例,即便是该权利要求既包括引导短语“一个或多个”或“至少一个”又包括不定冠词如“一”或“一个”(例如,“一”和/或“一个”应当被解释为意指“至少一个”或“一个或多个”);在使用定冠词来引入权利要求中的特征时,同样如此。另外,即使明确指出了所引入权利要求特征的具体数目,本领域技术人员应认识到,这种列举应解释为意指至少是所列数目(例如,不存在其他修饰语的短语“两个特征”意指至少两个该特征,或者两个或更多该特征)。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。本领域技术人员还应理解,实质上任意表示两个或更多可选项目的转折连词和/或短语,无论是在说明书、权利要求书还是附图中,都应被理解为给出了包括这些项目之一、这些项目任一方、或两个项目的可能性。例如,短语“A或B”应当被理解为包括“A”或“B”、或“A和B”的可能性。
另外,在以马库什组描述本公开的特征或方案的情况下,本领域技术人员应认识到,本公开由此也是以该马库什组中的任意单独成员或成员子组来描述的。
本领域技术人员应当理解,出于任意和所有目的,例如为了提供书面说明,这里公开的所有范围也包含任意及全部可能的子范围及其子范围的组合。任意列出的范围可以被容易地看作充分描述且实现了将该范围至少进行二等分、三等分、四等分、五等分、十等分等。作为非限制性示例,在此所讨论的每一范围可以容易地分成下三分之一、中三分之一和上三分之一等。本领域技术人员应当理解,所有诸如“直至”、“至少”、“大于”、“小于”之类的语言包括所列数字,并且指代了随后可以如上所述被分成子范围的范围。最后,本领域技术人员应当理解,范围包括每一单独数字。因此,例如具有1~3个单元的组是指具有1、2或3个单元的组。类似地,具有1~5个单元的组是指具有1、2、3、4或5个单元的组,以此类推。
尽管已经在此公开了多个方案和实施例,但是本领域技术人员应当明白其他方案和实施例。这里所公开的多个方案和实施例是出于说明性的目的,而不是限制性的,本公开的真实范围和精神由所附权利要求表征。

Claims (25)

1.一种用于分配通知器的计算机实现的方法,包括:
通过具有处理器和存储器的计算设备,从应用接收请求提供通知的通知请求;
通过所述计算设备发现能够响应于所述通知请求来提供所述通知的通知器;
利用所发现的通知器中的通知器,通过所述计算设备调度所述通知请求,以提供所述通知;以及
响应于所述通知请求,通过所述计算设备经由所述通知器来提供所述通知。
2.根据权利要求1所述的计算机实现的方法,其中发现能够响应于所述通知请求来提供所述通知的通知器包括:发现与所述计算设备相关联的通知器和与同所述计算设备通信的远程设备相关联的通知器。
3.根据权利要求1所述的计算机实现的方法,其中发现能够响应于所述通知请求来提供所述通知的通知器包括:
识别与所述计算设备相关联的备选通知器;
一旦识别出与所述计算设备相关联的备选通知器,确定所述备选通知器是否可用于响应于所述通知请求来提供所述通知;
一旦确定所述备选通知器可用于响应于所述通知请求来提供所述通知,在可用通知器列表中添加所述备选通知器作为可用通知器;
监视所述可用通知器列表中的可用通知器的可用性;以及
更新所述可用通知器列表,以反映所述可用通知器列表中可用通知器的可用性的改变。
4.根据权利要求1所述的计算机实现的方法,其中接收请求提供通知的通知请求包括:从所述计算设备上操作的应用中接收所述通知请求。
5.根据权利要求1所述的计算机实现的方法,其中接收请求提供通知的通知请求包括:从与所述计算设备耦接的远程设备上操作的应用中接收所述通知请求。
6.根据权利要求1所述的计算机实现的方法,其中接收请求提供通知的通知请求包括:接收指示发布了所述通知请求的应用的应用标识符、期望提供所述通知的通知器的类型、或所述通知请求的优先级排序等级中的至少一个。
7.根据权利要求1所述的计算机实现的方法,还包括:
确定所述计算设备正在操作的功率模式;以及
其中利用所发现的通知器中的通知器调度所述通知请求以提供所述通知包括:
一旦确定所述计算设备正在操作的功率模式,从所发现的通知器中选择被配置为在所述计算设备正在操作的功率模式中响应于所述通知请求来提供所述通知的通知器;以及
利用所选通知器调度所述通知请求以提供所述通知。
8.根据权利要求1所述的计算机实现的方法,其中从与所述计算设备相关联的应用接收通知请求包括:
从发布了所述通知请求的应用接收被配置为提供特定类型的通知的通知器的类型;以及
其中利用所发现的通知器中的通知器调度所述通知请求以提供所述通知包括:
从所发现的通知器中选择被配置为响应于所述通知请求来提供所述特定类型的通知的通知器;以及
利用所选通知器调度所述通知请求以提供所述通知。
9.根据权利要求1所述的计算机实现的方法,其中利用所发现的通知器中的通知器调度所述通知请求以提供所述通知包括:
识别还未提供通知的未决通知请求;
一旦识别了未决通知请求,确定与每个未决通知请求相关联的优先级排序等级;以及
一旦确定了与每个未决通知请求相关联的优先级排序等级,根据每个未决通知请求的优先级排序等级,对未决通知请求进行优先级排序,使得在优先级排序等级较低的未决通知请求的通知之前提供优先级等级较高的未决通知请求的通知。
10.根据权利要求9所述的计算机实现的方法,其中确定与每个未决通知请求相关联的优先级排序等级包括:
识别发布了所述未决通知请求的应用;
确定所述应用的优先级等级;以及
向所述未决通知请求指派优先级排序等级,所述优先级排序等级对应于所述应用的优先级等级。
11.根据权利要求1所述的计算机实现的方法,还包括:
确定所述计算设备是否正在消混模式中操作;
一旦确定了所述计算设备正在消混模式中操作,确定所述通知请求的优先级排序等级;
确定所述通知请求的优先级排序等级是否高于阈值优先级排序等级;
一旦确定了所述通知请求的优先级排序等级高于阈值优先级排序等级,响应于所述通知请求来提供所述通知;以及
一旦确定了所述通知请求的优先级排序等级不高于阈值优先级排序等级,延迟响应于所述通知请求来提供所述通知,直至所述计算设备不再在消混模式中操作。
12.根据权利要求1所述的计算机实现的方法,其中响应于所述通知请求,经由所述通知器来提供所述通知包括:
确定所述计算设备是否正在所述计算设备被配置为响应于所述通知请求来提供所述通知的可用模式中操作;
一旦确定了所述计算设备正在可用模式中操作,响应于所述通知请求立即提供所述通知;
一旦确定了所述计算设备不在可用模式中操作,确定所述计算设备是否正在所述计算设备被配置为响应于选择性通知请求来提供通知的降低可用性模式中操作;
一旦确定了所述计算设备正在降低可用性模式中操作,确定所述通知请求的优先级排序等级;
确定所述通知请求的优先级排序等级是否高于阈值优先级排序等级;
一旦确定了所述通知请求的优先级排序等级高于阈值优先级排序等级,响应于所述通知请求立即提供所述通知;以及
一旦确定了所述通知请求的优先级排序等级不高于阈值优先级排序等级,在所述计算设备从操作于降低可用性模式变换到操作于可用模式时,响应于所述通知请求来提供所述通知。
13.根据权利要求1所述的计算机实现的方法,其中所述通知请求包括指示在一时段内通知内容的值的关联内容时间值函数和指示执行所述通知请求的成本的关联通知器成本函数;以及
其中利用所发现的通知器中的通知器调度所述通知请求以提供所述通知包括:根据所述关联内容时间值函数和所述关联通知器成本函数,利用所发现的通知器中的所述通知器调度所述通知请求以提供所述通知。
14.一种计算设备,包括:
处理器;
与处理器耦接的存储器;
被配置为提供通知的多个通知器;以及
来自所述存储器的平台应用,被配置为在所述处理器中执行,并在由所述处理器执行时,使所述处理器:
从在所述计算设备上操作的应用接收通知请求;
从所述多个通知器中发现被配置为响应于所述通知请求来提供所述通知的通知器;
利用所述多个通知器中的所述通知器来调度所述通知请求,以提供所述通知;以及
响应于所述通知请求,经由所述通知器来提供所述通知。
15.根据权利要求14所述的计算设备,其中所述通知器被配置为提供视觉通知、听觉通知或振动通知中的至少一个。
16.根据权利要求14所述的计算设备,其中所述通知器包括发光组件、图形图标、发声组件或振动产生组件中的至少一个。
17.根据权利要求14所述的计算设备,其中当从所述多个通知器中发现被配置为响应于所述通知请求来提供所述通知的通知器时,所述平台应用在由所述处理器执行时,还使所述处理器发现与所述计算设备相关联的通知器和与同所述计算设备通信的远程设备相关联的通知器。
18.根据权利要求14所述的计算设备,还包括被配置为在所述处理器提供所述通知时允许用户提供用户响应的用户输入组件。
19.根据权利要求14所述的计算设备,其中所述通知请求包括:指示发布了所述通知请求的应用的应用通知器、期望提供所述通知的通知器的类型、或所述通知请求的优先级排序等级中的至少一个。
20.根据权利要求14所述的计算设备,其中被配置为提供所述通知的所述多个通知器包括:
第一通知器,被配置为在由多于一个应用发布所述通知请求时提供所述通知;以及
第二通知器,被配置为在仅由一个应用发布所述通知请求时提供所述通知。
21.根据权利要求14所述的计算设备,其中当由所述处理器执行时,所述平台应用还使所述处理器以消混模式操作所述计算设备,使得响应于具有第一优先级排序等级的第一通知请求来提供第一通知,以及不响应于具有第二优先级排序等级的第二通知来提供第二通知。
22.一种在其上存储了计算机可执行指令的计算机可读存储介质,当由计算机执行时,所述计算机可执行指令使所述计算机:
通过具有处理器和存储器的计算设备,从应用接收请求提供通知的通知请求;
通过所述计算设备发现能够响应于所述通知请求来提供所述通知的通知器;
利用所发现的通知器中的通知器,通过所述计算设备调度所述通知请求,以提供所述通知;以及
响应于所述通知请求,通过所述计算设备经由所述通知器来提供所述通知。
23.根据权利要求22所述的计算机可读存储介质,在其上存储了其他计算机可执行指令,当由所述计算机执行时,所述其他计算机可执行指令使所述计算机:
确定远程设备是否能够与所述计算机通信;
当所述远程设备被确定为能够与所述计算机通信时,在所述计算机和所述远程设备之间建立通信;
在所述远程设备上发现能够响应于所述通知请求来提供所述通知的通知器;以及
当所述远程设备被确定为能够响应于所述通知请求来提供所述通知时,利用所述远程设备上的通知器调度所述通知请求以提供所述通知。
24.根据权利要求23所述的计算机可读存储介质,其中为了接收请求提供通知的通知请求,当由所述计算机执行时,所述计算机可读存储介质还使所述计算机接收请求利用特定类型的通知器来提供所述通知的请求;以及
其中所述计算机可读存储介质上存储了其他计算机可执行指令,在所述其他计算机可执行指令由所述计算机执行时,使所述计算机:
当接收到请求利用特定类型的通知器来提供所述通知的请求时,发现能够提供所述通知的特定通知器类型的通知器;
当发现特定通知器类型的通知器时,利用特定类型的通知器调度所述通知请求;以及
响应于所述通知请求,经由特定类型的通知器来提供所述通知。
25.根据权利要求22所述的计算机可读存储介质,在其上存储了其他计算机可执行指令,当由所述计算机执行时,所述其他计算机可执行指令使所述计算机:
当提供通知时,接收用户响应;以及
当接收到所述用户响应时,停止提供所述通知器。
CN201080069564.0A 2010-11-15 2010-11-15 自动通知器分配 Expired - Fee Related CN103155510B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2010/056661 WO2012067600A1 (en) 2010-11-15 2010-11-15 Automatic annunciator allocation

Publications (2)

Publication Number Publication Date
CN103155510A true CN103155510A (zh) 2013-06-12
CN103155510B CN103155510B (zh) 2016-08-24

Family

ID=46048206

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080069564.0A Expired - Fee Related CN103155510B (zh) 2010-11-15 2010-11-15 自动通知器分配

Country Status (4)

Country Link
US (1) US8683493B2 (zh)
KR (1) KR101431398B1 (zh)
CN (1) CN103155510B (zh)
WO (1) WO2012067600A1 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104853037A (zh) * 2015-04-23 2015-08-19 惠州Tcl移动通信有限公司 基于智能终端智能显示用户重要信息的穿戴设备及方法
US9591120B2 (en) 2014-08-15 2017-03-07 Xiaomi Inc. Method and device for adding application badge
CN106663243A (zh) * 2014-07-30 2017-05-10 微软技术许可有限责任公司 屏幕上的自适应通知
CN106716468A (zh) * 2014-07-29 2017-05-24 电子湾有限公司 基于用户活动数据提供通知
CN108600911A (zh) * 2018-03-30 2018-09-28 联想(北京)有限公司 一种输出方法及电子设备
CN110166627A (zh) * 2014-05-23 2019-08-23 三星电子株式会社 用于提供通知的方法和设备
US11445475B2 (en) 2014-05-23 2022-09-13 Samsung Electronics Co., Ltd. Method and apparatus for providing notification

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7592912B2 (en) 2005-12-09 2009-09-22 Time Warner Cable Inc. Emergency alert data delivery apparatus and methods
US8095610B2 (en) 2008-03-28 2012-01-10 Time Warner Cable Inc. Methods and apparatus for centralized and decentralized emergency alert messaging
US8751615B2 (en) 2012-07-18 2014-06-10 Accedian Networks Inc. Systems and methods of discovering and controlling devices without explicit addressing
CN103139377A (zh) * 2012-12-26 2013-06-05 广东欧珀移动通信有限公司 用于移动通信终端的应用的消息预览方法及消息预览装置
US9472091B2 (en) 2013-10-21 2016-10-18 Time Warner Cable Enterprises Llc Systems and methods for providing emergency alerts
US20160117202A1 (en) * 2014-10-28 2016-04-28 Kamal Zamer Prioritizing software applications to manage alerts
US10086949B2 (en) * 2017-02-27 2018-10-02 Honeywell International Inc. Systems and methods for selective annunciation
US10966073B2 (en) 2017-11-22 2021-03-30 Charter Communications Operating, Llc Apparatus and methods for premises device existence and capability determination
US11374779B2 (en) 2019-06-30 2022-06-28 Charter Communications Operating, Llc Wireless enabled distributed data apparatus and methods
US11182222B2 (en) 2019-07-26 2021-11-23 Charter Communications Operating, Llc Methods and apparatus for multi-processor device software development and operation

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020137552A1 (en) * 2001-03-20 2002-09-26 Cannon Joseph M. Indication unit for a portable wireless device
CN101009887A (zh) * 2006-12-26 2007-08-01 华为技术有限公司 移动终端及其通信事件提示方法
CN101072199A (zh) * 2006-05-12 2007-11-14 日本电气株式会社 移动通信系统、移动终端、邮件服务器和邮件接收方法
US7448048B1 (en) * 2003-05-27 2008-11-04 International Business Machines Corporation Method for performing real-time analytics using a business rules engine on real-time heterogeneous materialized data views
US20100056112A1 (en) * 2008-08-29 2010-03-04 Alcatel-Lucent via the Electronic Patent Assignemt System (EPAS) Method and system for automatically managing notifications in heterogenous formats

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5860124A (en) * 1996-09-30 1999-01-12 Intel Corporation Method for performing a continuous over-write of a file in nonvolatile memory
US20020120702A1 (en) 2001-02-26 2002-08-29 Schiavone Vincent J. Method and apparatus for dynamic prioritization of electronic mail messages
US7119675B2 (en) * 2004-01-27 2006-10-10 Matsushita Electric Industrial Co., Ltd. Emergency alert service
US8111814B2 (en) 2006-03-20 2012-02-07 Microsoft Corporation Extensible alert types
KR101145923B1 (ko) * 2006-07-11 2012-05-15 엘지전자 주식회사 이동통신단말기의 스케쥴 관리 방법 및 이를 수행하기 위한이동통신단말기
US7982598B2 (en) * 2007-02-06 2011-07-19 Access Co., Ltd. Method for integrating user notifications and user alerts on an electronic device
US7774105B2 (en) 2007-10-29 2010-08-10 The Boeing Company System and method for aircraft interior annunciator
US20090197582A1 (en) * 2008-02-01 2009-08-06 Lewis Robert C Platform for mobile advertising and microtargeting of promotions
US8438268B2 (en) 2008-04-23 2013-05-07 Ca, Inc. Method and apparatus for alert prioritization on high value end points

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020137552A1 (en) * 2001-03-20 2002-09-26 Cannon Joseph M. Indication unit for a portable wireless device
US7448048B1 (en) * 2003-05-27 2008-11-04 International Business Machines Corporation Method for performing real-time analytics using a business rules engine on real-time heterogeneous materialized data views
CN101072199A (zh) * 2006-05-12 2007-11-14 日本电气株式会社 移动通信系统、移动终端、邮件服务器和邮件接收方法
CN101009887A (zh) * 2006-12-26 2007-08-01 华为技术有限公司 移动终端及其通信事件提示方法
US20100056112A1 (en) * 2008-08-29 2010-03-04 Alcatel-Lucent via the Electronic Patent Assignemt System (EPAS) Method and system for automatically managing notifications in heterogenous formats

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110166627A (zh) * 2014-05-23 2019-08-23 三星电子株式会社 用于提供通知的方法和设备
US12035277B2 (en) 2014-05-23 2024-07-09 Samsung Electronics Co., Ltd. Method and apparatus for providing notification
US11445475B2 (en) 2014-05-23 2022-09-13 Samsung Electronics Co., Ltd. Method and apparatus for providing notification
US11057866B2 (en) 2014-05-23 2021-07-06 Samsung Electronics Co., Ltd. Method and apparatus for providing notification
CN110166627B (zh) * 2014-05-23 2021-03-12 三星电子株式会社 用于提供通知的方法和设备
CN106716468A (zh) * 2014-07-29 2017-05-24 电子湾有限公司 基于用户活动数据提供通知
CN106663243A (zh) * 2014-07-30 2017-05-10 微软技术许可有限责任公司 屏幕上的自适应通知
US9591120B2 (en) 2014-08-15 2017-03-07 Xiaomi Inc. Method and device for adding application badge
CN104853037A (zh) * 2015-04-23 2015-08-19 惠州Tcl移动通信有限公司 基于智能终端智能显示用户重要信息的穿戴设备及方法
CN108600911A (zh) * 2018-03-30 2018-09-28 联想(北京)有限公司 一种输出方法及电子设备
CN108600911B (zh) * 2018-03-30 2021-05-18 联想(北京)有限公司 一种输出方法及电子设备
US11373643B2 (en) 2018-03-30 2022-06-28 Lenovo (Beijing) Co., Ltd. Output method and electronic device for reply information and supplemental information
US11900925B2 (en) 2018-03-30 2024-02-13 Lenovo (Beijing) Co., Ltd. Output method and electronic device

Also Published As

Publication number Publication date
CN103155510B (zh) 2016-08-24
KR20130033443A (ko) 2013-04-03
US8683493B2 (en) 2014-03-25
US20120122428A1 (en) 2012-05-17
WO2012067600A1 (en) 2012-05-24
KR101431398B1 (ko) 2014-08-19

Similar Documents

Publication Publication Date Title
CN103155510B (zh) 自动通知器分配
US12483611B2 (en) Alarms for a system of smart media playback devices
US10871872B2 (en) Intelligent productivity monitoring with a digital assistant
CN104584488B (zh) 一种输出场境通知的方法和计算装置
US8615221B1 (en) System and method for selection of notification techniques in an electronic device
US8700102B2 (en) Handheld electronic device using status awareness
US7433714B2 (en) Alert mechanism interface
US20140006769A1 (en) Device optimization modes
JP6022647B2 (ja) アプリケーション特有のリソース管理
CN110603552A (zh) 在促成现有会话时对推荐动作配置的虚拟助理
CN1551011A (zh) 用于指导警告定时的有限延迟策略,使用本地传感器信息的交互和通信
US20140025758A1 (en) System and Method for Delivering Alerts
KR102089459B1 (ko) 무선 통신에 기반한 데이터 송수신 방법 및 장치
US11611844B2 (en) Systems and methods for users to receive and/or reply to information affiliated with communication attempts while remaining substantially disconnected from mobile electronic device(s) and/or networks
JP2014029676A (ja) 通知に応答するためのコンテキストベースのオプションの発生
CN115733703B (zh) 一种多设备同步播放方法及装置
CN113885827A (zh) 音频播放方法、装置、电子设备、计算机可读介质及产品
US8812603B2 (en) Method, system and apparatus for processing calendar events
KR102368456B1 (ko) 피어 기반 장치 집합 동작
CN104144386B (zh) 信息交互与协作的方法及设备
CN118034073A (zh) 一种智慧场景的处理方法及电子设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160824

Termination date: 20191115

CF01 Termination of patent right due to non-payment of annual fee