经由文件共享服务同步的推送通知的制作方法

文档序号:7809218阅读:316来源:国知局
经由文件共享服务同步的推送通知的制作方法
【专利摘要】实施例涉及经由文件共享服务同步的推送通知。一种系统包括计算机处理器以及该计算机处理器可执行的移动平台服务器。该移动平台服务器包括通知服务,配置为经由文件共享服务建立与客户端移动装置的文件共享容器的客户端到服务器目录的同步。该通知服务进一步配置为在客户端到服务器目录中检测来自客户端移动装置的通知并且确定与通知关联的端点以及与该端点关联的通知传输协议。该通知服务还配置为选择与该通知传输协议关联的信道插件以建立与该端点的通知信道并基于通知在该通知信道上发送通知触发到该端点。
【专利说明】经由文件共享服务同步的推送通知

【技术领域】
[0001 ] 本公开涉及通信接口,并且更具体地涉及在移动通信环境中经由文件共享服务同步的推送(push)通知。

【背景技术】
[0002]在移动环境中,运行应用的装置可以生成并消耗与远程应用交互的事件。当网络连接降级或丢失时,一些移动装置应用可以以断开连接模式运行,使得用户可以继续移动装置应用的操作。当这样的移动装置应用需要与位于远处的企业应用交互时,不存在标准途径来确保恰当地排序并进行动作以便一旦恢复了网络服务就有效地完成动作。由于与跨移动环境的各类移动装置关联的不同协议的数量而存在进一步的复杂情况。当接口到各种移动装置的应用被写入时,处理针对跨各种移动装置的兼容性的通知机构的多变主体可能是富于挑战的。


【发明内容】

[0003]根据一个实施例,提供了用于经由文件共享服务同步的推送通知的系统。该系统包括计算机处理器以及该计算机处理器可执行的移动平台服务器。该移动平台服务器包括通知服务,配置为经由文件共享服务建立与客户端移动装置的文件共享容器(container)的客户端到服务器目录的同步。该通知服务进一步配置为在客户端到服务器目录中检测来自客户端移动装置的通知并且确定与该通知相关联的端点(endpoint)以及与该端点相关联的通知传输协议。该通知服务还配置为选择与该通知传输协议相关联的信道插件以建立与该端点的通知信道并基于该通知在该通知信道上发送该通知触发到该端点。
[0004]根据另一实施例,提供了用于经由文件共享服务同步的推送通知的计算机程序产品。计算机程序产品包括具有包含在其中的程序代码的计算机可读存储介质。该程序代码可由处理装置执行用于经由文件共享服务建立与客户端移动装置的文件共享容器的客户端到服务器目录的同步。该程序代码还可由处理装置执行用于在客户端到服务器目录中来自客户端移动装置的通知并且确定与该通知相关联的端点以及与该端点相关联的通知传输协议。该程序代码还可由处理装置执行用于选择与该通知传输协议相关联的信道插件以建立与该端点的通知信道并基于该通知在该通知信道上发送该通知触发到该端点。
[0005]另外的特征和优点通过本发明的技术而实现。在这里详细描述本发明的其他实施例和方面,并且认为它们是所要求保护的发明的一部分。为了更好地理解具有优点和特征的本发明,请参考说明书和附图。
[0006]附图标记
[0007]在说明书的结束处的权利要求书中具体指出被认为是本发明的主题并且清楚地要求其权益。从结合附图来考虑的本以下详细描述,发明的前述和其他的特征以及优势是显然的,在附图中:
[0008]图1描绘了根据一个实施例的在其上可以实现推送通知的系统的框图;
[0009]图2描绘了根据一个实施例的用于推送通知的示例客户端移动装置;
[0010]图3描绘了根据一个实施例的文件共享信道插件的示例;
[0011]图4描绘了根据一个实施例的用于推送通知的处理的流程图;并且
[0012]图5描绘了用于推送通知的系统的框图的进一步示例。

