CN104508652B - 用于装置配置值的自动修改的系统和方法 - Google Patents
用于装置配置值的自动修改的系统和方法 Download PDFInfo
- Publication number
- CN104508652B CN104508652B CN201380040185.2A CN201380040185A CN104508652B CN 104508652 B CN104508652 B CN 104508652B CN 201380040185 A CN201380040185 A CN 201380040185A CN 104508652 B CN104508652 B CN 104508652B
- Authority
- CN
- China
- Prior art keywords
- computing device
- state
- configuration values
- message
- computing
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/303—Terminal profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/029—Location-based management or tracking services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/20—Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/22—Processing or transfer of terminal data, e.g. status or physical capabilities
- H04W8/24—Transfer of terminal data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/025—Services making use of location information using location based information parameters
- H04W4/026—Services making use of location information using location based information parameters using orientation information, e.g. compass
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Information Transfer Between Computers (AREA)
- Telephonic Communication Services (AREA)
- Telephone Function (AREA)
Abstract
实现方式可以包括:自动发起远程计算装置的一个或多个配置值的修改,该配置值确定如何从远程计算装置发送状态消息。可以在消息传送服务器的提示下或者替选地由计算装置自主地发送状态消息。该状态消息可以指示计算装置的状态,例如“唤醒”、“活动”、“空闲”等中的一个或多个、当前电池水平、计算装置是否被充分充电或被插入外部电源内、无线电是否当前活动、当前位置、计算装置在其上使用的网络的类型(例如,Wi‑Fi、3G、3G)。对配置值的修改可以除了别的之外基于位置、用户行为或装置使用模式,因此使得能够基于修改的配置来有效地调度推送通知传递。
Description
对相关申请的交叉引用
本申请要求在2012年6月28日提交的美国临时专利申请No.61/665,874的在35U.S.C.§119(e)下的优先权和权益,其整体内容和主旨通过引用被包含在此,就像在下面完全给出那样。
背景技术
推送通知服务广泛用于向包括移动装置的各种计算装置发送消息。例如,可以从消息服务器向用户的移动装置发送推送服务,以向用户通知新的电子邮件消息的接收。推送服务可以通过下述方式来减少移动装置的所需工作:减轻移动装置的连续查看来自远程服务器的新的电子邮件或其他新的消息的需要。
推送消息的下侧是移动装置必须唤醒、即被通电以便接收新的消息。而且,通过传递自发的消息,消息服务器可以重复地唤醒装置,因此消耗该装置的电池电力。另外,通过向未主动使用的装置发送消息,消息服务器可能不必要地使得它们超负荷。因此,推送消息可能仍然导致向移动装置的消息的低效传递,特别是当消息服务器不知道或未跟上移动装置的当前状态。
发明内容
可以通过所公开的技术的某些实现方式来处理上面的需要的一些或全部。某些实现方式可以包括自动发起远程计算装置的一个或多个配置值的修改,该配置值确定如何从远程计算装置发送状态消息。在各个实现方式中,对于配置值的修改可以基于除了别的之外的位置、用户行为或装置使用模式,因此使得能够基于修改的配置来有效调度推送通知传递。
根据一个示例实现方式,提供了一种方法。所述方法可以包括:在消息服务器或其他计算系统处接收第一状态更新,所述第一状态更新指示第一计算装置的行为状态,并且基于所述第一状态更新来发起对所述第一计算装置的一个或多个配置值的修改,所述配置值确定所述第一计算装置如何发送状态更新。所述方法可以进一步包括:在所述计算系统处接收指向所述第一计算装置的第一消息;在所述计算系统处接收指示所述第一计算装置的行为状态的第二状态更新,所述第二状态更新基于所述第一计算装置的所述修改的配置值;以及响应于接收所述第二状态更新向所述第一计算装置发送所述第一消息。
根据另一个示例实现方式,提供了一种系统。所述系统可以包括:与第一计算装置进行通信的消息服务器或其他计算系统、可操作地耦合到所述计算系统的至少一个处理器以及可操作地耦合到所述至少一个处理器并被配置为存储数据和指令的至少一个存储器。当被所述至少一个处理器执行时,所述数据和指令可以使得所述系统:在所述计算系统处从所述第一计算装置接收第一状态更新,所述第一状态更新指示所述第一计算装置的行为状态;并且向所述第一计算装置发送在所述第一计算装置处调整一个或多个配置值的指令。所述系统可以进一步被使得:在所述计算系统处接收指向所述第一计算装置的第一消息;在所述计算系统处从所述第一计算装置接收第二状态更新,基于在所述第一计算装置处的所述调整的配置值来发送所述第二状态更新;以及基于所述第二状态更新来确定用于将所述第一消息向所述第一计算装置传递的时间。所述系统可以被进一步使得响应于所述确定的时间出现而向所述第一计算装置发送所述第一消息。
根据另一个示例实现方式,提供了一种计算机程序产品。所述计算机程序产品可以包括非瞬时计算机可读介质,所述非瞬时计算机可读介质存储由一个或多个处理器可执行来执行一种方法的指令。所述方法可以包括:在消息服务器或其他计算系统处接收指向多个计算装置的多个消息,所述多个计算装置包括第一计算装置,并且将第一消息识别为指向所述第一计算装置。所述方法可以进一步包括:在所述计算系统处接收第一状态更新,所述第一状态更新指示所述第一计算装置的行为状态,并且至少基于所述第一状态更新来提示所述第一计算装置在所述第一计算装置处设置一个或多个配置值,所述配置值确定所述第一计算装置何时发送状态更新。所述方法可以进一步包括:在所述计算系统处接收指示所述第一计算装置的行为状态的第二状态更新,所述第二状态更新基于所述设置的配置值而被发送,以及响应于接收到所述第二状态更新向所述第一计算装置发送所述第一消息。
所公开的技术的其他实现方式、特征和方面在此被详细说明,并且被看作所要求保护的公开技术的一部分。可以参考下面的详细说明、附图和权利要求来明白其他实现方式、特征和方面。
附图说明
现在参考附图和流程图,它们不必然是按照比例绘制的,并且其中:
图1是根据一个示例实现方式的说明性消息系统的框图。
图2是根据一个示例实现方式的向计算装置传递消息的流程图。
图3是根据一个实现方式的消息服务器的架构的图。
具体实施方式
以下参考附图更全面地描述所公开的技术的一些实现方式。然而,本公开的技术可以以许多不同的形式被体现,并且不应当被解释为限于在此给出的实现方式。
在下面的说明中,给出了多个具体细节。然而,应当明白,可以在没有这些具体细节的情况下实践所公开的技术的实现方式。在其他情况下,未详细示出公知方法、结构和技术,以便不混淆本说明书的理解。对于“一个实现方式”“实现方式”、“示例实现方式”、“各种实现方式”等的引用指示如此描述的所公开的技术的一个或多个实现方式可以包括特定特征、结构或特性,但是不是每一个实现方式必然包括该特定特征、结构或特性。而且,短语“在一个实现方式”的重复使用不必然指的是同一实现方式,虽然可以是。
贯穿说明书和权利要求,下面的术语至少采用在此明确地相关联的含义,除非上下文清楚地另外指示。词语“或”意图表示包含性的“或”。而且,词语“一个”和“该”意图表示一个或多个,除非另外指示或从上下文清楚地涉及单数形式。
可以使用标准编程或工程技术来实现在此所述的各个方面,以产生软件、固件、硬件或其任何组合以控制计算装置实现所公开的主题。计算机可读介质可以包括例如:磁存储装置,诸如硬盘、软盘或磁条;光盘,诸如致密盘(CD)或数字通用盘(DVD);智能卡;以及快闪存储器装置,诸如卡、棒或钥匙驱动器。另外,应当明白,载波可以用于承载计算机可读电子数据,包括在发送和接收诸如电子邮件(e-mail)的电子数据中或者在访问诸如因特网或局域网(LAN)的计算机网络中使用的那些。当然,本领域内的普通技术人员可以认识到,在不偏离所要求保护主题的范围或精神的情况下,可以对于该配置进行许多修改。
如在此使用,除非另外指定,用于描述普通物体的顺序形容词“第一”、“第二”、“第三”等的使用仅指示相似物体的不同实例被引用,并且不意图暗示如此描述的物体必须暂时地、空间地、排名上或以任何其他方式具有给定的顺序。
许多移动装置当前使用推送消息来接收数据。推送消息是在未提示的情况下或者移动装置未首先必须查看消息的情况下被发送到移动装置的数据。消息可以被从例如远离移动装置的应用服务器引导到该移动装置。在一些情况下,该消息可以被从应用服务器发送到消息服务器,消息服务器可以管理用于从多个源接收推送消息的多个移动装置的消息传递。
在传统消息传送系统中,响应于在消息服务器处接收消息而从消息服务器向接收方移动装置发送推送消息。这一般没有有意地延迟地出现。结果,移动装置有效地接收指向它们的消息,而不必提示消息服务器确定信息是否在等待。
推送消息的下侧是移动装置必须唤醒,即被通电,以便接收新的消息。而且,通过传递自发的消息,消息服务器可以重复地唤醒装置,因此消耗该装置的电池电力。另外,通过向未主动使用的装置发送消息,消息服务器可能不必要地使得它们超负荷。因此,推送消息可能仍然导致向移动装置的消息的低效传递,特别是当消息服务器不知道或未跟上移动装置的当前状态。
在所公开的技术的一些实现方式中,可以基于从移动装置发送并且在消息服务器处接收的状态消息来确定用于接收推送通知的移动装置的准备就绪。然而,所接收的状态消息可能未精确地指示移动装置的当前状态。而且,状态消息可以关于移动装置或移动装置的用户接收推送通知的准备就绪误导消息服务器。例如,如果特定移动装置的屏幕经常被接通不超过30-60秒并且然后再一次被关闭,则它可以有益于移动装置在那个时间段期间不向消息服务器300通知移动装置空闲(即,准备好接收推送通知)。
因此,所公开的技术的某些实现方式可以自动发起对远程计算装置的一个或多个配置值的修改,该配置值确定如何从远程计算装置发送状态消息。在各个实现方式中,对配置值的修改可以除了别的之外基于位置、用户行为或装置使用模式,因此使得能够基于修改的配置来有效地调度推送通知传递。
现在参见附图,其中,相似的附图标号贯穿视图表示相似的部分,将详细描述消息系统和方法的各个实现方式。
图1是根据所公开的技术的说明性消息传送系统100的框图。可以在与一个或多个应用服务器101进行通信的消息传送服务器300中整体或部分地包含消息传送系统100。消息传送服务器300可以是或包括计算系统,诸如在图3中所示的。
消息传送服务器300可以从应用服务器101接收消息,并且可以通过推送消息向诸如移动装置或台式或膝上型计算机的计算装置104发送所接收的消息。可以明白,存在可以与所公开的技术相结合地使用的多类计算装置104。例如,移动装置104可以包括但不限于便携式计算机、平板计算机、因特网平板计算机、个人数字助理、超级移动个人计算机和智能电话。
应用服务器101可以是支持在计算装置104上安装或运行的应用的服务器。偶尔地,应用服务器101可以向计算装置104发送数据消息以在计算装置104上的对应的应用中使用。可以明白,消息不必是电子邮件或文本消息,而是可以替选地是作为从远程装置的发送向移动装置传递的各种类型的数据。例如,而不是限制性地,应用服务器101可以与天气应用相关联,并且可以向计算装置104发送天气更新。又如,该应用服务器可以与电子邮件应用相关联,并且可以向计算装置104发送电子邮件消息。来自应用服务器101的消息可以通过消息传送服务器300被传递,消息传送服务器300可以根据所公开的技术来管理传递,如下进一步所述。
消息传送服务器300可以以各种方式与计算装置104进行通信。例如,消息传送服务器300可以通过Wi-Fi信道或另一个因特网连接108与计算装置110进行通信,并且可以利用网络106来与计算装置104进行通信。又如,消息传送服务器300可以通过诸如蜂窝服务提供商或支持计算装置的另一个网络提供商的服务提供商114向计算装置104进行通信。服务提供商114可以通过蜂窝无线电信道112来提供蜂窝服务,以与计算装置104进行通信。在那种情况下,消息传送服务器300可以通过服务提供商114向计算装置104传送或发送消息。
消息传送服务器300可以与属于多个用户的多个计算装置104进行通信。而且,消息传送服务器300可以接收用于各个计算装置104的多个消息。消息传送服务器300可以分类所接收的消息,并且将每一个消息与其预期的接收方计算装置104相关联。然而,替代在接收时立即向接收方计算装置104传递所有的消息,消息传送服务器300可以将用于每一个计算装置104的消息成批化。
消息传送服务器104可以通过下述方式确定何时向其对应的接收方计算装置104发送一批消息:应用可以在规则数据库305中存储的一组一个或多个传递规则,如图1中所示。该传递规则可以被设计来当确定何时传递消息时考虑装置行为、位置或用户行为。可以明白,规则数据库不必是关系数据库,但是可以替代地使用由消息传送服务器300可访问的数据组织的各种方法。
在一个示例实现方式中,消息传送服务器300可以访问与计算装置104相关的状态信息。计算装置104可以向消息传送服务器300发送关于其当前状态的信息。可以在消息传送服务器300的提示下或替选地通过计算装置104自主地发送该信息。例如而不是限制地,计算装置104可以向消息传送服务器300发送关于其当前电池水平的信息、计算装置104是否被充分充电或被插入外部电源内、无线电当前是否活动、当前位置、计算装置104在其上使用的网络的类型(例如,Wi-Fi、3G、3G)、它是否被解锁或当前在使用中或它是否变得在使用中。
关于计算装置的状态的一些信息可能对于特定计算装置104不唯一,并且消息传送服务器300可以从其他源或通过保留关于计算装置104的过去数据来访问那个类型的信息。例如而不是限制地,消息传送服务器300也可以具有关于当前日期、日时和所讨论的计算装置104的过去使用模式以及在该计算装置104的局域中的其他计算装置104的信息。
计算装置的状态可以至少部分地基于那个计算装置的各种配置值。该配置值可以确定例如什么情况导致该装置被看作空闲(即,“空闲”的定义)、什么情况导致装置被看作唤醒(即,“唤醒”的定义)或什么情况导致装置被另外看作不可获得(即,“不可获得”的定义)。这些配置值可以在一些实现方式中内在不同的计算装置104之间不同。该配置值可以在限定计算装置104的当前状态中扮演角色。
消息传送服务器300可以基于装置位置、用户行为、装置使用方案或这些的组合来自动地修改计算装置104的配置值或发起对计算装置104的配置值的修改。在一些实现方式中,这样的修改可以被设计来例如通过下述方式优化消息传递或改善消息传递的一些方面:保存计算装置104的电池电力,或者减少在消息传送服务器300上的业务。在一些实现方式中,计算装置104可以初始地具有一组默认配置值,但是这些值可以基于消息传送服务器300的指导而改变。
消息传送服务器300可以使用包括用户行为或使用历史的计算装置的状态信息来确定是否应当修改计算装置104的一个或多个配置值。例如而不是限制地,如果经常将特定计算装置104的屏幕接通不超过30-60秒并且然后再一次关闭,则可能有益的是,计算装置104不向消息传送服务器300通知它在那个时间段期间空闲。空闲的计算装置104可以发起从消息传送服务器300的消息传递。然而,如果计算装置104的屏幕被立即关闭,则新的消息对于计算装置104可能没有什么用,因此将计算装置104置于不使用。
因此,如果计算装置104已经频繁地或近期体验了屏幕接通并且随后在预定时间段内接着屏幕关闭,则可能期望计算装置104延迟向消息传送服务器300通知它空闲。在那种情况下延迟空闲指示可以减少消息传送服务器300的工作负荷。因此,如果消息传送服务器300基于计算装置的过去或当前状态确定计算装置104在体验或已经体验了屏幕接通并且很快地接着屏幕关闭,则消息传送服务器300可以引导计算装置104修改一个或多个配置值,以重新限定导致空闲通知的情况。例如而不是限制地,替代一旦屏幕被接通则计算装置104将其本身看作空闲,它可以被引导为仅在诸如二分钟的预定时间段已经随着屏幕保持接通而过去后将其本身看作空闲。在来自消息传送服务器300的指导时,计算装置104可以修改或调整所引导的配置值。
又如,如果计算装置的屏幕经常被关闭延长的时间段,则可以有益的是,计算装置104立即或仅在短的时间段后向消息传送服务器300通知它空闲。在这个示例中,可以假设,当屏幕被关闭时它将被关闭长时间,因此可能期望当接通屏幕时立即发送消息,以避免必须在服务器处对于消息保持接通不必要的长时间。在那种情况下,消息传送服务器300可以引导计算装置修改其配置值,以将空闲限定为要求诸如30秒的短的屏幕接通时间。
“唤醒”可以一般是何时将计算装置通电,即不处于待机或休眠模式并且不被关断中。当唤醒时,计算装置104可以或可以不空闲;空闲可以指示计算装置104唤醒但是不在主动使用中。在一些实现方式中,计算装置的配置值也可以包括指示何时计算装置104将其本身看作唤醒的一个或多个值。例如而不是限制地,可以根据配置值将唤醒定义为下面中的一个:屏幕接通,而无论计算装置104是否被锁定;屏幕接通并且计算装置104被解锁;或者屏幕接通并且计算装置104已经被解锁预定时间段。基于关于计算装置104的状态信息,可能包括用户行为或使用历史,消息传送服务器300可以确定应当改变与“唤醒”的定义相关的一个或多个配置值。消息传送服务器300可以然后引导计算装置104修改或调整一个或多个配置值以导致期望的新值。
对于每一个计算装置104,消息传送服务器300可以基于向那个计算装置的当前状态应用在规则数据库305中的传递规则而确定何时发送指向那个计算装置104的消息,其中,当前状态可以至少部分地取决于计算装置104的配置规则。因此,计算装置的配置值的修改可能影响消息传递的定时。
该传递规则可以被单独地应用到每一个计算装置104,或者被应用到认为在状态上类似的多组计算装置104。在一些实现方式中,可以诸如由系统管理者预先提供传递规则,但是在其他实现方式中,可以基于与一个或多个规则被应用到的计算装置104的使用历史相关的历史数据来动态地产生或修改该一个或多个规则。规则可以被应用到单个计算装置104或两个或许多计算装置104,使得每一个计算装置104可以在一些实现方式中与其本身的对应的一组规则相关联。
在所公开的技术的一些实现方式中,用于计算装置104的传递规则可以考虑与在计算装置104的地理位置或预定范围内的多个其他计算装置相关的状态信息。各种计算装置104可以向消息传送服务器300提供它们的状态。因此,消息传送服务器可以确定在计算装置104的某个地理位置或围绕计算装置104的预定范围内的活动计算装置104的数量或密度。该数量或密度可以被看作当应用传递规则时的计算装置的状态的一部分。例如而不是限制地,传递规则可以指示当计算装置在拥塞区域中时要保持而不是立即传递消息。在一些实现方式中,消息传送服务器300可以延迟向在拥塞区域内的一些计算装置104而不是其他计算装置104的消息。替选地,消息传送服务器104可以以交错方式向在拥塞区域内的计算装置104提供消息,使得不是同时地发送到所有计算装置104的所有的消息。向在小区域内的许多计算装置104的消息的传递可能使得消息传送服务器300负担过度。因此,这样的延迟或交错可以使得消息传送服务器300能够在没有不合理的工作负载的情况下继续平滑地运行。
例如而不是限制地,在规则数据库305中的与特定计算装置104相关联的传递规则可以包括下述中的一个或多个:(1)如果计算装置104在拥塞区域内则保持消息;(2)如果计算装置104唤醒并且空闲,则立即传递消息;以及(3)如果计算装置唤醒,则传递消息。这些示例规则可以用于将电池使用与快速消息传递平衡,同时通过延迟到在同一拥塞区域内的大组的人们的消息而限制对于本地消息传送服务器300的影响。然而,可以明白,可以在所公开的技术的一些实现方式中使用其他或另外的传递规则。例如而不是限制地,传递规则可以基于位置、日时或过去的使用模式。
图2是根据所公开的技术的实现方式的、向计算装置104传递消息的方法的流程图。如所示,在210处,接收关于计算装置104的状态的信息。在220处,消息传送服务器300至少部分地基于计算装置104的状态来确定是否应当更新计算装置的配置值。如果消息传送服务器400确定应当更新配置值,则在230处,消息传送服务器300引导计算装置104更新其配置值。行为210、220和230可以重复地出现,以将消息传送服务器400保持为关于计算装置的状态更新,并且将计算装置的配置值保持在期望值。在240处,消息传送服务器400接收用于移动计算装置的一个或多个消息。在250处,基于一个或多个传递规则的应用,消息传送服务器确定是否传递消息或将它们暂时保持。传递规则应用的结果可以取决于计算装置的当前状态和配置值。可以明白,在图2中所示的各个步骤仅是说明性的,并且可以去除步骤,可以使用其他步骤,或者可以修改步骤的顺序。另外,可以明白,可以重复地执行图2的各个行为,以优化或改善消息传递。
在所公开的技术的一些替选实现方式中,计算装置104可以本地确定何时检索被引导到其的消息的全部内容。换句话说,消息传送服务器300可以向计算装置104通知一个或多个消息可用于计算装置104并且被保持在消息传送服务器或相应的应用服务器101处。可以以与如上所述的何时要传递消息的确定相同的方式或类似的方式来确定通知的传递。例如,消息传送服务器300可以向计算装置的状态应用一个或多个传递规则,以确定何时发送通知,并且计算装置的状态可以至少部分地基于其配置值。
另外地或替选地,消息传送服务器300可以检测计算装置104在已经被断开连接(例如,关闭或不在服务区域)后何时重新连接到消息传送服务器104。如果在断开连接的时间段期间在消息传送服务器300处接收到消息,则消息传送服务器300可以在重新连接后向计算装置104发送等待消息的通知。
在计算装置104处接收到通知后,计算装置可以确定何时提示整个消息内容的传递。该确定可以基于各种因素。
计算装置104可以本地地存储确定它何时提示消息传送服务器300传递其消息的一个或多个传递规则。这些规则可能类似于可以在规则数据库305中存储的传递规则。例如而不是限制地,传递规则可以包括下面中的一个或多个:(1)如果计算装置104在拥塞区域内,则不请求消息;(2)如果计算装置104唤醒并且空闲,则请求消息;(3)如果计算装置在拥塞位置中则不请求消息;以及(4)如果计算装置唤醒,则请求消息。如上所述,计算装置104的当前配置值可能与这些或其他规则的应用相关。可以明白,可以在所公开的技术的一些实现方式中使用其他或另外的传递规则。例如而不是限制地,传递规则可以基于位置、日时或过去的使用模式。
可以在非瞬时计算机可读介质中包含消息传送服务器100和方法的各个实现方式以由计算机处理器执行。图3是在符合所公开的技术的实现方式中的消息传送服务器300的示例架构的图。如所示,消息传送服务器300可以包括总线310、处理器320、主存储器330、只读存储器(ROM)340、存储装置350、一个或多个输入装置360、一个或多个输出装置370和通信接口380。总线310可以包括允许在消息传送服务器300的组件之间的通信的一个或多个导体。
处理器320可以是一个或多个常规处理器或微处理器,其解释和执行指令,诸如用于提供所公开的技术的方面的指令。主存储器330可以包括随机存取存储器(RAM)或另一个动态存储装置,其存储信息和被处理器320执行的指令。ROM 340可以包括常规ROM装置或另一种类型的静态存储装置,其存储由处理器320使用的静态信息或指令。存储装置350可以包括磁或光记录介质和其对应的驱动器。
输入装置360可以包括允许操作者向消息传送服务器300输入信息的一个或多个机制,诸如键盘、鼠标、笔、语音识别或生物学机制。输出装置370可以包括向操作者输出信息的一个或多个机制,包括显示器、打印机或扬声器。通信接口380可以包括使得消息传送服务器300能够与诸如消息被传递到的移动装置或其他计算装置104的远程装置或系统进行通信的任何像收发器那样的机制。例如,通信接口380可以包括用于通过网络进行通信的机制。
如上所述,消息传送服务器300可以管理向多个计算装置104的消息传递。消息传送服务器300可以响应于处理器320执行在诸如存储器330的计算机可读介质中包含的软件指令而执行那个目的的任务。该软件指令可以被从诸如存储装置350的另一种计算机可读介质或经由通信接口380从另一个装置被读入存储器330内。替选地或另外地,可以替代该软件指令或与该软件指令组合地使用硬连线的电路来实现符合所公开的技术的过程。因此,所公开的技术不限于硬件电路和软件的任何特定组合。
虽然已经与当前被认为最实用的内容和各种实现方式相关地描述了所公开的技术的特定实现方式,但是可以明白,所公开的技术不限于所公开的实现方式,而是相反,意图涵盖在所附的权利要求的范围内包括的各种修改和等同布置。虽然在此使用特定术语,但是它们仅在一般和说明性的意义上被使用,并且不用于限制的目的。
该书面说明书使用示例来公开包括最佳模式的所公开的技术的某些实现方式,并且也使得本领域内的任何技术人员能够实践所公开的技术的某些实现方式,包括制造和使用任何装置或系统并且执行任何包含的方法。在权利要求中限定了所公开的技术的某些实现方式的可专利的范围,并且该范围可以包括对于本领域内的技术人员显然的其他示例。这样的其他示例如果它们具有不与权利要求的字面语言不同的结构元件或者如果它们包括与权利要求的字面语言具有非实质上的差别的等同结构元件,则意欲在权利要求的范围内。
Claims (19)
1.一种计算机实现的方法,包括:
在计算系统处接收指示第一计算装置的行为状态的第一状态更新;
基于所述第一状态更新来发起对所述第一计算装置的一个或多个配置值的修改,所述配置值确定所述第一计算装置如何发送状态更新;
在所述计算系统处接收指向所述第一计算装置的第一消息;
在所述计算系统处接收指示所述第一计算装置的行为状态的第二状态更新,所述第二状态更新基于所述第一计算装置的所修改的配置值;
响应于接收到所述第二状态更新而向所述第一计算装置发送所述第一消息;以及
响应于在所述计算系统处从所述第一计算装置接收到多个另外的状态更新而确定与所述第一计算装置相关联的使用模式,每一个另外的状态更新指示所述第一计算装置的行为状态。
2.根据权利要求1所述的方法,其中,所述第一计算装置的所述行为状态指示所述第一计算装置是否是空闲、唤醒或不可用中的一个或多个。
3.根据权利要求1所述的方法,所述第二状态更新指示所述第一计算装置的位置。
4.根据权利要求3所述的方法,进一步包括:
从一个或多个另外的计算装置接收状态更新,每一个状态更新指示另一个计算装置的位置;以及
基于所述一个或多个另外的计算装置的位置来确定在所述第一计算装置的预定范围内的计算装置的数量;
其中,发起对所述一个或多个配置值的修改是响应于确定在所述预定范围内的计算装置的数量。
5.根据权利要求1所述的方法,引导所述第一计算装置修改所述一个或多个配置值进一步基于所确定的与所述第一计算装置相关联的使用模式。
6.根据权利要求1所述的方法,进一步包括:向所述第一计算装置发送用于发送状态更新的请求,其中接收所述第一状态更新是响应于向所述第一计算装置发送所述请求。
7.一种用于装置配置值的自动修改的系统,包括:
与第一计算装置进行通信的计算系统;
可操作地耦合到所述计算系统的至少一个处理器;以及
至少一个存储器,所述至少一个存储器可操作地耦合到所述至少一个处理器并且被配置为存储数据和指令,所述数据和指令在被所述至少一个处理器执行时使得所述系统:
在所述计算系统处从所述第一计算装置接收第一状态更新,所述第一状态更新指示所述第一计算装置的行为状态;
基于所述第一状态更新,发起对所述第一计算装置的一个或多个配置值的修改,所述配置值确定所述第一计算装置如何发送状态更新;
在所述计算系统处接收指向所述第一计算装置的第一消息;
在所述计算系统处接收指示所述第一计算装置的行为状态的第二状态更新,所述第二状态更新是基于所述第一计算装置的所修改的配置值而被发送的;
基于所述第二状态更新来确定用于向所述第一计算装置传递所述第一消息的时间;
响应于所确定的时间出现而向所述第一计算装置发送所述第一消息;以及
响应于在所述计算系统处从所述第一计算装置接收到多个另外的状态更新而确定与所述第一计算装置相关联的使用模式,每一个另外的状态更新指示所述第一计算装置的行为状态。
8.根据权利要求7所述的系统,其中,来自所述第一计算装置的所述第一状态更新包括电池电力的指示,并且发起对所述第一计算装置的一个或多个配置值的所述修改进一步基于所述电池电力的指示。
9.根据权利要求7所述的系统,其中,来自所述第一计算装置的所述第一状态更新包括由所述第一计算装置在使用的网络的类型的指示,并且发起对所述第一计算装置的一个或多个配置值的所述修改进一步基于所述网络的类型。
10.根据权利要求7所述的系统,其中,发起对所述第一计算装置的一个或多个配置值的所述修改进一步基于当前时间和日期。
11.根据权利要求7所述的系统,其中,发起对所述第一计算装置的一个或多个配置值的所述修改进一步基于与所述第一计算装置相关联的使用历史。
12.根据权利要求7所述的系统,其中,发起对所述第一计算装置的一个或多个配置值的所述修改进一步基于所述第一计算装置的位置。
13.一种计算机可读介质,所述计算机可读介质存储能被一个或多个处理器执行来执行一种方法的指令,所述方法包括:
在计算系统处接收指示第一计算装置的行为状态的第一状态更新;
基于所述第一状态更新来发起对所述第一计算装置的一个或多个配置值的修改,所述配置值确定所述第一计算装置如何发送状态更新;
在所述计算系统处接收指向所述第一计算装置的第一消息;
在所述计算系统处接收指示所述第一计算装置的行为状态的第二状态更新,所述第二状态更新基于所述第一计算装置的所修改的配置值;
响应于接收到所述第二状态更新而向所述第一计算装置发送所述第一消息;以及
响应于在所述计算系统处从所述第一计算装置接收到多个另外的状态更新而确定与所述第一计算装置相关联的使用模式,每一个另外的状态更新指示所述第一计算装置的行为状态。
14.根据权利要求13所述的计算机可读介质,其中,所述第一计算装置的所述行为状态指示所述第一计算装置是否能够从所述计算系统接收消息。
15.根据权利要求13所述的计算机可读介质,进一步包括:基于所述第一状态更新来确定所述第一计算装置的位置。
16.根据权利要求15所述的计算机可读介质,其中,提示所述第一计算装置设置一个或多个配置值是基于所述位置。
17.根据权利要求13所述的计算机可读介质,其中,所述方法进一步包括:
从一个或多个另外的计算装置接收状态更新,每个状态更新指示一个另外的计算装置的位置;以及
基于所述一个或多个另外的计算装置的位置来确定在所述第一计算装置的预定范围内的计算装置的数量,以及
其中,发起对所述一个或多个配置值的修改是响应于确定在所述预定范围内的计算装置的数量。
18.根据权利要求13所述的计算机可读介质,其中,提示所述第一计算装置设置所述一个或多个配置值进一步基于与所述装置相关联的用户行为。
19.根据权利要求13所述的计算机可读介质,其中,所述方法进一步包括:向所述第一计算装置发送用于发送状态更新的请求,接收所述第一状态更新是响应于向所述第一计算装置发送所述请求。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261665874P | 2012-06-28 | 2012-06-28 | |
US61/665,874 | 2012-06-28 | ||
PCT/US2013/048705 WO2014005086A2 (en) | 2012-06-28 | 2013-06-28 | Systems and methods for automatic modification of device configuration values |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104508652A CN104508652A (zh) | 2015-04-08 |
CN104508652B true CN104508652B (zh) | 2018-09-21 |
Family
ID=49779362
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380040185.2A Active CN104508652B (zh) | 2012-06-28 | 2013-06-28 | 用于装置配置值的自动修改的系统和方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9692643B2 (zh) |
EP (1) | EP2867790B1 (zh) |
CN (1) | CN104508652B (zh) |
WO (1) | WO2014005086A2 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9742782B2 (en) * | 2015-06-11 | 2017-08-22 | International Business Machines Corporation | Configuration management for virtual machine environment |
US11088907B2 (en) * | 2016-03-24 | 2021-08-10 | Intel Corporation | System characterization and configuration distribution for facilitating improved performance at computing devices |
KR101721394B1 (ko) | 2017-01-16 | 2017-03-29 | 김기수 | 반분법을 이용한 lm 가이드 조립방법 및 그 방법을 수행하는 프로그램이 기록된 컴퓨터로 판독가능한 기록매체 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200828909A (en) * | 2006-08-25 | 2008-07-01 | Ibm | A technique for synchronizing data with a mobile device based on a synchronization context |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7822823B2 (en) * | 1999-12-14 | 2010-10-26 | Neeraj Jhanji | Systems for communicating current and future activity information among mobile internet users and methods therefor |
US8020192B2 (en) * | 2003-02-28 | 2011-09-13 | Michael Wright | Administration of protection of data accessible by a mobile device |
US6983169B2 (en) * | 2003-03-14 | 2006-01-03 | Motorola, Inc. | Wireless device allowing for configuration of settings and method therefor |
US20050107100A1 (en) * | 2003-11-14 | 2005-05-19 | Patrik Gustafsson | Method of modifying parameters of user terminal, radio system and user terminal |
US9489645B2 (en) * | 2004-05-13 | 2016-11-08 | International Business Machines Corporation | Workflow decision management with derived scenarios and workflow tolerances |
US8099112B2 (en) | 2005-04-18 | 2012-01-17 | Nokia Corporation | Network entity, method and computer program product for dynamically changing a request for location information |
IL169418A (en) | 2005-06-27 | 2010-11-30 | Alvarion Ltd | Method and apparatus for dynamic management of wireless communication transmissions |
CA2615659A1 (en) * | 2005-07-22 | 2007-05-10 | Yogesh Chunilal Rathod | Universal knowledge management and desktop search system |
US7570609B2 (en) * | 2005-11-08 | 2009-08-04 | Research In Motion Limited | System and method of message delivery in a wireless communication network |
EP1969886B1 (en) * | 2005-12-13 | 2017-09-20 | Nuance Communications, Inc. | Method for performing interactive services on a mobile device, such as time or location initiated interactive services |
US8452309B2 (en) * | 2006-11-27 | 2013-05-28 | Verizon Services Corp. | Method and system for sending ring setting reminders to mobile devices within a predetermined area |
US20080254811A1 (en) * | 2007-04-11 | 2008-10-16 | Palm, Inc. | System and method for monitoring locations of mobile devices |
US7793122B1 (en) * | 2007-04-27 | 2010-09-07 | Symantec Corporation | Power management method and system organizing an execution order of each command in a plurality of commands based on a predicted probability of success of each command |
US8565137B2 (en) | 2007-09-24 | 2013-10-22 | Qualcomm Incorporated | Tracking locations of multicast group members within a wireless communication system |
US8199001B2 (en) | 2009-05-12 | 2012-06-12 | Qualcomm Incorporated | Dynamic reporting scheme for location based services |
EP2434383A2 (en) * | 2010-09-27 | 2012-03-28 | Research In Motion Limited | Communication device |
US8478306B2 (en) * | 2010-11-10 | 2013-07-02 | Google Inc. | Self-aware profile switching on a mobile computing device |
CN103493402B (zh) * | 2011-04-01 | 2018-05-25 | 英特尔公司 | 用来控制用于固定设备的寻呼的技术 |
US9298574B2 (en) * | 2011-04-14 | 2016-03-29 | Ricoh Company, Ltd. | Device management system including reporter server |
US9143892B2 (en) * | 2012-03-09 | 2015-09-22 | Microsoft Technology Licensing, Llc | Wireless beacon filtering and untrusted data detection |
US8938488B1 (en) * | 2013-12-27 | 2015-01-20 | Linkedin Corporation | Techniques for populating a content stream on a mobile device |
-
2013
- 2013-03-15 US US13/843,955 patent/US9692643B2/en active Active
- 2013-06-28 CN CN201380040185.2A patent/CN104508652B/zh active Active
- 2013-06-28 EP EP13810469.0A patent/EP2867790B1/en active Active
- 2013-06-28 WO PCT/US2013/048705 patent/WO2014005086A2/en active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200828909A (en) * | 2006-08-25 | 2008-07-01 | Ibm | A technique for synchronizing data with a mobile device based on a synchronization context |
Also Published As
Publication number | Publication date |
---|---|
EP2867790A4 (en) | 2016-03-02 |
EP2867790B1 (en) | 2017-03-15 |
CN104508652A (zh) | 2015-04-08 |
US9692643B2 (en) | 2017-06-27 |
EP2867790A2 (en) | 2015-05-06 |
WO2014005086A3 (en) | 2014-03-13 |
WO2014005086A2 (en) | 2014-01-03 |
US20140006572A1 (en) | 2014-01-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105144664B (zh) | 用户感知云到装置消息系统以及方法 | |
US8621026B2 (en) | Batching notifications to optimize for battery life | |
CN111313500B (zh) | 充电管理方法和装置、电子设备、计算机可读存储介质 | |
US8407306B1 (en) | Systems and methods for managing message delivery based on message priority | |
EP2966913B1 (en) | Wake-up control method, device and terminal equipment | |
US20140203944A1 (en) | Communications device having battery monitoring capabilities and performing pre-scheduled events | |
EP2621145A1 (en) | Packet transmission method and apparatus of mobile terminal | |
EP3493485A1 (en) | Method, apparatus and system for notification | |
US8311041B1 (en) | Systems and methods for automatically adjusting messaging quota | |
WO2014070744A2 (en) | Systems and methods for directing messages to multiple user profiles on a mobile device | |
CN104508652B (zh) | 用于装置配置值的自动修改的系统和方法 | |
CN113079083B (zh) | 消息处理方法、客户端、服务器和即时通信系统 | |
US20190306851A1 (en) | Operation mode switching method and user equipment | |
CN106453593B (zh) | 一种消息推送方法及装置 | |
CN106331002B (zh) | 一种信息发布方法及装置 | |
CN112087364B (zh) | 会话列表显示方法、装置及存储介质 | |
CN104756463B (zh) | 用于将消息传递到支持多用户的移动装置的系统和方法 | |
CN108182122B (zh) | 应用更新提醒方法、装置、存储介质和服务器 | |
EP2760188B1 (en) | Communications device having battery monitoring capabilities and performing pre-scheduled events | |
CN107436674A (zh) | 终端控制方法、装置及非临时性计算机可读介质 | |
US10088890B1 (en) | Managing message delivery | |
CN104572240A (zh) | 控制方法和电子设备 | |
CN111293736A (zh) | 一种控制温度的方法和设备 | |
CA2837383C (en) | Communications device having battery monitoring capabilities and performing pre-scheduled events | |
CN110839072A (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 | ||
CB02 | Change of applicant information |
Address after: American California Applicant after: Google limited liability company Address before: American California Applicant before: Google Inc. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |