Web应用之间的消息发送的制作方法_4

文档序号:8344594阅读:来源:国知局
以新的事件,其表示从服务器应用104所推送的消息。
[0069]在步骤306,确定客户端应用106是否被注册以接收事件通知。服务器应用104将与客户端应用106(或订用方应用)相关联的注册标识符和事件通知内所包含的事件标识符进行比较以确定匹配。在一种或多种实施方式中,服务器应用104可以将与发布方102的事件发生相关联的内容和与客户端应用106(或订用方应用)上进行操作的用户相关联的用户内容偏好进行比较。该匹配指示客户端应用106(或订用方应用)被订用以接收与发布方102相关联的通知。
[0070]在步骤308,当服务器应用104确定客户端应用106被注册以接收这样的通知时,发布方102所生成的事件通知由服务器应用104转发至客户端应用106。在另一个方面,服务器应用104将事件通知转发至客户端应用106而使得客户端应用106确定一个或多个订户应用是否是预期接收方。这样,客户端应用106能够执行类似于服务器应用104的比较。服务器应用104在接收到事件通知时生成指示发布方102处的事件发生的消息。该事件通知可以包含在该消息的有效载荷部分内。在一些实施方式中,计算机所实施的方法300和以上所描述的要素可以有所变化而并不局限于所提供的功能、结构、配置、实施方式或示例。
[0071]图4图示了在应用之间提供web消息发送的示例客户端-服务器网络环境。也就是说,该主题公开针对在电子设备上操作的应用提供了一种可缩放的推送通知传递机制。在一些方面,该推送通知传递机制在与应用相关联的内容陈旧(或过期)时向应用推送通知。因此,该推送通知传递机制使得应用能够检索内容更新。在一个或多个示例中,该事件指示一个或多个内容更新。这样,事件通知可以立即被推送至所订用的应用。
[0072]网络环境400包括通过网络408通信连接至服务器410的多个电子设备402-406。服务器410包括处理设备412和储存库414。处理设备412执行例如存储在储存库414中的计算机指令以促成由在电子设备402-406上进行操作的应用生成事件通知。服务器410具有配对的组件一客户端应用416。客户端应用416被配置为注册一个或多个应用以便进行订用以接收所订用的内容,并且将所订用的内容分发至授权应用。此外,网络环境400包括通过网络428通信连接至服务器430的多个电子设备422-426。服务器430包括处理设备432和储存库434。例如,来自服务器430的通知能够跨网络420立即被服务器410所检测。
[0073]与电子设备422-426进行交互的用户针对web应用、扩展应用以及所安装的应用采用可缩放的推送通知传递机制。例如,所公开的主题涉及使得在电子设备422-426之一上进行操作的web应用能够在网络420上发布信息,该信息随后立即被推送至多个其它web应用,这些web应用在网络408上具有订用以接收所发布的信息(例如,在电子设备402-406上进行操作的订用方应用)。
[0074]该推送通知传递机制的服务器组件和客户端组件能够与在电子设备402-406上进行操作的平台应用(例如,web浏览器)进行集成。也就是说,可以在该推送通知传递机制的顶端构建抽象层,其使得与在电子设备402-406上操作的订用方应用进行交互的用户能够经由在电子设备402-406上进行操作的配对客户端组件(例如,客户端组件416)从相对应的服务器(例如,服务器410)接收所推送的消息。因此,客户端组件与其服务器配对一起在其状态过期时被告知。
[0075]在一种或多种实施方式中,在至少一个电子设备402-406上进行操作的客户端应用416采用注册处理来获得注册标识符(或信道标识符),并且随后向服务器410发送与一个或多个订户应用相关联的标识符以便随相对应的用户记录(例如,用户账户)一起存储在服务器410的存储器(例如,储存库414)中。该注册处理允许在电子设备上进行操作的web应用订用与由电子设备422-426上运行的应用所进行的内容更新相关的某些web通知。在一个示例中,该web应用进行订用以接收特定的实时事件(或动态事件)。在另一个示例中,该web应用进行订用以接收预定义事件(或静态事件)。在一些实施方式中,月艮务器410在监听与应用422-426相关的事件发生之后确定事件更新。也就是说,源所有方(例如,在电子设备422上运行的web应用)向服务器430提供事件发生以便在网络420上进行发布。
[0076]客户端应用416对订用方应用402-406进行注册以使得服务器410能够根据一个或多个订用而监听web上的所选择的事件。该注册处理涉及到向至少一个订用方应用402-406分配信道标识符(或注册标识符)。例如,服务器410在与电子设备422-426之一进行交互的用户当前经由客户端应用106注册到web浏览器账户的情况下调用API。在一个或多个示例中,该API是嵌入在网页之内的Javascript。该信道标识符(或注册标识符)在没有用户交互的情况下可用于客户端应用416。也就是说,该信道标识符可以在后续尝试获得事件通知的期间保持可用于客户端应用416。
[0077]服务器410能够将信道标识符连同与客户端应用相关联的用户记录一起存储在储存库414中。在示例中,信道标识符被存储在定义为HTML本地存储的本地储存库(或数据结构)中。在另一个示例中,本地储存库可以具有对储存库414内的用户记录进行索引的标识符。用户记录可以是具有定义用户所感兴趣的内容的参数的用户简档。用户记录还可以包括有关用户的人口统计和/或使用统计的参数。在一个方面,用户有权选择是否使得用户记录获得用户相关数据。
[0078]在一个方面,与电子设备402上运行的客户端应用416进行交互的用户授权至少一个订用方应用许可以通过服务器410经由通知接收所发布的内容。用户能够在web浏览器的登录会话期间授予该许可。在一个或多个示例中,该授与存储在用户记录的旁边以促成单点登录(SSO)的体验。用户还能够在客户端应用的安装会话期间授予该许可,并且因此自动允许推送通知被发送至所安装的应用(例如,所安装的web应用、使用所定义的Javascript调用的任意web应用)。在其它情况下,当服务器410调用API以向客户端应用416发送消息时,用户可以被提示进行登录并授予许可。
[0079]在一种或多种实施方式中,服务器410在网络上408上与公用API进行通信以便使得消息被推送至客户端应用416以便相对应的web应用被执行以在电子设备402-406上进行操作。所公开的主题还提供服务提供方以与其它API进行通信以将要推送的消息发送至相对应的客户端组件(例如,在电子设备402-406上运行的web浏览器组件)。在其它实施方式中,服务器410可以调用服务器至服务器API以向客户端应用416发送消息。该API对进行调用的应用(例如,服务器410)进行认证并且确定作为目标以从服务器410接收所推送的消息的所订用的应用的身份。
[0080]推送通知能够到达在电子设备402-406上进行操作同时处于休眠状态或非加载状态的的客户端应用。与电子设备422-426上运行的应用相关联的新事件可以作为到达在任何电子设备422-426上进行操作的至少一个订用方应用的新通知而经由事件页面进行检测和显示。当检测到新事件时,通知作为图标被显示在浏览器(或订用方应用)的新标签页面上。所检测的事件可以使用预定义功能“3口口1;[031:;[011_的1116.0nNewMessage”进行处理。事件页面能够接收针对JavaScript功能的回调以跟进该事件通知。这样,客户端应用416被配置为检索与该事件通知相关联的数据或内容。也就是说,客户端应用416可以使用该回调功能经由服务器410检索与事件相关联的数据。在另一个方面,订用方应用402-406可以执行该回调功能以接收与事件通知有关的另外的详细信息。
[0081]该推送通知传递机制支持用于将事件通知传递至订用用户(例如,在电子设备402-406上运行的订用方应用)的订用。在示例中,可以连同新的对象源一起定义新的客户端类型以进行订用来接收推送通知。服务器应用(例如,服务器410)与该推送通知传递机制(例如,集成到监听方代码中)进行集成而使得服务器410接收针对所有所订用的应用的所有通知。在另一个示例中,每个所订用的应用可能有一个被定义为“<add_id>.default”的对象标识符。就此而言,该客户端应用针对所安装的所有应用订用了对象源以及格式为“〈add_id>.default”的对象标识符。
[0082]在一个或多个示例中,与RSS馈送(feed)相关的web通知可以利用该RSS馈送已经被更新的指示而被推送至电子设备402-406之一。该电子设备可以被订用以接收RSS馈送,并且服务器410通过查找与电子设备上进行操作的web应用相关联的扩展(或标识符)而检查(或监听)更新来确定该web应用是否被订用以接收有关RSS馈送更新的通知。就此而言,该web应用将回调特定于RSS馈送的功能以便从服务器410检索所更新的内容。
[0083]在一些示例实施方式中,电子设备402-406、422-426可以是计算设备,诸如膝上或台式计算机、智能电话、个人数字助理(PDA)、便携式媒体播放器、平板计算机或者能够被用于应用的安全委托认证的其它适当计算设备。在图4的示例中,电子设备402、422均被描绘为智能电话,电子设备404、424均被描绘为台式计算机,并且电子设备406、426均被描绘为I3DA。
[0084]在一些示例方面,服务器410和服务器430均可以是诸如计算机服务器的单个计算设备。在其它实施方式中,服务器410和服务器430可以表示多于一个的计算设备,它们共同进行工作以执行服务器计算机的操作(例如,云计算)。可以被用来实施服务器410、430的计算设备的示例包括但并不局限于web服务器、应用服务器、代理服务器、网络服务器或者服务器群中的计算设备的群组。此外,网络408、420均可以是公共通信网络(例如,互联网、蜂窝数据网络、电话网络上的拨号调制解调器)或者私人通信网络(例如,私人LAN、租用线路)。在一些实施方式中,网络环境400和以上所描述的要素可以有所变化而并不局限于所提供的功能、结构、配置、实施方式或示例。
[0085]图5图示了包括web浏览器的用户界面的显示器。显示器500例如可以是如图6所示的输出设备接口 606。显示器500包括用户界面510,其可以由计算设备所执行的浏览器应用进行显示,该计算设备可以连接至网络(例如,互联网)。该浏览器应用可以打开一个或多个标签512。用户界面510包括表示web应用(例如,可以在浏览器控制的环境中执行的软件应用)的指示符514A、514B和514C。用户界面510还可以包括一个或多个表示浏览器扩展(例如,web浏览器的软件扩展)的指示符520。
[0086]用户界面510还可以包括被动通知516,其例如可以与指示符514进行同时显示。在图5所描绘的示例中,被动通知516包括有关指示符514A所表示的web应用游戏的玩家的信息。被动通知516可以包括有关指示符514A所表示的web应用游戏的文本,例如如图5所示的“Jacob在线;Emma准备加入;Ethan正在下象棋”。如图5所示的被动通知516的描绘、文本和位置仅是为了进行图示并且可以包括图形或其它信息。在一个示例中,被动通知516出现在标签512的背景中和/或可以相邻指示符515出现。
[0087]在一些实施方式中,通知可以是主动的。例如,主动通知可以包括弹出窗口和/或声音警示。主动通知530是包括有关指示符515B所表示的web应用的警示的弹出窗口,其指出了“新消息”。显示器500可以临时显示主动通
当前第4页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1