【具体实施方式】
[0013]示例性实施例涉及在移动通信环境中经由文件共享服务同步的推送通知。推送通知转发通知到移动装置。通知可以包括各类数据、音频或文本警告,并且可以触发接收方的更新或进一步动作。当在移动装置上接收到通知时,指定的动作可能要求移动装置连接到应用服务器以取回信息或对等待的信息采取进一步动作。
[0014]在示例性实施例中,推送通知中间件(middleware)提供通知框架,该通知框架是动态的并且支持通知信道和端点的登记和注销。通知信道可以定义为支持各种通知传输协议。端点是推送通知的目标接收方。推送通知中间件是可插的(pluggable)以支持可以随时间而修改的多个通知传输协议。推送通知中间件针对移动通信环境被优化,在该移动通信环境中,不保证并且期望通知传递具有低等待时间(latency)。在示例性实施例中,推送通知中间件利用文件共享服务用于在客户端移动装置、推送通知中间件和(一个或多个)目标装置之间同步简单的消息传递,其中客户端移动装置无需知道通知传输协议和目标装置。用于简单消息传递的框架是可扩展的,并且因而能够接收另外的元数据来支持对通知传输协议的修改和添加。
[0015]推送通知中间件可以基于触发和/或话题发布来提供推送通知。示例性实施例支持触发和传递的稀疏耦合,其中客户端移动装置不需要知道用于推送通知传递的通知信道。例如,通知可以仅包括应用和用户。可插框架使能支持将随着时间而添加新通知信道而不对发起触发的装置进行改变。稀疏耦合可以减少在推送通知中间件内所需的改变并且隔离对插件的改变。推送通知中间件还可以包括一个或多个应用编程接口(API)来可选地添加高级接口,比如发布/订阅支持。
[0016]现在转向图1,现在将更详细地描述在其上可以实现推送通知的系统100的示例。系统100表示移动通信环境。在图1描绘的示例中,系统100包括服务器系统102,其配置为经由文件共享服务103与客户端移动装置101通信。服务器系统102还配置为在多个通信网络106A-N上与一个或多个目标移动装置104A-N通信。在示例性实施例中,服务器系统102是高速处理装置(例如,主机计算机、桌面型计算机、膝上型计算机、手持装置、嵌入式计算装置等),其包括能够读取并执行指令以及处理与系统100的各种组件的交互的至少一个处理电路(例如,计算机处理器/CPU)。
[0017]客户端移动装置101是具有一个或多个处理电路以及诸如按键/按钮、触摸屏、音频输入、显示装置以及音频输出的I/o接口的移动计算装置。客户端移动装置101可以是能够与文件共享服务103交互的任何类型的计算装置。文件共享服务103可以是基于云的文件共享系统,其使用户能够存储以及使用文件同步跨网络或移动环境与其他人共享文件和文件夹。可以使用具有使得数据能够被返回的调回(callback)的目录建立文件同步,其中调回可以是指示新的或修改的数据对于目录中的拾取可用的事件。
[0018]在示例性实施例中,目标移动装置104A-N (每一个被统称为目标移动装置104的)可以包括具有处理电路和诸如按键/按钮、触摸屏、音频输入、显示装置和音频输出的I/O接口的各种移动手持机和移动计算装置。在图1描绘的示例中,目标移动装置104A-N使用各种通知传输协议来支持推送通知。客户端移动装置101、服务器系统102、文件共享服务103以及目标移动装置104A-N可以包括本领域已知的各种计算机/通信硬件和软件技术,诸如一个或多个处理单元或电路、包括可移除介质的易失性或非易失性存储器、电源、网络接口、支持电路、操作系统等。服务器系统102还可以包括具有诸如键盘、鼠标和显示器的用户可访问的I/O装置的一个或多个用户接口 108。
[0019]通信网络106A-N可以是本领域公知的任意类型的通信网络。通信网络106A-N可以包括无线、有线和/或光纤链路的组合。通信网络106A-N可以支持允许数据在服务器系统102和目标移动装置104A-N之间无线传送的各种已知的通信标准。诸如网关(未绘出)之类的另外的计算机系统还可以经由通信网络106A-N或其他网络与服务器系统102和目标移动装置104A-N相接口。网关(未绘出)可以在需要时提供在服务器系统102和目标移动装置104A-N的一个或多个之间的协议转换和具体实现方式支持。
[0020]在示例性实施例中,服务器系统102包括作为推送通知中间件的示例的移动平台服务器112。移动平台服务器112包括通知服务114和注册表(registry) 116。通知服务114包括与多个信道插件120相接口的通知核心118。通知核心118是可插的以支持如经由信道插件120定义的多个通知传输协议。每一个信道插件120可以支持特定通知传输协议。在图1的示例中,信道插件120A支持Google? Cloud Messaging(谷歌?云消息,GCM),信道插件120B支持Apple?推送通知服务(APN),而信道插件120N支持短消息服务(SMS)。信道插件120C是被称为长轮询(Long Poll)的定制化通知传输协议的示例。也称为文件共享信道插件120D的信道插件120D配置为经由通过文件共享服务103的文件共享同步来提供文件共享支持。每一个信道插件120可以用来建立用于推送通知到目标移动装置104A-N的信道。
[0021]每一个通信网络106A-N可以与一个或多个信道插件120关联;然而,在图1的通信网络106A-N和信道插件120A-N之间不需要是一对一关系。在一个示例中,信道插件120A以GCM兼容的格式通过通信网络106A向一个或多个移动装置104A发送通知触发122A。类似地,信道插件120B可以以APN兼容的格式通过通信网络106B向一个或多个目标移动装置104B发送通知触发122B。信道插件120C的长轮询通知传输协议使能在否则可能不具有定义的现有通知传输协议的目标移动装置104(例如,遗留移动装置)上的推送通知。信道插件120N可以以SMS兼容的格式通过通信网络106N向一个或多个目标移动装置104N发送通知触发122N。尽管分别绘出,但是通信网络106A-N的部分以及文件共享服务103可以共享一些基于硬件和/或软件的要素。
[0022]以诸如在SMS兼容的目标移动装置104N上的端点123之类的具体端点为目标,建立通知信道121。在此示例中,通知信道121在与SMS通知传输协议关联的信道插件120N之间通过通信网络106N路由流量以在通知服务114和目标移动装置104N之间发送具有有效负荷的通知触发122N。当客户端移动装置101的应用期望发送通知到端点123时,客户端移动装置101不需要知道通知信道121或信道插件120N的SMS通知传输协议的细节。客户端移动装置101在客户端移动装置101的文件共享容器125的客户端到服务器目录(如图2所示)和文件共享服务103之间建立了同步124。在文件共享容器125中存储的通知126流到文件共享服务103。通知服务114可以使用用于文件共享的信道插件120D来建立与文件共享服务103的同步128并且接收通知126。通知126可以是以一个或多个端点和/或目标移动装置104为目标的发布请求。在此示例中,通知服务114可以访问注册表116以确定端点123与通知126关联,其中信道插件120N的SMS是与端点123关联的通知传输协议。信道插件120N被选择,并且基于该通知126在通知信道121上将通知触发122N发送到端点123。
[0023]在示例性实施例中,通知服务114使用注册表116来追踪应用、用户和用于推送通知的目标移动装置104A-N之间的关系。注册表116还可以协调哪个通知传输协议和信道插件120与特定端点相关联。端点或通知端点可以定义在例如目标移动装置104A-N之一的装置级别或在诸如在目标移动装置104A-N之一上执行的特定应用实例之类的应用级另O。因此,目标移动装置104A-N的每一个可以具有在注册表116中定义的多于一个端点。
[0024]通知服务114可以支持从应用服务器对通知核心118的调用,以触发通过注册表116映射到一个或多个端点并作为推送通知发送的通知。移动平台服务器112还可以支持使得一个实体订阅话题而另一实体对该话题进行发布的发布/订阅(pub/sub)通知。例如,在目标移动装置104A-N的两个或多个上的应用实例可以订阅由客户端移动装置101发布的同一话题。客户端移动装置101可以通过文件共享服务103将该话题的有效负荷作为通知126的部分发送到通知服务114,而不是对每一个目标移动装置104A-N单独将话题的数据发送到通知服务114。通知服务114转而使用通过信道插件120定义的对于目标移动装置104的兼容协议来发送通知触发122到订购的目标移动装置104。
[0025]图2描绘了根据一个实施例的用于推送通知的图1的客户端移动装置101的示例。在图2的示例中,客户端移动装置101包括与操作系统204相接口的一个或多个客户端应用202以及文件共享容器125。文件共享容器125包括客户端到服务器通知逻辑206,其与一个或多个客户端应用202相接口。当一个或多个客户端应用202生成通知126时,客户端到服务器通知逻辑206将通知126推送到客户端到服务器目录208。客户端到服务器通知逻辑206检查模式210以确定客户端移动装置101正运行在连接模式还是断开模式。在客户端移动装置101处于与图1的文件共享服务103的通信时,模式210指示连接模式,而断开模式指示当前在图1的客户端移动装置101和文件共享服务103之间没有建立通信。如果模式210是断开模式,则通知事件条目212可以在队列214中排队直至在图1的客户端移动装置101和文件共享服务103之间建立图1的同步。通知事件条目212与通知126关联。当多个通知或其他事件被存储到客户端到服务器目录208时,队列214可以用来建立次序或序列。可替代地,可以使用例如时间或序列标签将排队功能合并到客户端到服务器目录208中。
[0026]当在图1的客户端移动装置101和文件共享服务103之间建立图1的同步124时,客户端到服务器目录208的复制本与通知126 —起存储在文件共享服务103中。因而,如果在客户端移动装置101和文件共享服务103之间的通信丢失,则仍然可以通过文件共享服务103使得通知126对图1通知服务114可用。当通知服务114还建立与文件共享服务103的同步128时,图1的文件共享信道插件120D可以从文件共享服务器103与通知126一起接收客户端到服务器目录208的更新的复制本作为图3的客户端到服务器目录308。在通过发送一个或多个图1的通知触发122而对通知126进行动作之后,图1的通知服务114的文件共享信道插件120D可以从图3的客户端到服务器目录308移除通知126。在建立同步128的同时改变图3的客户端到服务器目录308中的数据得到对于文件共享服务103的对应改变,其传播到图2的客户端到服务器目录208。在示例性实施例中,客户端到服务器目录208支持具有调回的双向数据流,其在新数据可用或通知126已经被消耗时可以导致触发生成了通知126的客户端应用202。
[0027]文件共享容器125还可以配置为访问服务器到客户端目录216的复制本,由图1的通知服务器114使得该复制本通过文件共享服务103可用,作为图3的服务器到客户端目录316的同步的复制本。客户端到服务器通知逻辑206可以针对诸如新通知318之类的事件或数据而监视服务器到客户端目录216,并且确定一个或多个客户端应用202的哪个意图接收它。类似地,客户端到服务器通知逻辑206在处理新通知318和其他事件或数据时可以从服务器到客户端目录216移除该新通知318和其他事件或数据,并且提供其他数据值以响应于该新通知318而返回。在建立同步124和同步128时从服务器到客户端目录216移除新通知318引起在文件共享服务103处以及相应地在图3的服务器到客户端目录316处移除新通知318。图3的服务器到客户端目录316还可以支持调回,使得从图3的服务器到客户端目录316移除新通知318可以在图1的文件共享信道插件120D处引起本地触发的事件。尽管图2中分开地描绘了客户端到服务器目录208和服务器到客户端目录216,但是将理解它们可以组合为单个目录并且可以进一步合并图2的队列214。
[0028]图3描绘了根据一个实施例的与通知服务114有关的文件共享信道插件120D的示例。文件共享信道插件120D可以包括服务器到客户端通知逻辑306,其被配置为监视客户端到服务器目录308,该客户端到服务器目录308是图2的客户端到服务器目录208的同步的复制本。在检测到诸如通知126之类的通知时,服务器到客户端通知逻辑306可以访问注册表116以确定一个或多个端点——如果没有在通知126中指定,以及一个或多个信道插件120中的哪个应当基于通知126发送一个或多个通知触发122。被选择的各个信道插件120的每一个可以取决于涉及的端点的数量而发送一个或多个通知触发122。如上所述,服务器到客户端通知逻辑306可以在处理通知126后从客户端到服务器目录308移除通知126。当经由服务器到客户端目录316将新通知318推送到图1的客户端移动装置101时,如果未建立图1的同步118,则文件共享信道插件120D还可以具有模式310指示以支持一个或多个事件条目312在队列314中的排队。文件共享信道插件120D不需要知道客户端移动装置101当前是否处于与文件共享服务103的通信,因为即使同步丢失,文件共享服务103也可以保留目录和数据的复制本。尽管客户端到服务器目录308和服务器到客户端目录316被分开描绘,但是将理解它们可以组合为单一目录并且可以进一步合并图3的队列314。
[0029]现在转到图4,将依据示例性实施例描述用于推送通知的处理400。参考图1-4描述处理400,并且其可以由图1的服务器系统102结合图1的客户端移动装置101、文件共享服务103和目标移动装置104A-N来实现。如上所述,客户端移动装置101的文件共享容器125配置为确定客户端移动装置101正运行在连接模式或是断开模式中。基于确定客户端移动装置101正运行在断开模式中,客户端移动装置101配置为将通知126排队直至客户端移动装置101建立了与文件共享服务103的同步124。通知126被存储在文件共享服务103用于通知服务114。
[0030]在块402,通知服务114经由文件共享服务103建立与客户端移动装置101的文件共享容器125的客户端到服务器目录208的同步128。通知服务114的文件共享信道插件120D配置为通过与文件共享服务103同步来建立与客户端到服务器目录208的同步128,其中,文件共享服务103也建立与客户端移动装置101的同步124。
[0031]在块404,通知服务114在客户端到服务器目录208中检测来自客户端移动装置101的通知126,其中文件共享信道插件120D访问作为客户端到服务器目录308的客户端到服务器目录208的同步的复制本。文件共享服务103使得在客户端到服务器目录308中通知126对于文件共享信道插件120D可用。
[0032]在块406,通知服务114确定与通知126相关联的诸如端点123之类的端点以及与端点123相关联的通知传输协议。通知服务114进一步配置为访问注册表116来确定与端点123相关联的通知传输协议,其中注册表116定义了与多个端点相关联的识别符和通知传输协议。例如,订阅/话题列表可以被包括在注册表116中,该注册表116将订阅的用户识别符、应用识别符和/或装置识别符映射到话题并进一步将装置识别符映射到由信道插件120A-N支持的通知传输协议。
[0033]在块408,通知服务114选择与通知传输协议相关联的信道插件120来建立与端点的通知信道,比如通知信道121。通知服务114的通知核心118可以将文件共享信道插件120D与关联于多个通知传输协议的多个信道插件120相接口。
[0034]在块410,通知服务114基于通知126在通知信道121上发送通知触发122到端点123。通知126可以是以多个端点为目标的发布请求,并且通知服务114可以进一步配置为将通知触发122发送到每一个端点。通知服务114还可以基于发送通知触发122而从客户端到服务器目录308移除通知126,这导致由于文件共享服务同步而从客户端到服务器目录208移除通知126。
[0035]通知服务114还可以在服务器到客户端目录316中创建新通知318,该服务器到客户端目录316经由文件共享服务103与客户端移动装置101的文件共享容器125的服务器到客户端目录216同步。新通知318可以配置为向客户端移动装置101的一个或多个客户端应用202通知更新。客户端移动装置101的文件共享容器125可以基于检测到新通知318从服务器到客户端目录216移除新通知318,这导致由于文件共享服务同步而从服务器到客户端目录316移除新通知318。移除也可以是用于开始进一步动作的调回触发事件。
[0036]图5图示了经由文件共享服务同步的用于推送通知的系统500的框图。之前描述的处理可以以作为专用或通用数字计算机(诸如个人计算机、工作站、迷你计算机或主机计算机)的一部分的硬件、软件(例如,固件)或其组合而在系统500中实现。系统500因而包括通用计算机501,如图5所示。系统500是图1的系统100的进一步示例,其中通用计算机501是图1的服务器系统102的实施例。
[0037]在示例性实施例中,在硬件架构方面,如图5所示,计算机501包括计算机处理器505和耦接到存储器控制器515的存储器510、以及经由本地输入/输出控制器535通信地率禹接的一个或多个输入和/或输出(I/o)装置540、545 (或外围电路)。输入/输出控制器535例如可以是但是不限于一个或多个总线或其他有线或无线连接,如本领域所公知的。输入/输出控制器535可以具有为了简化而被省略的诸如控制器、缓冲器(高速缓存)、驱动器、中继器和接收器的另外的元件以使能通信。此外,本地接口可以包括地址、控制和/或数据连接来使能前述组件之间的恰当的通信。
[0038]计算机处理器505是用于执行软件、尤其是在诸如高速缓存存储装置或存储器510之类的存储装置520中存储的软件的处理装置。计算机处理器505可以是任何定制的或商业上可获得的计算机处理器、中央处理对于(CPU)、与计算机501相关联的若干处理器中的辅助处理器、基于半导体的微处理器(以微芯片或芯片组的形式)、宏处理器或通常用于执行指令的任何装置。
[0039]存储器510可以包括易失性存储器元件(例如,随机存取存储器(RAM,比如DRAM、SRAM、SDRAM等))和非易失性存储器元件(例如,ROM、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、带、致密盘只读存储器(⑶-ROM)、磁盘、软盘、盒式磁带、磁带等等)的任一个或组合。此外,存储器510可以并入电、磁、光和/或其它类型的存储介质。注意,存储器510可具有分布式架构,其中各个组件相互远离地放置,但是可以由计算机处理器505访问。
[0040]在存储器510中的指令可以包括一个或多个单独的程序,其每一个均包括用于实现逻辑功能的可执行指令的排序的列表。在图5的示例中,在存储器510中的指令包括合适的操作系统(0S)511。操作系统511实质上控制其他计算机程序的执行并提供调度、输入-输出控制、文件和数据管理、存储器管理、以及通信控制及相关服务。
[0041]在示例性实施例中,传统的键盘550和鼠标555可以耦接到输入/输出控制器535。诸如I/O装置540、545之类的其他输出装置可以包括输入装置,例如但不限于打印机、扫描仪、麦克风等。最后,I/O装置540、545可以进一步包括传达输入和输出的装置,例如但不限于网络接口卡(NIC)或调制器/解调器(用于访问其他文件、装置、系统或网络)、射频(RF)或其他收发器、电话接口、桥接器、路由器等。系统500可以进一步包括耦接到显示器530的显示器控制器525。在示例性实施例中,系统500可以进一步包括用于耦接到网络565的网络接口 560。网络565可以是基于IP的网络,用于经由宽带连接在计算机501和任何外部服务器、客户端等之间的通信。网络565在计算机501和外部系统之间发送和接收数据。在示例性实施例中,网络565可以是由服务提供商管理的受管控的IP网络。网络565可以以无线方式、例如使用诸如WiF1、WiMax等的无线协议和技术而实现。网络565还可以是分组交换的网络,比如局域网、广域网、城域网、因特网或其他类似类型的网络环境。网络565可以是固定的无线网络、无线局域网(LAN)、无线广域网(WAN)、个人区域网络(PAN)、虚拟专用网络(VPN)、内联网或其他适合的网络系统,并且包括用于接收和发送信号的设备。
[0042]如果计算机501是PC、工作站、智能装置等,则存储器510中的指令可以进一步包括基本输入输出系统(B1S)(为了简化而省略)。B1S是一组基础软件例程,其在启动时初始化并测试硬件,开始0S511,并支持硬件装置之间的数据传输。B1S存储在ROM中,使得在计算机501被激活时可以执行B1S。
[0043]当计算机501处于操作时,计算机处理器505配置为执行在存储器510内存储的指令,向/从存储器510通信数据,以及通常按照指令控制计算机501的操作。
[0044]技术效果包括在移动通信环境中经由文件共享服务同步而提供推送通知。可以在客户端移动装置处于断开模式的同时在客户端移动装置处进行通知排队,以便维持事件的序列。推送通知中间件简化了客户端移动装置处的接口,因为发起通知的客户端移动装置不需要目标移动装置的细节知识。
[0045]所属【技术领域】的技术人员知道,本发明的各个方面可以实现为系统、方法或计算机程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、驻留软件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明的各个方面还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
[0046]可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是一但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPR0M或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形及非瞬时存储介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0047]计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0048]计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括一但不限于一无线、有线、光缆、RF等等,或者上述的任意合适的组合。
[0049]可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言一诸如Java、Smalltalk、C++等,还包括常规的过程式程序设计语言一诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络一包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0050]下面将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些计算机程序指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。
[0051]也可以把这些计算机程序指令存储在计算机可读介质中,这些指令使得计算机、其它可编程数据处理装置、或其他设备以特定方式工作,从而,存储在计算机可读介质中的指令就产生出包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品(article of manufacture)。
[0052]计算机程序指令还可以加载到计算机、其他可编程数据处理设备或其他装置上以使得在计算机、其他可编程设备或其他装置上进行一系列操作步骤,以产生计算机实现的处理,使得在计算机或其他可编程设备上执行的指令提供用于实现在流程图和/或框图块或多个块中指定的功能/动作的处理。
[0053]附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0054]这里使用的术语仅是为了描述特定实施例的目的而不意图限制本发明。如这里使用的,单数形式“一”、“一个”和“该”也意图包括复数形式,除非上下文以其他方式明确指示。将进一步理解,术语“包括”和/或“包含”在本说明书中使用时,指定了所述的特征、整体、步骤、操作、要素和/或组件的存在,但是不排除一个或多个其他特征、整体、步骤、操作、要素组件和/或它们的组的存在或添加。
[0055]以下权利要求中的所有部件或步骤加上功能要素的相应结构、材料、动作和等同物意图包括用于结合如具体声明的其他要求保护的要素来进行功能的任何结构、材料或动作。已经出于说明和描述的目的而呈现本发明的描述,但是不意图为穷尽或限制于所公开的形式的发明。不背离本发明的范围和精神,许多修改和变型将对于本领域普通技术人员是显然的。选择并描述实施例以便于最佳地说明本发明的原理和实际应用,并且使得本领域普通技术人员能够对于具有适合于所预期的具体用途的各种修改的各种实施例理解本发明。
[0056]这里描绘的流程图仅为一个示例。不背离本发明的精神,对于其中描述的这该图或步骤(或操作)可以存在很多变型。例如,步骤可以按不同的次序进行,或者可以添加、删除或修改步骤。所有这些变型被认为是所要求保护的发明的一部分。
[0057]尽管已经描述了本发明的优选实施例,但是将理解,本领域技术人员无论现在还是将来都可以做出落入如下的权利要求的范围内的各种改进和增强。这些权利要求将被解释为维持对第一次描述的本发明的恰当保护。
【权利要求】
1.一种系统,包括 计算机处理器;以及 能够由所述计算机处理器执行的移动平台服务器,所述移动平台服务器包括通知服务,该通知服务配置为: 经由文件共享服务建立与客户端移动装置的文件共享容器的客户端到服务器目录的同步; 在所述客户端到服务器目录中检测来自所述客户端移动装置的通知; 确定与该通知相关联的端点以及与所述端点相关联的通知传输协议; 选择与所述通知传输协议相关联的信道插件以建立与所述端点的通知信道;以及 基于所述通知在所述通知信道上向所述端点发送通知触发。
2.根据权利要求1所述的系统,其中,所述通知服务进一步配置为基于发送所述通知触发而从所述客户端到服务器目录移除所述通知。
3.根据权利要求1所述的系统,其中,所述客户端移动装置的文件共享容器配置为确定所述客户端移动装置正运行在连接模式还是断开模式中。
4.根据权利要求3所述的系统,其中,基于确定所述客户端移动装置正运行在断开模式中,所述客户端移动装置配置为将所述通知排队直至所述客户端移动装置建立了与所述文件共享服务的同步。
5.根据权利要求1所述的系统,其中,所述通知服务进一步配置为经由所述文件共享服务在与所述客户端移动装置的文件共享容器同步的服务器到客户端目录中创建新通知,所述新通知配置为向所述客户端移动装置通知更新。
6.根据权利要求5所述的系统,其中,所述客户端移动装置的文件共享容器配置为基于检测到所述新通知而从所述服务器到客户端目录移除所述新通知。
7.根据权利要求1所述的系统,其中,所述通知是以多个端点为目标的发布请求,并且所述通知服务进一步配置为向每一个端点发送通知触发。
8.根据权利要求1所述的系统,其中,所述通知服务的文件共享信道插件配置为建立与所述客户端到服务器目录的同步。
9.根据权利要求8所述的系统,其中,所述通知服务进一步包括通知核心,该通知核心配置为将所述文件共享信道插件与关联于多个通知传输协议的多个信道插件相接口。
10.根据权利要求1所述的系统,其中,所述通知服务进一步配置为访问注册表以确定与所述端点相关联的通知传输协议,所述注册表定义了与多个端点相关联的识别符和通知传输协议。
11.一种方法,包括: 在计算机处理器上执行的移动平台服务器的通知服务处,经由文件共享服务建立与客户端移动装置的文件共享容器的客户端到服务器目录的同步; 通过所述通知服务在所述客户端到服务器目录中检测来自所述客户端移动装置的通知; 通过所述通知服务确定与该通知相关联的端点以及与所述端点相关联的通知传输协议; 通过所述通知服务选择与所述通知传输协议相关联的信道插件以建立与所述端点的通知信道;以及 通过所述通知服务基于所述通知在所述通知信道上向所述端点发送通知触发。
12.根据权利要求11所述的方法,进一步包括: 基于发送所述通知触发而从所述客户端到服务器目录移除所述通知。
13.根据权利要求11所述的方法,其中,所述客户端移动装置的文件共享容器配置为确定所述客户端移动装置正运行在连接模式还是断开模式中。
14.根据权利要求13所述的方法,其中,基于确定所述客户端移动装置正运行在断开模式中,所述客户端移动装置配置为将所述通知排队直至所述客户端移动装置建立了与所述文件共享服务的同步。
15.根据权利要求11所述的方法,进一步包括: 经由所述文件共享服务在与所述客户端移动装置的文件共享容器同步的服务器到客户端目录中创建新通知,所述新通知配置为向所述客户端移动装置通知更新。
16.根据权利要求15所述的方法,其中,所述客户端移动装置的文件共享容器配置为基于检测到所述新通知而从所述服务器到客户端目录移除所述新通知。
17.根据权利要求11所述的方法,其中,所述通知是以多个端点为目标的发布请求,并且进一步包括: 向每一个端点发送通知触发。
18.根据权利要求11所述的方法,其中,所述通知服务的文件共享信道插件配置为建立与所述客户端到服务器目录的同步。
19.根据权利要求18所述的方法,其中,所述通知服务进一步包括通知核心,该通知核心配置为将所述文件共享信道插件与关联于多个通知传输协议的多个信道插件相接口。
20.根据权利要求11所述的方法,进一步包括: 访问注册表以确定与所述端点相关联的通知传输协议,所述注册表定义了与多个端点关联的识别符和通知传输协议。
【文档编号】H04L29/08GK104301373SQ201410342861
【公开日】2015年1月21日 申请日期:2014年7月18日 优先权日:2013年7月18日
【发明者】T.E.卡普灵格, C.A.兰增, M.R.莱恩海默, B.L.W.伊格尔 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1