电子邮件网络客户端通知排队的制作方法_2

文档序号:9794040阅读:来源:国知局
0029]如本文所描述的,其中HTTP服务器像数据库160和/或存储装置150—样存储通知,响应于对于由邮件服务器170所提供的数据或服务的请求,或者响应于来自网络客户端110的保活通信或其他通信,HTTP服务器130将这些通知传送至网络客户端110。当传送存储的通知时,HTTP服务器130可以从数据库160和/或存储装置150移除这种通知。可替代地,网络客户端110可以将收到通知的确认传送至HTTP服务器130,并且HTTP服务器可以在收到这个确认时从数据库160和/或存储装置150删除通知。
[0030]注意的是,诸如请求、接收和订阅通知的通知处理以及存储和检索通知可以在HTTP服务器130或者本文预期的任意其他HTTP服务器内通过单独的过程来处理。例如,在HTTP服务器130上执行的第一过程可以处理与网络客户端110的通信,同时单独的过程可以处理通知。这两个过程可以以任意方式交互以便处理通知并将它们提供给网络客户端110。
[0031]在一个实施方案中,通知服务器180可以处理通知,而不是HTTP服务器130来维持通知。HTTP服务器130可以通过链路183与通知服务器180进行通信,所述链路183可以是如本文阐述的任意类型的通信链路。HTTP服务器130可以告知通知服务器180其正服务网络客户端110,并且可以提供对于网络客户端110、设备101或其用户的识别信息。通知服务器180可以通过通信链路187建立与邮件服务器170的持续连接(例如TCP连接),所述通信链路187可以是如本文阐述的任意类型的通信链路。这种持续连接可以专用于与网络客户端110相关联的通信。当从HTTP服务器130接收到已收到来自网络客户端110的对访问邮件服务器170的初始请求的通知或者响应于由HTTP服务器130响应于所述通知而产生的通信,所述持续连接可以开始。所述持续连接可以被维持直到预先确定超时期满或者直到持续连接的明确关闭被获准(例如,HTTP服务器130例如响应于用户退出或关闭网络客户端110来指令通知服务器180将其关闭)。
[0032]通知服务器180还可以为网络客户端110和/或与其相关联的用户从邮件服务器170订阅通知,或者以其他方式请求任意这种通知由邮件服务器170提供给通知服务器180。通知包括可以被发送给用户的事件的任意公告或指示,诸如最近接收的电子邮件、日历提醒、会议邀请等的指示。当发布通知时,通知服务器180可以本地存储这种通知(例如,存储器、硬盘),并使通知与网络客户端110、与网络客户端110相关联的会话、和/或与网络客户端110相关联的用户相关联。当后续通知被从邮件服务器170接收时,通知服务器180可以将其存储。通知服务器180可以将收到一个或多个通知的确认传送至邮件服务器170。
[0033]HTTP服务器130可以从网络客户端110接收对于由邮件服务器170所提供的数据或服务的后续请求。响应于这个请求,HTTP服务器130可以将请求转发至邮件服务器170,并从邮件服务器170接收对所述请求的响应。HTTP服务器130还可以请求来自通知服务器180的对于网络客户端110的任意待处理的通知。通知服务器180可以回复通知或者回复指示对于网络客户端110来说没有通知待处理的响应。HTTP服务器130将从通知服务器180接收的对网络客户端110的任意通知与从邮件服务器170接收到的响应进行组合,并将组合通信传送至网络客户端110。可替代地,HTTP服务器130可以从不需要与邮件服务器170交互的网络客户端110接收保活通信或其他通信。在这个实施方案中,HTTP服务器130请求和接收来自通知服务器180的对于网络客户端110的任意待处理的通知。HTTP服务器130可以将对网络客户端110的这种通知传送至网络客户端110。当提供通知时,通知服务器180可以从本地存储装置移除这种通知。可替代地,网络客户端110可以将收到通知的确认传送至HTTP服务器130,并且HTTP服务器130可以将这个收到确认或者响应于从网络客户端110接收到收到确认而产生的另一个指令提供给通知服务器180。作为响应,通知服务器180可以从本地存储装置删除通知。注意的是,通知服务器180可以在离散通信中或者在每一个可以包含超过一个通知的一个或多个通信中单独地接收和传送通知。不论单独传送是否在某些方面被组合在一起,包含一个或多个通知的通信还可以包含其他数据,包括与网络客户端110相关联的任意数据。全部这种实施方案被预期为在本公开的范围内。
[0034]在一个实施方案中,而不是或除了本地存储通知之外,通知服务器180可以在数据库或存储装置处存储这种通知。例如,通知或通知的指示可以由通知服务器180通过链路186存储在数据库160处与网络客户端110、由网络客户端110所使用的通信会话、或网络客户端110的用户相关联的一个或多个记录中,所述链路186可以是如本文所描述的任意类型或数量的通信链路。在一些实施方案中,通知可以替代地或此外被存储在存储装置中(诸如存储装置150),通知服务器180与所述存储装置通过链路185进行通信,所述链路185也可以是如本文所描述的任意类型或数量的通信链路。在这种实施方案中,指示通知在哪里被保存在存储装置150上的存储位置信息可以包括在数据库160上与网络客户端110相关联的记录中。可替代地,已将一个或多个通知保存在存储装置150上的指示可以被包括在这种记录中,并且其他识别信息可以被用来确定存储的通知的存储位置。例如,通知标识符可以针对每个通知存储在数据库160上与网络客户端110相关联的记录中,并且网络客户端标识符(例如会话标识符)与通知标识符的组合可以被用来在存储装置150中定位通知。全部这种实施方案被预期为在本公开的范围内。通过在数据库160或存储装置150处存储通知,这个信息在网络客户端110出于任意原因可以不再与HTTP服务器130进行通信的情况下,对于通知服务器180和/或其他服务器或设备是可访问的。
[0035]如本文所描述的,其中通知服务器180将通知存储在数据库160和/或存储装置150中,响应于来自网络客户端110的对于由邮件服务器170所提供的数据或服务的请求,或者响应于来自网络客户端110的保活通信或其他通信,HTTP服务器130请求来自通知服务器180的这些通知。当传送存储的通知时,通知服务器180可以从数据库160和/或存储装置150移除这种通知。可替代地,网络客户端110可以将收到通知的确认传送至HTTP服务器130,并且HTTP服务器130可以将这个收到确认或者响应于从网络客户端110接收到收到确认而产生的另一个指令提供给通知服务器180。作为响应,通知服务器180在收到这个确认时可以从数据库160和/或存储装置150删除通知。
[0036]注意的是,如果存储的通知不被传送至网络客户端,那么它们可以不用无限期地保留。在一些实施方案中,每个通知可以被存储预先确定的时间量,并且当预先确定的时间量期满时对其进行删除。可替代地,可以仅当在网络客户端110与HTTP服务器130之间维持会话时来存储通知。当会话期满时,HTTP服务器130可以删除与会话和/或网络客户端110相关联的任意通知,或者可以指令或以其他方式向通知服务器180指示这种通知有待删除。
[0037]图2示出非限制性示例性系统100,其中HTTP服务器130不再与网络客户端110进行通信。这可能是由于通信链路123的故障、HTTP服务器130的故障,或者任意其他原因。在一个实施方案中,HTTP服务器130可能由于未能通过一个或多个通信链路153、163和173成功地进行通信而变得不可用。在这种实施方案中,HTTP服务器130或另一个系统或设备可以确定通过这些链路中的一个或多个来进行的通信不工作,并且致使用于网络客户端110的HTTP业务被转移到HTTP服务器140,即使HTTP服务器130自身可以是工作的。一旦HTTP服务器130对于服务网络客户端110不再可用,来自网络客户端110的业务可以被重新定向至HTTP服务器140。这可以通过使用任意装置和方法自动地发生,并且对于网络客户端110和/或其用户可以是透明的。
[0038]HTTP服务器140通过使用任意装置或方法(包括本文所描述的那些)可以识别网络客户端110之前与HTTP服务器130通信,或以其他方式确定其现在正代替HTTP服务器130来服务客户。一旦确定或获取与网络客户端110相关联的数据,HTTP服务器140可以使用通信链路164从数据库160获取与网络客户端110相关联的元数据。元数据可以指示网络客户端110正处于编写具有相关联附件的电子邮件的过程中,并且还可以提供用于附加的识别信息,所述识别信息可以被用来从存储装置150检索附件。可替代地,元数据可以指示附件与网络客户端相关联的附件,并且附件的存储位置可以被使用其他方法来进行确定,诸如与可以被包括在元数据中的附件标识符相结合的网络客户端标识符。一旦确定附件与正被使用网络客户端110来进行编写的电子邮件相关联,HTTP服务器140可以从存储装置150通过通信链路154来获取附件。一旦用户命令保存或发送在编写中的电子邮件,HTTP服务器140可以将附件并且在一些实施方案中是其他电子邮件数据通过通信链路174传送至邮件服务器170。这还可以在没有用户交互的情况下执行,其中网络客户端110被配置来自动地保存电子邮件。
[0039]如本文所描述的,HTTP服务器140还可以或替代地通过使用在数据库160中定位记录的识别信息来确定对于网络客户端110的通知被存储在数据库160或存储装置150处。其中通知被存储在存储装置150处,一旦确定存储的通知存在,HTTP服务器140可以使用通信链路164从数据库160获取用于这种通知的通知存储位置信息。通过使用这个通知存储位置信息,HTTP服务器140可以从存储装置150获取任意存储的通知并将它们传送至网络客户端110。可替代地,其中通知被存储在数据库160处,HTTP服务器140可以从数据库160获取这种通知并将它们传送至网络客户端110 ATTP服务器140可以随后继续如本文所描述地存储、传送和删除通知。
[0040]在利用通知服务器180的实施方案中,通过查询通知服务器180并将诸如与网络客户端相关联的识别数据(例如,会话标识符)的数据提供给通知服务器180,HTTP服务器140可以确定通知被存储用于网络客户端110。通知服务器180可以随后查阅其自己的数据,或查询数据库160来确定通知对于网络客户端110来说是否是待处理的。如果是这样,那么通知服务器180可以如本文所描述地通过使用网络客户端110识别信息从数据库160和/或存储装置150获取这种通知。其中通知被存储在存储装置150处,一旦确定存储的通知存在,通知服务器180可以使用通信链路186从数据库160获取用于这种通知的通知存储位置信息。通过使用这个通知存储位置信息,通知服务器180可以从存储装置150获取任意存储的通知并将它们传送至HTTP服务器140,所述HTTP服务器140可以将通知提供给网络客户端110。可替代地,其中通知被存储在数据库160处,通知服务器180可以从数据库160获取这种通知并将它们传送至HTTP服务器140,所述HTTP服务器140可以将通知提供给网络客户端110。通知服务器180可以随后继续如本文所描述地存储、传送和删除通知。
[0041]注意的是,尽管图1和图2的设备被分别地且单独地进行描述,这些设备可以被物理地结合或者可以是跨一个或多个数据中心或其他地理位置而物理地分布的若干个设备。例如,数据库160和存储装置150可以是单个设备,或者与数据库160和存储装置150相关联的功能可以由一个或多个设备执行。同样注意的是,设备之间的连接可以通过使用验证和/或任意其他方法来确保设备之间的数据交换不太可能被拦截或者如果拦截对于任意非目标的收件人是可破解的来进行保护。全部这种实施方案被预期为在本公开的范围内。
[0042]注意的是,诸如请求、接收和订阅通知的通知处理以及存储和检索通知可以在HTTP服务器140或者本文预期的任意其他HTTP服务器内通过单独的过程来处理。例如,在HTTP服务器140上执行的第一过程可以处理与网络客户端110的通信,同时单独的过程可以处理通知。这两个过程可以以任意方式交互来处理通知并将它们提供给网络客户端110。
[0043]图3描绘了根据各实施方案的用于HTTP服务器的示例操作程序300。操作程序300开始于操作310并且移动到操作315,在操作315中HTTP服务器可以接收网络客户端的指示,所述指示通过HTTP服务器请求用于支持电子邮件编写的服务。这可以采取任意形式,包括请求访问提供电子邮件编写界面的网页。在操作320处,HTTP服务器可以将当前的网络客户端状态信息存储在数据库中。例如,可将与网络客户端相关联的元数据存储在数据库中。可以使用任意方法来识别网络客户端,并且可将这种识别信息用来识别包含用于网络客户端的元数据的数据库中的记录。例如,可以产生会话标识符并将其存储为用于网络客户端和/或其中使用网络客户端和HTTP服务器的具体的通信会话的标识符。还可以将这个会话标识符传送至网络客户端,用于在一些实施方案中作为由在用户设备上执行的web浏览器所存储的“cookie”或数据来存储在执行网络客户端的用户设备上。
[0044]在操作325处,HTTP服务器可以从网络客户端接收有待与当前正使用网络客户端编写的电子邮件相关联的附件。在操作330处可将这个附件存储在存储装置中,所述存储装置包括如本文阐述的任意类型的存储设备和存储系统。注意的是,HTTP服务器可以本地并且在存储设备或系统处存储这种附件,或者可以将附件传送至存储设备或系统并且不保留附件的本地副本。同样注意的是,HTTP服务器可以改变附件或以其他方式将其放置于由邮件服务器可接受和理解的格式中,以有助于随后通过邮件服务器来使用附件。全部这种实施方案及其任意变型被预期为在本公开的范围内。
[0045]在操作335处,可将指示附件在存储设备或存储系统内的位置的信息存储在数据库中。可将这个位置信息存储在与网络客户端和/或其中使用网络客户端和HTTP服务器的通信会话相关联的记录中。可替代地,可将已保存附件的指示而不是附件的具体位置的指示存储在这种记录中。这种指示可以采取任意形式,并且可以包括附件的名称或标识符。在这种实施方案中,可以使用其他识别信息来确定附件的存储位置,诸如网络客户端标识符和附件标识符的组合。同样在操作335处,可以更新数据库中用于网络客户端的状态信息,以反映出存在与当前在网络客户端中进行编写的电子邮件相关联的附件。
[00
当前第2页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1