CN107395658A - 离线对等辅助通知传输 - Google Patents
离线对等辅助通知传输 Download PDFInfo
- Publication number
- CN107395658A CN107395658A CN201611273013.1A CN201611273013A CN107395658A CN 107395658 A CN107395658 A CN 107395658A CN 201611273013 A CN201611273013 A CN 201611273013A CN 107395658 A CN107395658 A CN 107395658A
- Authority
- CN
- China
- Prior art keywords
- computing device
- notice
- sharing means
- data
- server unit
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/12—Messaging; Mailboxes; Announcements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/02—Terminal devices
- H04W88/04—Terminal devices adapted for relaying to or from another terminal or user
-
- 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/56—Provisioning of proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/224—Monitoring or handling of messages providing notification on incoming messages, e.g. pushed notifications of received messages
-
- 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/54—Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users
-
- 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
- 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/56—Provisioning of proxy services
- H04L67/59—Providing operational support to end devices by off-loading in the network or by emulation, e.g. when they are unavailable
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W52/00—Power management, e.g. TPC [Transmission Power Control], power saving or power classes
- H04W52/02—Power saving arrangements
- H04W52/0209—Power saving arrangements in terminal devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W64/00—Locating users or terminals or network equipment for network management purposes, e.g. mobility management
- H04W64/003—Locating users or terminals or network equipment for network management purposes, e.g. mobility management locating network equipment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W68/00—User notification, e.g. alerting and paging, for incoming communication, change of service or the like
- H04W68/02—Arrangements for increasing efficiency of notification or paging channel
-
- 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/289—Intermediate processing functionally located close to the data consumer application, e.g. in same machine, in same home or in same sub-network
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Abstract
本发明涉及离线对等辅助通知传输。大体上,本公开涉及一种用于将通知数据发送到不能够从中央服务器接收所述通知数据的计算装置的技术。服务器装置可以接收用于与计算装置相关的通知账户的通知数据并且确定所述计算装置是当前离线的。所述服务器装置可以随后识别一个或者多个共享装置的组并且将通知包发送到所述组中的共享装置,其中,所述通知包包括所述通知数据、与所述通知账户相关的账户标识符、以及与所述计算装置相关联的装置标识符。所述共享装置可以接收所述通知包并且响应于确定所述计算装置的装置标识符与在所述通知包中的装置标识符匹配,而将所述通知数据转发到所述计算装置。
Description
背景技术
通常,移动装置使用蜂窝网络或者无线局域网络(例如,)从中央服务器接收通知。当服务器装置试图发送该通知时,移动装置可以仅在该移动装置的位置处具有足够的信号强度等级时从相应的蜂窝网络或者无线局域网络接收这些通知。由于私人蜂窝网络的性质,不同的蜂窝网络在不同的区域具有变化的信号强度,包括特定的蜂窝网络可能没有覆盖到的特定区域。微弱的-网络连接强度情况阻止了该连接到这些蜂窝网络的移动装置成功接收通知。
发明内容
在一个示例中,一种方法包括由服务器装置接收用于与计算装置相关联的通知账户的通知数据。该方法可以还包括由该服务器装置确定该计算装置是当前离线的。该方法可以还包括响应于确定该计算装置是当前离线的,由该服务器装置识别一个或者多个共享装置的组并且由该服务器发送通知包到该一个或者多个共享装置的组中的共享装置,其中,该通知包包括该通知数据、与该通知账户相关的账户标识符、以及与该计算装置相关的装置标识符。
在另一个示例中,一种方法包括由第一计算装置并且从服务器中接收对将通知数据转发到第二计算装置的请求,其中该请求包括该通知数据和装置标识符。该方法可以还包括由该第一计算装置从该服务器装置接收该通知数据。该方法可以还包括,响应于由该第一计算装置确定与该第二计算装置相关的装置标识符与包括在该请求中的该装置标识符匹配,由该第一计算装置将该通知转发到该第二计算装置。
在另一个示例中,一种系统包括一个或者多个共享装置的组中的共享装置和服务器装置。该服务器装置可以被配置为接收用于与计算装置相关的通知账户的通知数据。该服务器装置可以还被配置为确定该计算装置是当前离线的。该服务器装置可以还被配置为响应于确定该计算装置是当前离线的,而识别一个或者多个共享装置的组以及将通知包发送到该共享装置,其中,该通知包包括该通知数据、与该通知账户相关的账户标识符、以及与该计算装置相关的装置标识符。该共享装置还被配置为从该服务器装置接收该通知包以及,响应于由该共享装置确定与该计算装置相关的装置标识符与包括在该通知包中的该装置标识符匹配,将该通知数据转发到该第二计算装置。
本公开的一个或者多个示例的细节在附图中设置并且在下面进行描述。通过描述和附图,以及后续的权利要求,本公开的其他特征、目的、以及优点将更加明显。
附图说明
附图1是根据本公开的一个或者多个方面的,图示出了配置为经由中间共享装置将通知数据发送到计算装置的示例性服务器装置的概念性示意图。
附图2是根据本公开的一个或者多个方面的,图示出了附图1的示例性共享装置的进一步的细节的框图。
附图3是根据本公开的一个或者多个方面的,图示出了该示例性服务器装置的进一步的细节的框图。
附图4是根据本公开的一个或者多个方面的,图示出了配置为经由多个中间共享装置将通知数据发送到计算装置的示例性服务器装置的概念性示意图。
附图5是根据本公开的一个或者多个方面的,图示出了实现用于经由中间共享装置将通知数据发送到计算装置的技术的服务器装置的示例性操作的流程图。
附图6是根据本公开的一个或者多个方面的,图示出了实现用于将从服务器接收的通知数据发送到计算装置的技术的共享装置的示例性操作的流程图。
具体实施方式
大体上,本公开涉及用于将通知数据发送给当前不能够与中央服务器通信并且因此,不能够从该中央服务器中接收该通知数据的计算装置的技术。服务器装置可以接收用于与计算装置相关的通知账户的通知数据,诸如计算装置(例如,移动电话),并且确定该计算装置是当前没有连接到该服务器尝试通过其来发送该通知数据的网络上的。换句话说,该计算装置可能在微弱的或者无无线(例如,蜂窝)服务或者无互联网服务区域并且可能因此不能够从该服务器装置接收该传入通信。该服务器装置可以随后识别一个或者多个共享装置的组(例如,其他没有无线或者互联网连接的移动电话或者计算装置)并且将通知包发送给该组内的共享装置中的一个。该通知包包括该通知数据、与该通知账户相关的账户标识符、以及与该计算装置相关的装置标识符。该共享装置可能从该服务器装置接收该通知包并且,响应于确定该计算装置的装置标识符与在该通知包中的该装置标识符匹配,将通知数据转发到该计算装置。
在很多发展中的市场中,由于缺少可用连接或者连接到这些服务的费用不足,大量的装置会很长时间不连接到互联网或者蜂窝网络。但是,如果该用户知道他们有需要处理的通知时,这些装置的用户可能希望连接到这些服务。不同于将用于特定计算装置的一些或者全部通知存储在该中央服务器上,本公开的技术使得服务器能够将该通知数据发送到可以能够与该通知数据的最终接收者通信(例如,进入到通信范围内)的中间共享装置。一旦该中间共享装置能够与该最终接收者通信,该中间共享装置可以转发该通知数据(例如,使用非-互联网协议),潜在地降低了该最终接收者连接到该互联网或者无线网络的需要。通过将该通知数据发送到该中间共享装置,该服务器装置降低了一旦该接收装置最终能够连接到该服务器装置时所使用的网络流量和数据消耗,其还可以降低在该接收装置中的电池消耗。在此描述的该技术可以进一步降低由于该连接造成的,该接收装置没有接收通知或者以不合适的方式接收通知的可能性。
附图1是根据本公开的一个或者多个方面的,图示出了配置为经由中间共享装置4将通知数据22发送到计算装置12的示例性服务器装置17的概念性示意图。如下面进一步描述的,至少部分地基于计算装置12不能够与服务器装置17通信,服务器装置17可以将用于计算装置12的通知数据22首先发送给共享装置4,其将该通知数据转发到该计算装置。
如在附图1中所示的,系统2包括计算装置4和计算装置12。在附图1的示例中,计算装置4和计算装置12被描述为移动电话。但是,在一些示例中,计算装置4和计算装置12可以是计算机化的手表(例如,智能手表)、计算机化的眼镜、计算机化的耳机、其他类型的可穿戴计算装置、平板计算机、个人数字助理(PDA)、膝上计算机、游戏系统、媒体播放器、e-book阅读器、电视平台、汽车导航系统、数字照相机、家庭电器,或者任意其他类型的配置为将数据包发送到其他计算装置的移动和/或非-移动计算装置。相应的显示器部件可以集成到或者远离计算装置4和计算装置12。
计算装置4包括一个或者多个通信单元6(下文中,“通信单元6”)以及通信模块10。通信模块10可以使用软件、硬件、固件、或者硬件、软件的混合,和/或驻留在和/或计算装置4处执行的固件执行在此描述的操作。计算装置4可以采用一个或者多个处理器执行通信模块10。在一些示例中,计算装置4可以如在计算装置4的底层硬件执行的一个或者多个虚拟机器来执行通信模块10。通信模块10可以如一个或者多个计算装置4的操作系统或者计算平台的服务或者部件来执行。通信模块10可以作为在计算装置4的计算平台的应用层的一个或多个可执行程序来执行,所述一个或多个可执行程序具有操作系统特权或者能够访问计算装置4的运行时库。在一些示例中,通信单元6,和/或通信模块10可以被布置为远离并且能够远程地接入计算装置4,例如,经由计算装置4与一个或者多个远程网络装置的交互。
计算装置4还包括一个或者多个通信单元6。计算装置4,在一个示例中,使用通信单元6经由诸如一个或者多个有线或者无线网络的一个或者多个网络与外部装置通信。通信单元6可以是网络接口卡,诸如以太网卡、光收发器、射频收发器、或者能够发送和接收信息的任意其他类型的装置。这样的网络接口的示例可以包括、红外信号、3G、长期演进(LTE)、近场通信、以及无线电和通信串行总线(USB)和以太网。在一些示例中,计算装置4使用通信单元6来与其他可操作地耦合到计算装置4的计算装置无线通信。计算装置12还包括一个或者多个通信单元14,其可以类似于计算装置4的通信单元6。
服务器17可以是计算机程序或者能够从客户端接收请求的机器,诸如计算装置4,以及对它们进行响应。除其它类型服务器之外,服务器17可以是任意数据库服务器、文件服务器、邮件服务器、打印服务器、web服务器、游戏服务器、以及应用服务器。服务器17可以由单个计算装置或者两个或者多个协同工作的计算装置的集群来构成。服务器17可以是基于云的服务器。服务器17可以执行用于执行管理任务的网络管理服务器功能。服务器17还可以是用于蜂窝网络或者互联网服务的集线器装置。在这样的示例中,服务器17可以接收要被使用该蜂窝服务或者互联网服务发送到特定计算装置的数据。服务器17可以通过蜂窝网络或者互联网服务协调该数据的分配。服务器17还可以从其它连接到该特定蜂窝网络或者互联网服务的计算装置接收通信发起或者通信响应。
根据本公开的技术,服务器17可以接收用于与计算装置12相关联的通知账户的通知数据。例如,该通知数据可以是来自社交网络应用的更新。在这样的示例中,服务器17可以从与该社交网络应用相关联的装置接收该通知数据,诸如托管该社交网络应用的服务器。服务器17还可以接收关于该通知数据将要提供给的通知账户的信息。服务器17可以存储数据库,所述数据库将该通知账户与特定的计算装置相关联,以使得当接收到该通知数据时,服务器17可以在该数据库中执行查找以确定哪一个计算装置应当接收该通知数据。
服务器17可以确定该计算装置12是当前离线的。例如,当从该托管社交网络应用的本地服务器中接收到通知数据时,服务器17可以试图将该通知数据经由一个或者多个信号16发送到计算装置12。但是,计算装置12当前可能不能够从服务器17接收该通知数据。例如,计算装置12可能处于阻止来自蜂窝网络或者互联网服务的传入信号的模式,诸如通常称为“飞行模式”。在其他示例中,计算装置12可能地理上位于没有蜂窝服务或者互联网连接的区域。在任意情况下,服务器17可以确定计算装置12当前不能够接收和处理一个或者多个信号16以便获得该通知数据。
响应于确定该计算装置12是当前离线的,服务器17可以识别一个或者多个共享装置的组。服务器17可以选择共享装置(例如,计算装置4)中能够与服务器17通信的一个共享装置并且将通知包发送给所选择的共享装置。该通知包可以包括通过服务器17接收的原始通知数据、与该通知账户相关的账户标识符、以及与计算装置12相关联的装置标识符。在附图1的示例中,当确定计算装置12是当前离线的而不是等待计算装置12来恢复接入到该蜂窝或者互联网时,服务器17可以替代地经由一个或者多个信号18将通知包发送到包括该通知数据的计算装置4。在这一点,计算装置4可以随后承担将该通知数据传输到计算装置12的任务。
计算装置4可以从服务器17接收用于将该通知数据转发到计算装置12的请求。该请求可以包括该通知数据以及识别计算装置12的装置标识符。如上所描述的,服务器17可以从所确定的共享装置的组中选择计算装置4作为共享装置。一旦服务器17选择计算装置4,计算装置4可以经由一个或者多个信号18接收该请求以将该通知数据转发到计算装置12。
计算装置4和计算装置12在之前的某些时间点可能已经交换了数据或者经由一些形式的非-互联网协议连接。如此,计算装置4可以检测到何时计算装置4能够经由该非-互联网协议与计算装置12连接。一旦计算装置4和计算装置12彼此通信,计算装置4可以将与计算装置12相关联的装置标识符与包括在经由一个或者多个信号18发送的请求中的装置标识符比较以便确定所述装置标识符是否匹配。这确保了计算装置4正在将该通知数据发送给正确的接收者,由于可能存在示例,在该示例中服务器17使用计算装置4来将通知数据转发到多个接收者计算装置。
响应于确定与计算装置12相关联的装置标识符与包括在来自服务器17的请求中的装置标识符匹配,计算装置4可以经由一个或者多个信号20将该通知数据(例如,通知数据22)转发到计算装置12。例如,当计算装置4和计算装置12能够经由非-互联网协议连接时,计算装置4可以使用该装置标识符确定计算装置12是否是从服务器17接收的通知数据的期望接收者。尽管服务器17接收的该原始通知数据可以包括通知账户信息,当将该通知数据转发到计算装置12时计算装置4可以忽视该通知账户信息。由于单个计算装置可以与多个不同的账户相关联,甚至在相同的应用或者服务内(例如,计算装置12可以与在通知数据起源的社交网络应用中的多个账户相关),该账户信息可以对于该通知数据自身的传输无关紧要。为了有效地传输通知数据,计算装置4可以根据装置标识符的确定的比较来简单地将通知数据转发到计算装置12。
不同于将计算装置12的所有通知存储在服务器17上,本公开的技术使得服务器17能够将通知数据发送到可以进入计算装置12的通信范围内的中间共享装置(例如计算装置4)。一旦中间共享装置的确进入到计算装置12的通信范围内,该中间共享装置可以使用非-互联网协议转发该通知数据,降低计算机装置12连接到互联网或者蜂窝网络的需要。通过将通知数据发送到中间共享装置,服务器17降低了一旦计算装置12最终能够连接到服务器17时所使用的网络流量和数据消耗的量,这还可以降低在计算装置12处的电池消耗。在此描述的技术可以进一步降低由于该连接问题造成的计算装置12没有接收到通知、或者以不合适的方式接收到通知的可能性。
附图2是图示出了根据本公开的一个或者多个方面的附图1的示例共享装置的进一步的细节的框图(例如,计算装置4)。附图2仅图示出了计算装置4的一个特定的示例,并且该计算装置4的很多其他示例可以用于其他实例中。
如在附图2的特定示例中所示的,计算装置4包括一个或者多个处理器30、一个或者多个输入部件32、一个或者多个通信单元6、一个或者多个输出部件34,以及一个或者多个存储装置38。在附图2的示例中,计算装置4的存储装置38包括通信模块10和通知队列8。部件6、8、10、30、32、34,和38的每一个可以被互连(物理地、通信地、和/或可操作地)以便于部件间通信。在一些示例中,通信信道36可以包括系统总线、网络连接、进程间通信数据结构,或者用于通信数据的任意其他信道。如在附图2中的一个示例,部件6、8、10、30、32、34,以及38可以通过一个或者多个通信信道36耦合。通信模块10和通知序列8还可以彼此以及与在计算装置4中的其它部件通信信息。
在一个示例中,处理器30被配置为实现功能和/或处理用于在计算装置4内执行的指令。例如,处理器30可以能够处理存储在存储装置38中的指令。处理器30的示例可以包括,微处理器、控制器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA),或者等效的离散或者集成逻辑电路中的任意一个或者多个。
一个或者多个存储装置38可以被配置为在操作期间存储计算装置4内的信息。在一些示例中,存储装置38被描述为一个或者多个计算机可读存储媒体媒体。在一些示例中,存储装置38是临时存储器,意味着存储装置38的主要目的是非-长期存储器。在一些示例中,存储38被描述为易失性存储器,意思是当该计算装置关闭时,存储装置38不保存所存储的内容。易失性存储器的示例包括随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、以及其他形式的公知的易失性存储器。在一些示例中,存储装置38被用于存储处理器30执行的程序指令。在一个示例中,存储装置38被在计算装置4上运行的软件或者应用(例如应用8)使用以在程序执行期间临时存储信息。
在一些示例中,存储装置38还包括一个或者多个计算机可读存储媒体。存储装置38可以被配置为存储大于临时存储器的信息量。存储装置38可以进一步被配置为长期存储信息。在一些示例中,存储装置38包括非-易失性存储元件。这样的非-易失性存储元件的示例包括磁硬盘、光盘、软盘、闪存、或者电可编程存储器(EPROM)或者电可擦写和可编程(EEPROM)存储器的形式。
在一个示例中,计算装置4还包括一个或者多个输入部件32。在一些示例中,输入部件32被配置为通过触觉、音频、或者视频反馈从用户接收输入。输入部件32的示例包括显示部件、鼠标、键盘、相机、麦克风或者用于检测用户输入的任意其他类型的装置。在一些示例中,显示部件包括触摸-敏感屏幕。
一个或者多个输出部件34还可以包括在计算装置4中。在一些示例中,输出部件34被配置为使用触觉、音频、或者视频激励给用户提供输出。在一个示例中,输出部件34包括电子显示器、扬声器、或者用于将信号转换为人类或者机器可以理解的合适的形式的任意其他类型的设备。该电子显示器可以是触摸屏幕的LCD或者OLED部分、可以是非-触摸屏幕直接观看显示器部件,诸如CRT、LED、LCD,或者OLED。该显示器部件可以是投影仪而不是直接观看显示器。
在一些示例中,计算装置4可以进一步包括没有图示出的部件,诸如显示器部件。该显示器部件可以被配置为在该显示器上输出图形内容并且经由触觉-敏感输入部件接收用户输入的指示。在一些示例中,该触觉-敏感输入部件可以检测该显示器部件的屏幕处和/或附近的目标。如一个示例性的范围,该触觉敏感输入部件可以检测目标,诸如在该显示器部件的物理屏幕的2英寸(~5.08厘米)或者更少内的手指或者手写笔。该触觉-敏感输入部件可以确定检测到该目标的该显示器部件位置(例如,(x,y)坐标)。在另一个示例性范围中,该触觉-敏感性输入部件可以检测在该显示器部件的该物理屏幕的6英寸(~15.24厘米)或者更少内的目标并且其他示例性的范围也是可以的。触觉-敏感输入部件可以确定通过用户的手指利用电容、电感、和/或光识别技术选择的该显示器的位置。在一些示例中,该触觉-敏感输入部件使用触觉、音频,或者视频激励提供输出给用户。
根据本公开的技术,通信模块10可以经由通信单元6从服务器装置接收用于将通知数据转发到第二计算装置。该请求可以包括该通知数据自身以及装置标识符。例如,通信模块10可以经由通信单元6从第二计算装置的新闻应用接收关于新闻报警的通知数据。如果服务器装置当前不能够与第二计算装置通信以便于将通知数据直接发送到第二通信装置的目的,则通信模块6可以替代地代表第二计算装置来接收该通知数据。通信模块10还可以接收指示该计算装置是该通知数据的期望接收者(例如,该第二计算装置)的装置标识符。当接收到该请求时,通信模块10可以在队列8中存储该通知数据和该装置标识符直到通信模块10能够将该通知数据转发到该第二通信装置。
计算装置4以及作为该通知数据期望的接收者的第二计算装置可能在过去的一些点上已经交换数据包了。例如,在接收到该请求之前,通信模块10可以经由一些形式的非-互联网协议连接到第二计算装置并且经由该非-互联网协议将数据发送到第二计算装置。这一数据可以是文本消息、视频数据、图像数据、或者指示计算装置4和第二计算装置在一些点上彼此已经大体相邻并且将来在一些点上还可能再次在彼此通信范围内的任意其他通信。在这一数据交换期间,通信模块10可以从第二计算装置接收第一令牌(token)。该第一令牌可以包括第二计算装置的装置标识符和与第二计算装置相关联的通知账户的账户标识符。通信模块10可以随后将标识符信息发送到服务器装置。该标识符信息可以包括该第一令牌和包括计算装置4的装置标识符的第二令牌。在一些示例中,通信模块10可以将两个令牌组合为单个令牌从而形成标识符信息。在其他示例中,通信模块10可以将两个令牌作为独立的数据目标发送到服务器装置。该服务器装置可以使用这一标识符信息来追踪该服务器装置可以将用于计算装置4的通知数据还是第二计算装置的通知数据发送给其他计算装置,并且合理地期待该通知数据将被传输。
通信模块10可以检测计算装置4的通信单元6何时能够诸如经由非-互联网协议连接到第二计算装置。一旦计算装置4和该第二计算装置彼此通信,通信模块10可以将与第二计算装置相关联的装置标识符与包括在从该服务器装置接收的请求中的装置标识符比较从而确定所述装置标识符是否匹配。这确保了计算装置4正在发送通知数据给正确的接收者,由于可能存在这样的示例,其中服务器装置使用计算装置4来将通知数据转发到多个接收者计算装置并且通信模块10将通知数据和装置标识符的多个实例存储在通知队列8中。例如,通知队列8可以同时保持用于该第二计算装置的新闻报警、用于第三计算装置的社交网络更新、以及用于第四计算装置的视频通知。
响应于确定与第二计算装置相关联的装置标识符与包括在从该服务器装置接收的请求中的装置标识符匹配,通信模块10可以将通知数据转发到第二通信装置。例如,通信模块10可以使用通信单元6来确定第二计算装置是否在计算装置4的诸如非-互联网协议的通信协议的通信范围内。当计算装置4和第二计算装置连接时(例如,该两个装置在诸如非-互联网协议的通信协议的通信范围内并且自动或者手动地连接),通信模块10可以使用存储在通知队列8中的装置标识符确定,第二计算装置是否是从该服务器装置接收的通知数据的期望的接收者。通信模块10可以使用该非-互联网协议使用通信单元6将通知数据发送到的第二计算装置。在一些示例中,非-互联网协议可以是协议或者近场通信协议。
即使该服务器装置接收的原始数据可以包括通知账户信息,通信模块10可以在将该通知数据转发到该第二计算装置时忽视该通知账户信息。由于单个计算装置可以与多个不同账户相关,甚至在相同的应用或者服务内(例如,该第二计算装置可以与在发起该通知数据的新闻应用中的多个订户账户相关联),该账户信息可以对于该通知数据自身的传输无关紧要。为了有效地传输该通知数据,通信模块10可以基于所述装置标识符的确定的比较来简单地使用通信单元6将该通知数据转发到第二计算装置。
在一些示例中,通信模块10可以记录与在通知队列8中的通知数据相关联的时间戳。该时间戳可以指示该通知数据被从该服务器装置中接收的时间。在这一示例中,通信模块10可以将该时间戳与该通知数据发送到该第二计算装置。该时间戳帮助第二计算装置确定该通知数据是否仍然是相关的。例如,计算装置4可以不知道第二计算装置是否在从通信模块10接收该通知数据开始的时间中已经从该中央服务器中接收到通知数据。在这样的示例中,当第二计算装置从第一计算装置中接收到通知数据时,第二计算装置可以将该通知数据的时间戳与连接至服务器装置的第二计算装置的最后实例的内部追踪时间比较。如果该通知数据的时间戳比该内部追踪的时间更近,则第二计算装置可以确定该通知数据是相关的。如果该时间戳不如该内部追踪的时间接近,则该第二计算装置可以忽视接收到的通知数据。
在一些示例中,在将通知数据发送到第二计算装置后,通信模块10可以接收第二计算装置已经从通信模块10接收到该通知数据的指示,诸如确认消息。在这一示例中,通信模块10可以将该指示转发到服务器装置。这能使得该服务器装置知道通信模块10完成了将该通知数据发送到该期望的接收者的过程。
在一些示例中,当将通知数据转发到第二计算装置时,通信模块10可以将该通知数据转发到中间计算装置,其进而将该通知数据转发到该第二计算装置。在附图2的示例中,计算装置4可以是经由互联网连接连接到服务器装置的综合办公楼的本地主机装置。该第二计算装置的用户可以是工作在容纳计算装置4的该综合办公楼的人的配偶。在这一示例中,服务器装置可以确定在工作日期间将该通知数据有效地传输到第二计算装置的最佳路由是用于将该通知数据发送到在该综合办公楼中的该本地主机装置。在该综合办公楼中的本地主机装置可以随后将通知数据转发到由该人使用的计算装置中,其在容纳该本地主机装置(例如计算装置4)的该综合办公楼中工作。当在容纳该本地主机装置的该综合办公楼中工作的人带着他们的中间计算装置回家的时候,该中间计算装置可以将该通知数据转发到该期望的接收者,或者职员的配偶所使用的第二计算装置。
在一些其他的示例中,通信模块10可以连同通知数据一起,从该服务器装置接收用于该通知数据的到期日期。该到期日期可以指示如果通信模块10尚未将该通知数据传输到该第二计算装置则该通信模块10将从该通知队列8中删除该通知数据的时间。在这样的示例中,响应于确定该到期日期已经过去并且通信装置10尚未将该通知数据传输到该第二计算装置,通信模块10可以进行至从通知队列8中删除该通知数据。通过包括到期日期,计算装置4不会在无限的时间量内负担存储该通知数据。该到期日期可以是其能够合理地期望第二计算装置将在某些点连接到服务器装置的时间量。例如,该到期日期可以是一天,三天,一周,或者任意其他合理地确定的时间量。
附图3是图示出了根据本公开的一个或者多个技术的,示例性服务器装置的进一步的细节的框图。在一些示例中的附图3的服务器17表示附图1的服务器17的示例。附图3仅图示出了服务器17的一个特定的示例,并且服务器17的很多其他的示例可以被用于其他的实例并且可以包括被包含在示例性的服务器17中的部件的子集,或者可以包括在附图3中没有示出的附加部件。
服务器17可以包括附加部件,为了清楚,在附图3中没有示出。例如,服务器17可以包括电池以用于给服务器17的部件提供电力。类似地,附图3中示出的服务器17的部件可以在每一个示例性的服务器17中不是必须要的。例如,在一些配置中,服务器17可以不包括输入部件64。
如在附图3的示例中所示,服务器17包括一个或者多个处理器60、一个或者多个输入部件64、一个或者多个通信单元62、一个或者多个输出部件66、以及一个或者多个存储装置70。存储装置70可以包括分配模块72和装置连接日志74。
在一些示例中,输出部件66被配置为使用触觉、音频、或者视频激励给用户提供输出。在一个示例中,输出部件66包括电子显示器、扬声器,或者用于将信号转换为人类或者机器可以理解的合适形式的任意其他类型的装置。该电子显示器可以是触摸屏幕的LCD或者OLED部分,可以是非-触摸屏幕直接观看显示器部件,诸如CRT、LED、LCD、或者OLED。该显示器部件也可以是投影仪来替代直接观看显示器。
在一些示例中,输入部件64被配置为通过触觉、音频、或者视频反馈来从用户接收输入。输入部件64的示例包括显示部件、鼠标、键盘、相机、麦克风或者用于检测用户输入的任意其他类型的装置。在一些示例中,显示部件包括触摸-敏感屏幕。
服务器17的一个或者多个存储装置70包括装置连接日志74和分配模块72。一个或者多个存储装置70可以被配置为在操作期间存储服务器17中的信息。存储装置70,在一些示例中,被描述为计算机可读存储媒体。在一些示例中,存储装置70是临时存储器,意味着存储装置70的主要目的是非-长期存储。在一些示例中,存储70被描述为易失性存储器,意思是当该计算装置关闭时存储装置70不保存所存储的内容。易失性存储器的示例包括随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、以及公知的其他形式的易失性存储器。在一些示例中,存储装置70被用于存储通过处理器60执行的程序指令。例如,装置连接日志74可以被配置为短-期存储和临时保存用于间歇连接到服务器17的移动计算装置的通知数据。
在一些示例中,存储装置70还包括一个或者多个计算机可读存储媒体。存储器装置70可以被配置为存储大于易失性存储器的信息量。存储装置70可以进一步被配置为长期存储信息。在一些示例中,存储器置70包括非-易失性存储元件。该非-易失性存储元件的示例包括磁硬盘、光盘、软盘、闪存、或者电可编程存储器(EPROM)或者电可擦写和可编程(EEPROM)存储器的形式。
通信通道68可以互连部件60、62、64、66、70、74,以及72的每一个以便于部件-之间通信(物理地、可通信地、和/或可操作地)。在一些示例中,通信通道68可以包括系统总线、网络连接、进程间通信数据结构,或者用于通信数据的任意其他方法。
服务器17的一个或者多个通信单元62可以经由一个或者多个有线和/或无线网络通过在一个或者多个网络上传送和/或接收网络信号来与诸如服务器装置的外部装置通信。通信单元62可以是网络接口卡,诸如以太网卡、光收发器、射频收发器、或者能够发送和接收信息的任意其他类型的的装置。这样的网络接口的示例可以包括蓝牙、红外信号、3G、LTE、近场通信、和Wi-Fi无线电以及通用串行总线(USB)和以太网。在一些示例中,服务器17使用通信单元62来与其他可操作地耦合到服务器17的另一个计算装置无线通信,例如移动计算装置。
在一个示例中,一个或者多个处理器60被配置为实现功能和/或处理用于在服务器17中执行的指令。例如,处理器60可以能够处理存储在存储器装置70中的指令。处理器60的示例可以包括,微处理器、控制器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA),或者等效的离散的或者集成的逻辑电路中的任意一个或者多个。
根据这一公开的技术,服务器17的分配模块72可以接收用于与计算装置相关联的通知账户的通知数据。例如,该通知数据可以是来自游戏应用的更新。在这样的示例中,分配模块72可以从与该游戏应用相关联的装置接收该通知数据,诸如托管游戏应用的服务器。分配模块72还可以接收关于该通知数据将要提供给的通知账户的信息。分配模块72可以存储将该通知账户与特定的计算装置相关联的数据库(例如,装置连接日志74),使得当接收到该通知数据时,分配模块72可以在装置连接日志74中执行查找从而确定哪一个计算装置应当接收该通知数据。
分配模块72可以确定该计算装置是当前离线的。例如,当从托管了游戏应用的本地服务器中接收到通知数据时,分配模块72可以试图使用无线(例如,蜂窝)连接或者互联网连接发送该通知数据。但是,该计算装置当前可能不能够从服务器17接收通知数据。例如,该计算装置可能处于阻止来自蜂窝网络或者互联网服务的传入信号的模式,诸如通常称为“飞行模式”。在其他示例中,该计算装置可以地理上位于没有蜂窝服务或者互联网连接的区域。在任意情况下,如果分配模块72没有在预定响应时间阈值内从该计算装置接收到交互事件,则分配模块72可以确定该计算装置当前不能够接收和处理来自通信单元62的信号以获得通知数据。交互事件可以是来自该计算装置的指示该计算装置接收到通知数据的任意类型的确认。
响应于确定该计算装置是当前离线的,分配模块72可以使用装置连接日志74识别一个或者多个共享装置的组。分配模块72可以选择当前能够与服务器17通信的共享装置中的一个并且将通知包发送到所选择的共享装置。该通知包可以包括分配模块72接收的原始通知数据、与通知账户相关联的账户标识符、以及与计算装置相关联的装置标识符。在附图3的示例中,当确定该计算装置是当前离线的而不是等待该计算装置来恢复接入到蜂窝或者互联网时,分配模块72可以替代地将包括该通知数据的通知包发送到从装置连接日志74中识别的共享装置。
在选择该共享装置时,分配模块72可以基于多个信息片段来删减该一个或者多个共享装置的组从而不会使任意特定共享装置负担过重或者从而最有效地将通知数据传输到计算装置。例如,分配模块72可以至少部分地基于以下来删减该一个或者多个共享装置的组:在服务器17的队列中的多个通知、指示该一个或者多个共享装置的组中的每一个相应共享装置何时最后与服务器17通信的该相应共享装置的时间戳、在该一个或者多个共享装置的组中的每一个相应共享装置的相应队列中的多个通知、或者该一个或者多个共享装置的组中的每一个相应共享装置将通知数据发送到该计算装置的预定时间量内的多个实例。分配模块72可以删减最近没有与服务器17通信的共享装置、具有必须被传输的大量通知数据的实例的共享装置、或者最近没有将该通知数据发送到该期望的接收者的共享装置。
该一个或者多个共享装置的组可以是存储在装置连接日志74中的列表。分配模块72可以基于多个所识别的共享装置来构建这一列表。例如,分配模块72可以从共享装置接收令牌。在一些示例中,该令牌可以包括与该计算装置相关联的装置标识符、与计算装置相关联的通知账户的账户标识符、以及共享装置的装置标识符。在其他示例中,该令牌可以是仅仅包括该共享装置的装置标识符的第一令牌。在这样的示例中,分配模块72还可以从该共享装置中接收包括该计算装置的装置标识符以及与该计算装置相关联的通知账户的账户标识符的第二令牌。分配模块72可以随后将该第一令牌和该第二令牌串连接从而产生包括共享装置的装置标识符、计算装置的装置标识符、以及与该计算装置相关联的通知账户的账户标识符中的每一个的第三令牌。在任意情况下中,分配模块72可以从该接收到的令牌中提取信息并且将该信息存储在装置连接日志74中。分配模块72可以随后从该装置连接日志74中选择该共享装置,其中装置连接日志74列出之前已经与该计算装置交换数据的所有共享装置。
在这一点上,在一些示例中,该共享装置随后承担将该通知数据传输到该计算装置的任务。在其他示例中,分配模块72可以仍然尝试将通知数据发送到计算装置。在这样的示例中,分配模块72可以对该通知数据执行竞态条件。具体地,分配模块72可以继续尝试将通知数据发送到计算装置直到分配模块72成功将通知数据发送到计算装置或者分配模块72从该共享装置接收到该计算装置已经成功从该共享装置接收该通知数据的指示。一旦这些条件中的任意条件发生,分配模块72可以终止尝试将该通知数据发送到期望的接收装置。
在一些示例中,分配模块72可以附加地将用于通知数据的到期日期发送到共享装置。到期日期可以指示如果通信装置尚未将通知数据传输到计算装置,则共享装置将从外部通知队列中删除该通知数据的时间。在这样的示例中,如果到期日期已经过去并且共享装置尚未将通知数据传输到第二计算装置,则共享装置可以进行至从外部通知队列中删除该通知数据。通过包括到期日期,共享装置不会在无限的时间量内负担存储通知数据。该到期日期可以是其能够合理地期望第二计算装置将在某些点连接到服务器装置的时间量。例如,到期日期可以是一天,三天,一周,或者任意其他合理地确定的时间量。
附图4是图示出了根据本公开的一个或者多个方面的,配置为将通知数据经由多个中间共享装置发送到计算装置的示例服务器装置的概念框图。在附图4的示例中,计算装置4可以是类似于针对附图1和/或2描述的计算装置4的计算装置。此外,服务器17可以是类似于针对附图1和/或3描述的服务器17的服务器装置。
在附图4的示例中,类似于附图1,服务器17可以尝试将通知数据22经由一个或者多个信号78发送到计算装置12,在一些非-限制性示例中通知数据22可以是来自视频流传输应用的视频通知。当一个或者多个信号78没有到达计算装置12时,服务器17可以确定用于将通知数据22传输到计算装置12的替选方法。在附图4的示例中,不使用单个共享装置(例如,计算装置4),而是服务器17可以使用共享装置链以便将通知数据22传输到计算装置12。
在附图4的又一个非-限制性示例性示例中,计算装置4可以是经由互联网连接与服务器17连接的在房间中的固定计算装置,诸如智能电视。该计算装置12的用户可以是计算装置4的所有者的朋友。此外,该计算装置4的所有者还可以拥有计算装置84,其可以是可穿戴计算装置,诸如智能手表。
在这样的示例中,服务器17可以确定将该视频通知有效地传输到计算装置12的最佳路由是首先将该通知数据发送到计算装置4。如此,服务器17可以将包括通知数据22的通知包经由一个或者多个信号80发送到计算装置4。该通知包还可以包括与视频应用的通知账户相关联的账户标识符和与计算装置12相关联的装置标识符。但是,在附图4的示例中,该通知包可以包括与计算装置84相关联的装置标识符。这一附加装置标识符可以指示计算装置4可以将该通知数据转移到或者计算装置84还是计算装置12,或者计算装置4具有明确的指令将该通知数据转发到计算装置84。
在附图4的示例中,计算装置4和计算装置84的共同所有者可以进入到彼此的通信范围之内。如此,计算装置4和计算装置84可以诸如经由非-互联网协议(诸如或者近场通信)连接,并且经由一个或者多个信号82转移通知数据22。在一些示例中,当转移时,计算装置4可以从计算装置4的存储器中删除通知数据22的任意残留。在其他示例中,在预备场景中计算装置4可以继续存储通知数据22的拷贝,在所述预备场景中计算装置4可以先于计算装置84进入计算装置12的通信范围之前进入计算装置12的通信范围。
在附图4的示例中,计算装置84可以进入计算装置12的通信范围内,诸如如果计算装置84的所有者和计算装置12的所有者在旅馆中相见。通常,根据本公开的技术,通信范围可以是某个区域或者范围,其中短-范围通信信号(例如、近场通信、或者其他非-互联网协议)可以被检测到具有两个装置可以使用该短-范围通信协议彼此连接的足够的强度。当计算装置84和计算装置12进入彼此的通信范围之内时,通信装置84和通信装置12可以连接,诸如经由非-互联网协议,诸如或者近场通信,并且计算装置84可以将通知数据22经由一个或者多个信号86发送到计算装置12。当通过计算装置12接收到通知数据22时,计算装置4、84、或者12中的任意计算装置可以将确认指示发送给服务器17以指示通知数据22被成功传输到计算装置12。
附图5是根据本公开的一个或者多个方面的,图示出了实现用于将通知数据经由中间共享装置发送到计算装置的技术的服务器装置的示例性操作的流程图。附图5的技术可以通过服务器装置的一个或者多个处理器来执行,诸如附图1和/或附图3中所示的服务器17。为了说明的目的,附图5的技术在附图3的服务器17的场境(context)中描述,尽管具有不同于服务器17的配置的计算装置可以执行附图5的技术。所描述的一个或者多个步骤可以是可选的并且不是在附图5的流程图中描述/示出的每一个步骤都被需要来执行本公开的技术。
根据本公开的技术,服务器17的分配模块72可以接收(100)用于与计算装置相关联的通知账户的通知数据。例如,该通知数据可以是来自游戏应用的更新。在这样的示例中,分配模块72可以从与该游戏应用相关联的装置接收通知数据,诸如托管该游戏应用的服务器。分配模块72还可以接收关于通知账户的信息,该通知数据旨在用于该通知账户。分配模块72可以存储将通知账户与特定的计算装置相关联的数据库(例如,装置连接日志74),使得当接收到该通知数据时,分配模块72可以在该装置连接日志74中执行查找以确定哪一个计算装置应当接收该通知数据。
分配模块72可以确定(102)该计算装置是当前离线的。例如,当从该托管了游戏应用的本地服务器中接收到通知数据时,分配模块72可以试图使用无线(例如,蜂窝)连接或者互联网连接发送该通知数据。但是,计算装置当前可能不能够从服务器17接收通知数据。例如,该计算装置可能处于阻止从蜂窝网络或者互联网服务输入的信号的模式,诸如通常称为“飞行模式”。在其他示例中,该计算装置可以地理上位于没有蜂窝服务或者互联网连接的区域。在任意情况下,如果分配模块72没有在预定响应时间阈值内从该计算装置接收到交互事件,则分配模块72可以确定该计算装置当前不能够接收和处理来自通信单元62的信号以获得通知数据。交互事件可以是来自该计算装置的指示该计算装置接收到通知数据的任意类型的确认。
响应于确定该计算装置是当前离线的,分配模块72可以使用装置连接日志74识别(104)一个或者多个共享装置的组。分配模块72可以选择当前能够与服务器17通信的共享装置中的一个并且将通知包发送到所选择的共享装置。该通知包可以包括分配模块72接收的原始通知数据、与通知账户相关联的账户标识符、以及与计算装置相关联的装置标识符。在附图5的示例中,当确定该计算装置是当前离线的而不是等待该计算装置来恢复接入到蜂窝或者互联网时,分配模块72可以替代地将包括该通知数据的通知包发送(106)到从装置连接日志74中识别的共享装置。
在选择该共享装置时,分配模块72可以基于多个信息片段来删减一个或者多个共享装置的组从而不会使任意特定共享装置负担过重或者从而最有效地将通知数据传输到计算装置。例如,分配模块72可以至少部分地基于以下来删减该一个或者多个共享装置的组:在服务器17的队列中的多个通知、指示该一个或者多个共享装置的组中的每一个相应共享装置何时最后与服务器17通信的该相应共享装置的时间戳、在该一个或者多个共享装置的组中的每一个相应共享装置的相应队列中的多个通知、或者该一个或者多个共享装置的组中的每一个相应共享装置将通知数据发送到该计算装置的预定时间量内的多个实例。分配模块72可以删减最近没有与服务器17通信的共享装置、具有必须被传输的大量通知数据的实例的共享装置、或者最近没有将该通知数据发送到该期望的接收者的共享装置。
该一个或者多个共享装置的组可以是存储在装置连接日志74中的列表。分配模块72可以基于多个所识别的共享装置来构建这一列表。例如,分配模块72可以从共享装置接收令牌。在一些示例中,该令牌可以包括与该计算装置相关联的装置标识符、与计算装置相关联的通知账户的账户标识符、以及共享装置的装置标识符。在其他示例中,该令牌可以是仅仅包括共享装置的装置标识符的第一令牌。在这样的示例中,分配模块72还可以从该共享装置中接收包括该计算装置的装置标识符以及与该计算装置相关联的通知账户的账户标识符的第二令牌。分配模块72可以随后将该第一令牌和该第二令牌串连接从而产生包括共享装置的装置标识符、计算装置的装置标识符、以及与计算装置相关联的通知账户的账户标识符中的每一个的第三令牌。在任意示例中,分配模块72可以从该接收到的令牌中提取信息并且将该信息存储在装置连接日志74中。分配模块72可以随后从该装置连接日志74中选择该共享装置,其中装置连接日志74列出之前已经与该计算装置交换数据的所有共享装置。
在这一点上,在一些示例中,该共享装置随后承担将该通知数据传输到该计算装置的任务。在其他示例中,分配模块72可以仍然尝试将通知数据发送到计算装置。在这样的示例中,分配模块72可以对该通知数据执行竞态条件。具体地,分配模块72可以继续尝试将通知数据发送到计算装置直到分配模块72成功将通知数据发送到计算装置或者分配模块72从该共享装置接收到该计算装置已经成功从该共享装置接收该通知数据的指示。一旦这些条件中的任意条件发生,分配模块72可以终止尝试将该通知数据发送到期望的接收装置。
在一些示例中,分配模块72可以附加地将用于通知数据的到期日期发送到共享装置。到期日期可以指示如果通信装置尚未将通知数据传输到计算装置,则共享装置将从外部通知队列中删除该通知数据的时间。在这样的示例中,如果到期日期已经过去并且共享装置尚未将通知数据传输到第二计算装置,则共享装置可以进行至从外部通知队列中删除该通知数据。通过包括到期日期,共享装置不会在无限的时间量内负担存储通知数据。该到期日期可以是其能够合理地期望第二计算装置将在某些点连接到服务器装置的时间量。例如,到期日期可以是一天、三天、一周,或者任意其他合理地确定的时间量。
附图6是根据本公开的一个或者多个方面的,图示出了实现用于将从服务器装置接收的通知数据发送到计算装置的技术的共享装置的示例性操作。附图4的技术可以通过计算装置的一个或者多个处理器来执行,诸如附图1和/或附图2中所图示的计算装置4。为了说明的目的,附图6的技术在附图1的计算装置4的场境中描述,尽管具有不同于计算装置4的配置的计算装置可以执行附图6的技术。描述的一个或者多个步骤可以是可选的并且不是在附图6的流程图中描述/示出的每一个步骤都被需要来执行本公开的技术。
根据本公开的技术,通信模块10可以经由通信单元6从服务器装置接收(200)对将通知数据转发到第二计算装置的请求。该请求可以包括该通知数据自身以及装置标识符。例如,通信模块10可以经由通信单元6从第二计算装置的新闻应用接收关于新闻报警的通知数据。如果服务器装置当前不能够与第二计算装置通信以便于将通知数据直接发送到第二通信装置的目的,则通信模块6可以替代地代表第二计算装置来接收该通知数据。通信模块10还可以接收指示该计算装置是该通知数据的期望接收者(例如,该第二接收装置)的装置标识符。当接收到该请求时,通信模块10可以在队列8中存储该通知数据以及该装置标识符直到通信模块10能够将该通知数据转发到该第二通信装置。
计算装置4以及作为该通知数据期望的接收者的第二计算装置可以在过去在一些点上已经交换数据包了。例如,在接收到该请求之前,通信模块10可以经由非-互联网协议将数据发送到第二计算装置。这一数据可以是文本消息、视频数据、图像数据、或者指示计算装置4和第二计算装置在一些点上彼此已经大体相邻并且将来在一些点上还可以再次在彼此通信范围内任意其他通信。在这一数据交换期间,通信模块10可以从第二计算装置接收第一令牌。该第一令牌可以包括第二计算装置的装置标识符和与第二计算装置相关联的通知账户的账户标识符。通信模块10可以随后将标识符信息发送到服务器装置。该标识符信息可以包括该第一令牌和包括用于计算装置4的装置标识符的第二令牌。在一些示例中,通信模块10可以将两个令牌组合为单个令牌以形成标识符信息。在其他示例中,通信模块10可以将该两个令牌作为独立的数据目标发送到该服务器装置。该服务器装置可以使用这一标识符信息来追踪:该服务器装置可以将用于计算装置4的通知数据还是用于第二计算装置的通知数据发送给其他计算装置,并且合理地期待该通知数据将被传输。
通信模块10可以检测计算装置4的通信单元6何时能够诸如非-互联网协议与第二计算装置连接。一旦计算装置4和该第二计算装置彼此通信,通信模块10可以将与第二计算装置相关联的装置标识符与包括在从该服务器装置接收的请求中的装置标识符比较从而确定(202)所述装置标识符是否匹配(202)。这确保了计算装置4正在发送通知数据给正确的接收者,由于可能存在这样的示例,其中服务器装置使用计算装置4来将通知数据转发到多个接收者计算装置并且通信模块10将通知数据和装置标识符的多个实例存储在通知队列8中。例如,通知队列8可以同时保持用于该第二计算装置的新闻报警、用于第三计算装置的社交网络更新、以及用于第四计算装置的视频通知。
响应于确定与第二计算装置相关联的装置标识符与包括在从该服务器装置接收的请求中的装置标识符匹配,通信模块10可以将通知数据转发(204)到第二通信装置。例如,通信模块10可以使用通信单元6来确定第二计算装置是否在计算装置4的诸如非-互联网协议的通信协议的通信范围内。当计算装置4和第二计算装置连接时(例如,该两个装置在诸如非-互联网协议的通信协议的通信范围内并且自动或者手动地连接),通信模块10可以使用存储在通知队列8中的装置标识符确定第二计算装置是否是从该服务器装置接收的通知数据的期望的接收者。通信模块10可以使用该非-互联网协议使用通信单元6将通知数据发送到的第二计算装置。在一些示例中,非-互联网协议可以是协议或者近场通信协议。
即使该服务器装置接收的原始数据可以包括通知账户信息,通信模块10可以在将该通知数据转发到该第二计算装置时忽视该通知账户信息。由于单个计算装置可以与多个不同账户相关联,甚至在相同的应用或者服务内(例如,该第二计算装置可以与在发起该通知数据的新闻应用中的多个订户账户相关联),该账户信息可以对于该通知数据自身的传输无关紧要。为了有效地传输该通知数据,通信模块10可以基于所述装置标识符的确定的比较来简单地使用通信单元6将该通知数据转发到第二计算装置。
在一些示例中,通信模块10可以记录与在通知队列8中的通知数据相关联的时间戳。该时间戳可以指示该通知数据被从该服务器装置中接收的时间。在这一示例中,通信模块10可以将该时间戳与该通知数据发送到该第二计算装置。该时间戳帮助第二计算装置确定该通知数据是否仍然是相关的。例如,计算装置4可以不知道第二计算装置是否在从通信模块10接收该通知数据开始的时间中已经从该中央服务器中接收到通知数据。在这样的示例中,当第二计算装置从第一计算装置中接收到通知数据时,第二计算装置可以将该通知数据的时间戳连接至服务器装置的第二计算装置的最后实例的内部追踪时间比较。如果该通知数据的时间戳比该内部追踪的时间更近,则第二计算装置可以确定该通知数据是相关的。如果该时间戳不如该内部追踪的时间接近,则该第二计算装置可以忽视接收到的通知数据。
在一些示例中,在将通知数据发送到第二计算装置后,通信模块10可以接收第二计算装置已经从通信模块10接收到该通知数据的指示,诸如确认消息。在这一示例中,通信模块10可以将该指示转发到服务器装置。这能使得该服务器装置知道通信模块10完成了将该通知数据发送到该期望的接收者的过程。
在一些示例中,当将通知数据转发到第二计算装置时,通信模块10可以将该通知数据转发到中间计算装置,其进而将该通知数据转发到该第二计算装置。计算装置4可以是经由互联网连接连接到服务器装置的综合办公楼的本地主机装置。在某些非限制的示例中,该第二计算装置的用户可以是工作在容纳计算装置4的该综合办公楼的人的配偶。在这一示例中,服务器装置可以确定在工作日期间将该通知数据有效地传输到第二计算装置的最佳路由是将该通知数据发送到在该综合办公楼中的该本地主机装置。在该综合办公楼中的本地主机装置可以随后将该通知数据转发到由该人使用的计算装置中,其在容纳该本地主机装置(例如计算装置4)的该综合办公楼中工作。当在容纳该本地主机装置的该综合办公楼中工作的人带着他们的中间计算装置回家的时候,该中间计算装置可以将该通知数据转发到该期望的接收者,或者职员的配偶所使用的第二计算装置。
在一些其他的示例中,通信模块10可以连同通知数据一起,从该服务器装置接收用于该通知数据的到期日期。该到期日期可以指示如果通信模块10尚未将该通知数据传输到该第二计算装置则该通信模块10将从该通知队列8中删除该通知数据的时间。在这样的示例中,响应于确定该到期日期已经过去并且通信装置10尚未将该通知数据传输到该第二计算装置,通信模块10可以进行至从通知队列8中删除该通知数据。通过包括到期日期,计算装置4不会在无限的时间量内负担存储该通知数据。该到期日期可以是其能够合理地期望第二计算装置将在某些点连接到服务器装置的时间量。例如,该到期数据可以是一天、三天、一周,或者任意其他合理地确定的时间量。
示例1.一种方法,包括:由服务器装置接收用于与计算装置相关联的通知账户的通知数据;由该服务器装置确定该计算装置是当前离线的;以及响应于确定该计算装置是当前离线的:由该服务器装置识别一个或者多个共享装置的组;并且由该服务器发送通知包给该一个或者多个共享装置的组中的共享装置,其中该通知包包括该通知数据、与该通知账户相关联的账户标识符、以及与该计算装置相关联的装置标识符。
示例2.根据示例1所述的方法,其中,确定该计算装置是当前离线的包括:由该服务器装置将该通知数据发送到该计算装置并且响应于该服务器装置没有在预定响应时间阈值内从该计算装置接收到交互事件,而由该服务器装置确定该计算装置是当前离线的。
示例3.根据示例1或者2中的任意一项所述的方法,进一步包括:至少部分地基于在服务器装置上的队列中的多个通知、用于该一个或者多个共享装置的组中的每一个相应的共享装置的指示该共享装置最近与该服务器装置通信的时间的时间戳、在用于该一个或者多个共享装置的组中的每一个相应共享装置的相应队列中的多个通知、或者在该一个或者多个共享装置的组中的每一个相应共享装置将通知数据发送到该计算装置的预定时间量内的多个实例,来由该服务器装置删减所述一个或者多个共享装置的组。
示例4.根据示例1-3中的任意一项所述的方法,其中识别所述一个或者多个共享装置的组包括:由该服务器装置,识别该共享装置;以及由该服务器装置构建所述一个或者多个共享装置的组以包括该共享装置。
示例5.根据示例4所述的方法,其中识别该共享装置包括;由该服务器装置从该共享装置接收令牌。
示例6.根据示例5所述的方法,其中该令牌包括与该计算装置相关联的装置标识符、与该计算装置相关联的通知账户的账户标识符、以及该共享装置的装置标识符。
示例7.根据示例5所述的方法,其中该令牌包括该共享装置的装置标识符的第一令牌,并且其中识别该共享装置还包括:由该服务器装置从该共享装置接收第二令牌,其中该第二令牌包括该计算装置的装置标识符以及与该计算装置相关联的该通知账户的账户标识符;以及,由该服务器装置,将该第一令牌和该第二令牌串连接以产生第三令牌,其中该第三令牌包括该共享装置的装置标识符、该计算装置的装置标识符、以及与该计算装置相关联的通知账户的账户标识符。
示例8.根据示例1-7中的任意一项所述的方法,其中识别所述一个或者多个共享装置的组包括:由该服务器装置,从列出了先前已经与该计算装置交换数据的共享装置的日志中选择出该共享装置。
示例9.根据示例1-8中的任意一项所述的方法,进一步包括:由该服务器装置并且从该共享装置接收该计算装置已经从该共享装置接收到该通知数据的指示。
示例10.根据示例1-9中的任意一项所述的方法,进一步包括:由该服务器装置将用于该通知数据的到期日期发送给该共享装置,其中该到期日期指示如果该共享装置还没有将该通知数据传输到该计算装置,则该共享装置将要删除该通知数据的时间。
示例11.一种方法,包括:由第一计算装置并且从服务器接收对将通知数据转发到第二计算装置的请求,其中该请求包括该通知数据和装置标识符;由该第一计算装置确定与该第二计算装置相关联的装置标识符与包括在该请求中的装置标识符匹配;以及响应于由该第一计算装置确定与该第二计算装置相关联的装置标识符与包括在该请求中的所述装置标识符匹配,而由该第一计算装置将该通知转发到该第二计算装置。
示例12.根据示例11所述的方法,进一步包括:由该第一计算装置确定,该第二计算装置是否在该第一计算装置的通信范围内;以及响应于确定该第二计算装置在该第一计算装置的通信范围内并且与该第二计算装置相关联的该装置标识符与包括在该请求中的该装置标识符匹配:由该第一计算装置将该通知数据转发到该第二计算装置。
示例13.根据示例11或者12中的任意一项所述的方法,其中转发该通知数据包括:由该第一计算装置经由非-互联网协议连接到该第二计算装置,以及由该第一计算装置通过所述非-互联网协议将该通知数据发送到该第二计算装置。
示例14.示例13的方法,其中该非-互联网协议包括协议或者近场通信协议。
示例15.根据示例11-14中的任意一项所述的方法,进一步包括:由该第一计算装置将指示何时从该服务器接收到该通知数据的的时间的时间戳发送到该第二计算装置。
示例16.根据示例11-15中的任意一项所述的方法,进一步包括:响应于将该通知数据转发到该第二计算装置:由该第一计算装置接收该第二计算装置已经从该第一计算装置接收到通知数据的指示;以及由该第一计算装置将该指示转发到该服务器装置。
示例17.根据示例11-16中的任意一项所述的方法,进一步包括:在接收到该请求之前,由该第一计算装置将数据发送到该第二计算装置;由该第一计算装置从该第二计算装置接收第一令牌,其中该第一令牌包括该第二计算装置的装置标识符以及与该第二计算装置相关联的通知账户的账户标识符;以及由该第一计算装置将标识符信息发送到该服务器装置,其中该标识符信息包括该第一令牌和包括第一计算装置的装置标识符的第二令牌。
示例18.根据示例11-17中的任意一项所述的方法,其中将该通知数据转发到该第二计算装置包括:由该第一计算装置将该通知数据经由该中间计算装置转发到该第二计算装置。
示例19.示例11-18中的任意一项所述的方法,进一步包括:由该第一计算装置从该服务器装置接收用于该通知数据的到期日期,其中该到期日期指示如果该第一计算装置还没有将该通知数据传输到该第二计算装置,则该第一计算装置将删除该通知数据的时间;并且响应于确定该到期日期已经过去并且该第一计算装置还没有将该通知数据传输到该第二计算装置,而由该第一计算装置将该通知数据从该第一计算装置的存储器中删除。
示例20.一种系统,包括:一个或者多个共享装置的组中的共享装置;和服务器装置,其被配置为:接收与计算装置相关联的通知账户的通知数据;确定该计算装置是当前离线的;以及响应于确定该计算装置是当前离线的,识别一个或者多个共享装置的组;并且将通知包发送给该共享装置,其中该通知包包括该通知数据、与该通知账户相关联的账户标识符、以及与该计算装置相关联的装置标识符,其中该共享装置还被配置为:从该服务器装置接收该通知包,以及响应于由该共享装置确定与该计算装置相关联的装置标识符与包括在该通知包中的该装置标识符匹配,将该通知数据转发到该第二计算装置。
示例21.一种装置,包括用于执行示例1-19的任意组合所述的方法的装置。
示例22.一种编码有指令的计算机可读存储介质,所述指令当被执行时,使得计算装置的至少一个处理器执行示例1-19的任意组合所述的方法。
示例23.一种装置,包括可以被一个或者多个处理器操作来执行示例1-19的任意组合所述的方法的至少一个模块。
示例24.一种计算装置,包括:至少一个处理器;以及存储指令的计算机可读存储装置/介质,所述指令当由该至少一个处理器执行时,使得该至少一个处理器:接收与计算装置相关联的通知账户的通知数据;确定该计算装置是当前离线的;以及响应于确定该计算装置是当前离线的:识别一个或者多个共享装置的组;以及将通知包发送到一个或者多个共享装置的组中的共享装置,其中该通知包包括该通知数据、与该通知账户相关联的账户标识符、以及与该计算装置相关联的装置标识符。
示例25.示例24的计算装置,其中所述指令当由至少一个处理器执行时,还使得该至少一个处理器执行示例2-10的任意组合所述的方法。
示例26.一种计算装置,包括:至少一个处理器;以及存储指令的计算机可读存储装置/介质,所述指令当由该至少一个处理器执行时,使得该至少一个处理器:从服务器装置接收对将通知数据转发到第二计算装置的请求,其中该请求包括该通知数据和装置标识符;确定与该第二计算装置相关联的装置标识符与包括在该请求中的装置标识符匹配;以及响应于确定与该第二计算装置相关联的该装置标识符与包括在该请求中的装置标识符匹配,而将该通知数据转发到该第二计算装置。
示例27.根据示例26所述的计算装置,其中所述指令当由至少一个处理器执行时,进一步使得该至少一个处理器执行示例12-19的任意组合所述的方法。
通过举例的方式,并且非限制性的,这样的计算机可读存储介质可以包括RAM、ROM、EEPROM、CD-ROM或者其他光盘存储、磁盘存储、其他磁存储装置、闪存、或者能够被用于以指令或数据结构的形式存储能够被计算机访问的期望的程序代码的任意其它介质。同样,任意连接被合适地称为术语计算机可读介质。例如,如果指令是使用同轴电缆、光纤电缆、双绞线、数字用户线路(DSL)、或者诸如红外、射频、以及微波的无线技术从网站、服务器,或者其他远程源传输的,则该同轴电缆、光纤电缆、双绞线、DSL、或者诸如红外、射频,以及微波的无线技术包括在介质的定义中。但是,应当理解该计算机可读存储介质和数据存储介质不包括连接、载波、信号、或者其他传送媒体,但是替代地涉及非-短暂的、有形的存储媒体。磁盘或者光盘,如使用的,包括光盘(CD)、激光盘、光盘、数字可视盘(DVD)、软盘和蓝光盘,其中磁盘通常磁性地再现数据,而光盘采用激光来光学地再现数据。上述的组合也应当包括在计算机可读媒体的范围内。
指令可以被一个或者多个处理器执行,诸如一个或者多个数字信号处理器(DSP)、通用目的微处理器、专用集成电路(ASIC)、现场可编程路基门阵列(FPGA),或者其他等效的集成的或者离散的逻辑电路。因此,如所使用的术语“处理器”可以涉及任意前述结构或者任意其他适合于实现描述的技术的结构。此外,在一些方面,所描述的功能可以被提供在专用硬件和/或软件模块中。同样,该技术可以被完全实现在一个或者多个电路或者逻辑元件中。
本公开的该技术可以实现在很多种装置或者设备中,包括无线手机、集成电路(IC)或者一组IC(例如芯片组)。在本公开中描述各种部件、模块、或者单元以强调配置为执行所公开的技术的装置的功能性的方法,而不是必须要通过不同的硬件单元来实现。此外,如上所述,各种单元可以被组合在硬件单元中或者通过可交互操作的硬件单元的集合来提供,包括如上所述的一个或者多个处理器,以及合适的软件和/或硬件。
应当可以识别根据该实施例,在此描述的任意方法的某些动作或者事件可以按照不同序列执行,可以被增加、减少、或者一起省略(例如,不是所有描述的动作或者事件对于该方法的实践都是必须要的)。此外,在某些实施例中,动作或者事件可以被同时执行而不是顺序执行,例如,通过多线程处理、中断处理、或者多处理器。
在一些示例中,计算机可读存储介质可以包括非-暂时性介质。该术语“非-暂时性”可以指示该存储介质没有实现为载波或者传播信号。在某些示例中,非-暂时性存储介质可以存储能够随着时间改变的数据(例如,在RAM或者高速缓存中)。
已经描述了本公开的各种示例。所描述的系统、操作,或者功能的任意组合是可以预期的。这些以及其他示例都包括在后续的权利要求的范围内。
Claims (21)
1.一种用于离线对等辅助通知传输的方法,包括:
由服务器装置接收用于与计算装置相关联的通知账户的通知数据;
由所述服务器装置确定所述计算装置是当前离线的;以及
响应于确定所述计算装置是当前离线的:
由所述服务器装置识别一个或者多个共享装置的组;以及
由所述服务器发送通知包到所述一个或者多个共享装置的组中的共享装置,其中,所述通知包包括所述通知数据、与所述通知账户相关联的账户标识符、以及与所述计算装置相关联的装置标识符。
2.根据权利要求1所述的方法,其中,确定所述计算装置是当前离线的包括:
由所述服务器装置将所述通知数据发送到所述计算装置;以及
响应于所述服务器装置没有在预定响应时间阈值内从所述计算装置接收到交互事件,而由所述服务器装置确定所述计算装置是当前离线的。
3.根据权利要求1所述的方法,进一步包括:
至少部分地基于在所述服务器装置上的队列中的多个通知、用于所述一个或者多个共享装置的组中的每一个相应的共享装置的指示所述相应的共享装置最近与所述服务器装置通信的时间的时间戳、在用于所述一个或者多个共享装置的组中的每一个相应共享装置的相应队列中的多个通知、或者在预定时间量内在所述一个或者多个共享装置的组中的每一个相应共享装置将通知数据发送到所述计算装置的多个实例,来由所述服务器装置删减所述一个或者多个共享装置的组。
4.根据权利要求1所述的方法,其中,识别所述一个或者多个共享装置的组包括:
由所述服务器装置识别所述共享装置;以及
由所述服务器装置构建所述一个或者多个共享装置的组以包括所述共享装置。
5.根据权利要求4所述的方法,其中,识别所述共享装置包括:
由所述服务器装置从所述共享装置接收令牌。
6.根据权利要求5所述的方法,其中,所述令牌包括与所述计算装置相关联的所述装置标识符、与所述计算装置相关联的所述通知账户的所述账户标识符、以及所述共享装置的装置标识符。
7.根据权利要求5所述的方法,其中,所述令牌包括包含所述共享装置的装置标识符的第一令牌,并且其中,识别所述共享装置还包括:
由所述服务器装置从所述共享装置接收第二令牌,其中,所述第二令牌包括所述计算装置的装置标识符以及与所述计算装置相关联的所述通知账户的账户标识符;以及
由所述服务器装置将所述第一令牌和所述第二令牌串连接以产生第三令牌,其中,所述第三令牌包括所述共享装置的所述装置标识符、所述计算装置的所述装置标识符、以及与所述计算装置相关的所述通知账户的所述账户标识符。
8.根据权利要求1所述的方法,其中,识别所述一个或者多个共享装置的组包括:
由所述服务器装置从列出了先前已经与所述计算装置交换数据的所有共享装置的日志中选择出所述共享装置。
9.根据权利要求1所述的方法,进一步包括:
由所述服务器装置并且从所述共享装置接收所述计算装置已经从所述共享装置接收到所述通知数据的指示。
10.根据权利要求1所述的方法,进一步包括:
由所述服务器装置将用于所述通知数据的到期日期发送至所述共享装置,其中,所述到期日期指示如果所述共享装置还没有将所述通知数据传输到所述计算装置则所述共享装置将要删除所述通知数据的时间。
11.一种离线对等辅助通知传输的方法,包括:
由第一计算装置从服务器装置接收对将通知数据转发到第二计算装置的请求,其中,所述请求包括所述通知数据和装置标识符;
由所述第一计算装置确定与所述第二计算装置相关联的装置标识符与包括在所述请求中的所述装置标识符匹配;以及
响应于由所述第一计算装置确定与所述第二计算装置相关联的所述装置标识符与包括在所述请求中的所述装置标识符匹配,而由所述第一计算装置将所述通知数据转发到所述第二计算装置。
12.根据权利要求11所述的方法,进一步包括:
由所述第一计算装置确定所述第二计算装置是否在所述第一计算装置的通信范围内;以及
响应于确定所述第二计算装置在所述第一计算装置的通信范围内并且与所述第二计算装置相关联的所述装置标识符与包括在所述请求中的所述装置标识符匹配:
由所述第一计算装置将所述通知数据转发到所述第二计算装置。
13.根据权利要求11所述的方法,其中,转发所述通知数据包括:
由所述第一计算装置经由一非互联网协议连接到所述第二计算装置;以及
由所述第一计算装置通过所述非互联网协议将所述通知数据发送到所述第二计算装置。
14.根据权利要求13所述的方法,其中,所述非互联网协议包括蓝牙协议或者近场通信协议。
15.根据权利要求11所述的方法,进一步包括:
由所述第一计算装置将指示何时从所述服务器接收到所述通知数据的时间的时间戳发送到所述第二计算装置。
16.根据权利要求11所述的方法,进一步包括:
响应于将所述通知数据转发到所述第二计算装置:
由所述第一计算装置接收所述第二计算装置已经从所述第一计算装置接收到所述通知数据的指示;以及
由所述第一计算装置将所述指示转发到所述服务器装置。
17.根据权利要求11所述的方法,进一步包括:
在接收到所述请求之前,由所述第一计算装置将数据发送到所述第二计算装置;
由所述第一计算装置从所述第二计算装置接收第一令牌,其中,所述第一令牌包括所述第二计算装置的所述装置标识符以及与所述第二计算装置相关联的通知账户的账户标识符;以及
由所述第一计算装置将标识符信息发送到所述服务器装置,其中,所述标识符信息包括所述第一令牌和包含所述第一计算装置的装置标识符的第二令牌。
18.根据权利要求11所述的方法,其中,将所述通知数据转发到所述第二计算装置包括:
由所述第一计算装置将所述通知数据经由中间计算装置转发到所述第二计算装置。
19.根据权利要求11所述的方法,进一步包括:
由所述第一计算装置从所述服务器装置接收用于所述通知数据的到期日期,其中所述到期日期指示如果所述第一计算装置还没有将所述通知数据传输到所述第二计算装置则所述第一计算装置将删除所述通知数据的时间;以及
响应于确定所述到期日期已经过去并且所述第一计算装置还没有将所述通知数据传输到所述第二计算装置,而由所述第一计算装置将所述通知数据从所述第一计算装置的存储器中删除。
20.一种服务器装置,包括:
至少一个处理器;以及
存储指令的计算机可读存储装置/介质,所述指令在由所述至少一个处理器执行时使得所述至少一个处理器执行根据权利要求1-10中任何一项的方法。
21.一种第一计算装置,包括:
至少一个处理器;以及
存储指令的计算机可读存储装置/介质,所述指令在由所述至少一个处理器执行时使得所述至少一个处理器执行根据权利要求11-19中任何一项的方法。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662337700P | 2016-05-17 | 2016-05-17 | |
US62/337,700 | 2016-05-17 | ||
US15/210,843 | 2016-07-14 | ||
US15/210,843 US10064025B2 (en) | 2016-05-17 | 2016-07-14 | Offline peer-assisted notification delivery |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107395658A true CN107395658A (zh) | 2017-11-24 |
CN107395658B CN107395658B (zh) | 2020-10-02 |
Family
ID=57861255
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611273013.1A Active CN107395658B (zh) | 2016-05-17 | 2016-12-30 | 离线对等辅助通知传输 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10064025B2 (zh) |
CN (1) | CN107395658B (zh) |
DE (2) | DE102016125808B4 (zh) |
GB (1) | GB2550451B (zh) |
WO (1) | WO2017200592A1 (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11172273B2 (en) | 2015-08-10 | 2021-11-09 | Delta Energy & Communications, Inc. | Transformer monitor, communications and data collection device |
US10055869B2 (en) | 2015-08-11 | 2018-08-21 | Delta Energy & Communications, Inc. | Enhanced reality system for visualizing, evaluating, diagnosing, optimizing and servicing smart grids and incorporated components |
CN105187282B (zh) * | 2015-08-13 | 2018-10-26 | 小米科技有限责任公司 | 智能家居设备的控制方法、装置、系统及设备 |
WO2017041093A1 (en) | 2015-09-03 | 2017-03-09 | Delta Energy & Communications, Inc. | System and method for determination and remediation of energy diversion in a smart grid network |
CA3000206C (en) | 2015-10-02 | 2023-10-17 | Delta Energy & Communications, Inc. | Supplemental and alternative digital data delivery and receipt mesh network realized through the placement of enhanced transformer mounted monitoring devices |
US10476597B2 (en) | 2015-10-22 | 2019-11-12 | Delta Energy & Communications, Inc. | Data transfer facilitation across a distributed mesh network using light and optical based technology |
WO2017147476A1 (en) | 2016-02-24 | 2017-08-31 | Delta Energy & Communications, Inc. | Distributed 802.11s mesh network using transformer module hardware for the capture and transmission of data |
US10652633B2 (en) * | 2016-08-15 | 2020-05-12 | Delta Energy & Communications, Inc. | Integrated solutions of Internet of Things and smart grid network pertaining to communication, data and asset serialization, and data modeling algorithms |
US10382376B2 (en) * | 2016-09-23 | 2019-08-13 | Microsoft Technology Licensing, Llc | Forwarding notification information regardless of user access to an application |
US11196830B2 (en) * | 2018-02-12 | 2021-12-07 | International Business Machines Corporation | Delivering messages to offline devices using peer-to-peer communication |
US10938949B2 (en) * | 2018-05-21 | 2021-03-02 | Sap Se | Notifications based on queues |
US11144620B2 (en) * | 2018-06-26 | 2021-10-12 | Counseling and Development, Inc. | Systems and methods for establishing connections in a network following secure verification of interested parties |
CN114556976A (zh) * | 2019-08-14 | 2022-05-27 | 昕诺飞控股有限公司 | 由服务器与互连节点设备网络的节点设备进行通信的方法和布置 |
CN113747374B (zh) * | 2021-07-30 | 2023-01-06 | 荣耀终端有限公司 | 一种消息推送方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101183967A (zh) * | 2006-11-14 | 2008-05-21 | 华为技术有限公司 | 一种用户驻地设备离线通知方法及装置 |
CN101877106A (zh) * | 2010-04-08 | 2010-11-03 | 苏州德融嘉信信用管理技术有限公司 | 网上银行离线客户端系统及其运用方法 |
CN102149105A (zh) * | 2010-02-10 | 2011-08-10 | 电信科学技术研究院 | 离线通知的方法、系统和设备 |
US20110296514A1 (en) * | 2010-05-26 | 2011-12-01 | Koennecke Joerge | Method for creating a personalized insignia |
CN104079422A (zh) * | 2013-03-28 | 2014-10-01 | 纬创资通股份有限公司 | 管理网络设备的方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070296805A1 (en) | 2006-06-21 | 2007-12-27 | Sony Ericsson Mobile Communications Ab | Mobile content sharing |
JP2009164783A (ja) | 2007-12-28 | 2009-07-23 | Casio Comput Co Ltd | 携帯電話システムおよび腕装着型端末 |
US8064896B2 (en) | 2009-03-09 | 2011-11-22 | Apple Inc. | Push notification service |
EP2254309A1 (en) | 2009-05-20 | 2010-11-24 | Thomson Licensing | Method for sending data of a service |
US9215735B2 (en) * | 2010-03-03 | 2015-12-15 | Modena Enterprises, Llc | Systems and methods for initiating communications with contacts based on a communication specification |
US9179256B1 (en) | 2011-11-15 | 2015-11-03 | Amazon Technologies, Inc. | Context-based alert delivery |
US20130346494A1 (en) | 2012-06-22 | 2013-12-26 | Motorola Mobility, Inc. | Cloud-based system and method for sharing media among closely located devices |
US9961494B2 (en) | 2012-08-14 | 2018-05-01 | Google Llc | Sharing content with nearby devices |
US9756115B2 (en) | 2012-11-08 | 2017-09-05 | Gpvtl Canada Inc. | System and method of secure file sharing using P2P |
US9288164B2 (en) | 2013-06-07 | 2016-03-15 | Apple Inc. | Managing notifications across multiple devices |
US9654581B2 (en) | 2014-05-30 | 2017-05-16 | Apple Inc. | Proxied push |
WO2016184531A1 (en) | 2015-05-19 | 2016-11-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Connectivity management mechanism for multi-hop capillary networks |
-
2016
- 2016-07-14 US US15/210,843 patent/US10064025B2/en active Active
- 2016-12-22 GB GB1621982.6A patent/GB2550451B/en active Active
- 2016-12-28 DE DE102016125808.3A patent/DE102016125808B4/de active Active
- 2016-12-28 DE DE202016008208.7U patent/DE202016008208U1/de active Active
- 2016-12-28 WO PCT/US2016/068965 patent/WO2017200592A1/en active Application Filing
- 2016-12-30 CN CN201611273013.1A patent/CN107395658B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101183967A (zh) * | 2006-11-14 | 2008-05-21 | 华为技术有限公司 | 一种用户驻地设备离线通知方法及装置 |
CN102149105A (zh) * | 2010-02-10 | 2011-08-10 | 电信科学技术研究院 | 离线通知的方法、系统和设备 |
CN101877106A (zh) * | 2010-04-08 | 2010-11-03 | 苏州德融嘉信信用管理技术有限公司 | 网上银行离线客户端系统及其运用方法 |
US20110296514A1 (en) * | 2010-05-26 | 2011-12-01 | Koennecke Joerge | Method for creating a personalized insignia |
CN104079422A (zh) * | 2013-03-28 | 2014-10-01 | 纬创资通股份有限公司 | 管理网络设备的方法 |
Also Published As
Publication number | Publication date |
---|---|
DE202016008208U1 (de) | 2017-04-27 |
DE102016125808B4 (de) | 2021-06-24 |
GB2550451A (en) | 2017-11-22 |
US20170339536A1 (en) | 2017-11-23 |
WO2017200592A1 (en) | 2017-11-23 |
CN107395658B (zh) | 2020-10-02 |
GB2550451B (en) | 2019-01-23 |
DE102016125808A1 (de) | 2017-11-23 |
US10064025B2 (en) | 2018-08-28 |
GB201621982D0 (en) | 2017-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107395658A (zh) | 离线对等辅助通知传输 | |
CN111008839B (zh) | 资源转移数据管理方法、装置及存储介质 | |
CN103348633B (zh) | 用于管理不同的服务提供方之间的点对点连接的装置和方法 | |
TWI458369B (zh) | 用於建立及使用備用通信頻道之裝置及方法 | |
CN104040943B (zh) | 基于电力消耗和社交因素的控制通知 | |
CN107079050A (zh) | 服务层会话迁移和共享 | |
CN103220325B (zh) | 用于在云计算环境中管理硬件组件的方法和系统 | |
CN110024352A (zh) | 用于iot装置的分散式数据存储和处理 | |
CN111355780A (zh) | 一种基于区块链的物联网监控管理方法及系统 | |
CN102215121B (zh) | 用于建立和利用备份通信信道的装置和方法 | |
CN107533747A (zh) | 用于将通知传送到订户的技术 | |
US20120072848A1 (en) | System and method for social collection | |
CN106416208A (zh) | 通过主机使用客户端接听呼叫 | |
CN106688224A (zh) | 存储应用数据及设备之间传送应用数据 | |
CN104769894B (zh) | 优化针对从单个设备访问应用的诸用户的离线消息(网络历史)递送 | |
CN102833224A (zh) | 信息处理设备、服务器设备、信息处理方法和程序 | |
CN102934413A (zh) | 智能电话管理系统和方法 | |
CN108028857A (zh) | 智能通知 | |
CN106464737B (zh) | 信使网络服务装置及方法 | |
CN102215274B (zh) | 用于邀请用户到在线会话的设备和方法 | |
CN104301436A (zh) | 待显示内容推送、订阅、更新方法及其相应的装置 | |
CN105453058B (zh) | 目录服务发现和/或学习 | |
JP6681146B2 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
CN107241416A (zh) | 共享舱的管理方法及终端设备 | |
CN106411920A (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 | ||
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 |