CN103733218A - 在基于web的电子邮件系统中同步会话结构 - Google Patents
在基于web的电子邮件系统中同步会话结构 Download PDFInfo
- Publication number
- CN103733218A CN103733218A CN201280040255.XA CN201280040255A CN103733218A CN 103733218 A CN103733218 A CN 103733218A CN 201280040255 A CN201280040255 A CN 201280040255A CN 103733218 A CN103733218 A CN 103733218A
- Authority
- CN
- China
- Prior art keywords
- session
- web
- file
- list
- changed
- 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.)
- Pending
Links
- 230000001360 synchronised effect Effects 0.000 claims description 54
- 230000008859 change Effects 0.000 claims description 31
- 238000000034 method Methods 0.000 claims description 27
- 238000003860 storage Methods 0.000 claims description 26
- 230000004044 response Effects 0.000 claims description 15
- 238000013500 data storage Methods 0.000 claims description 8
- 108010041420 microbial alkaline proteinase inhibitor Proteins 0.000 claims description 6
- 238000004891 communication Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 230000009471 action Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 230000002596 correlated effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000000712 assembly Effects 0.000 description 2
- 238000000429 assembly Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/60—Business processes related to postal 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/216—Handling conversation history, e.g. grouping of messages in sessions or threads
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
启用基于web的电子邮件系统来同步会话和会话属性。向新客户机枚举会话,从而提供文件夹专用和全局会话信息。在接收到初始会话信息之后,客户机维护会话状态,在通过采用电子邮件服务内的内部应用编程接口的会话同步命令来从web服务存储中更新客户机时使用该会话状态。
Description
背景
电子邮件是一种将来自作者的数字消息交换到一个或多个收件人的方法。现代电子邮件基于存储和转发模型跨因特网或其他计算机网络操作。电子邮件服务器接受、转发、递送并且存储消息。用户及其计算机都不需要同时在线,它们只需要简单地连接(通常连接到电子邮件服务器)达发送或接收消息所花费的时间。电子邮件消息可包括文本、图形、音频、视频和类似内容。
尽管其他形式的联网通信正在增长,但电子邮件仍然是商业和个人用户中的主导形式。在组织环境中,用户可就多个话题(诸如项目、讨论话题、题目等)与各种其他用户交换电子邮件。在典型的电子邮件应用中,用户的邮箱通常被安排在若干文件夹中。某些文件夹是内置的;其他可由用户创建。具有有限存储的电子邮件客户机应用在传统上同步文件夹子集中存储的电子邮件以及这些文件夹的电子邮件中的仅某一些(基于收到时间)。然而,“会话”(是通过共同属性(例如,主题、线程话题、参与者等)标识的电子邮件分组)可分布在不同文件夹上。例如,属于一个会话的某些电子邮件可以在传入邮件文件夹中,另一些在已发送邮件文件夹中,还有一些在用户创建的文件夹中。因此,传统电子邮件客户机应用可能能够保持与各会话有关的最新状态信息。
概述
提供本概述是为了以简化的形式介绍将在以下具体实施方式中进一步描述的一些概念。本概述并不旨在专门标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
各实施例涉及允许在基于web的电子邮件系统中同步会话和会话属性。根据某些实施例,可以向新客户机枚举会话,从而提供文件夹专用和全局会话信息。在接收到初始会话信息之后,客户机可维持会话状态,该会话状态可在通过会话同步命令来从web服务存储中更新客户机时使用。
通过阅读下面的详细描述并参考相关联的附图,这些及其他特点和优点将变得显而易见。可以理解,前述一般描述和以下的详细描述都是说明性的,并且不限制所要求保护的各方面。
附图说明
图1示出根据某些实施例的用于同步基于web的电子邮件中的会话结构的示例联网系统;
图2示出根据各实施例的系统的主要组件;
图3示出系统中用于同步会话结构的示例存储表和索引;
图4是示出根据各实施例的系统的主要组件之间的示例交互的动作图;
图5是其中可实现根据各实施例的系统的联网环境;
图6是其中可实现各实施例的示例计算操作环境的框图;以及
图7示出根据各实施例的在基于web的电子邮件系统中同步会话结构的过程的逻辑流程图。
具体实施方式
如上面简要描述的,文件夹专用和全局会话信息可采用会话状态来与基于web的邮件系统中的电子邮件客户机应用同步。在以下详细描述中,参考了构成详细描述的一部分并作为说明示出了各具体实施方式或示例的附图。可组合这些方面,可利用其他方面,并且可以做出结构上的改变而不背离本发明的精神或范围。因此,以下详细描述并不旨在限制,并且本发明的范围由所附权利要求及其等效方案来限定。
在下面的详细描述中,将参考构成本发明的一部分的附图,在附图中,通过例图,示出了特定实施例或示例。可组合这些方面,可利用其他方面,并且可以做出结构上的改变而不背离本发明的精神或范围。因此,以下详细描述并不旨在限制,并且本发明的范围由所附权利要求及其等效方案来限定。
尽管在结合在计算设备上的操作系统上运行的应用程序执行的程序模块的一般上下文中描述了各实施例,但是本领域的技术人员会认识到各方面也可以结合其它程序模块实现。
一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构和其他类型的结构。此外,本领域的技术人员可以明白,各实施例可以用其他计算机系统配置来实施,包括手持式设备、多处理器系统、基于微处理器或可编程消费电子产品、小型计算机、大型计算机以及类似计算设备。各实施例还能在任务由通过通信网络链接的远程处理设备来执行的分布式计算环境中实现。在分布式计算环境中,程序模块可位于本地和远程存储器存储设备两者中。
各实施例可被实现为计算机实现的过程(方法)、计算系统、或者诸如计算机程序产品或计算机可读介质等制品。计算机程序产品可以是计算机系统可读并且编码包括用于使计算机或计算系统执行示例过程的指令的计算机程序的计算机存储介质。计算机可读存储介质是非瞬态的计算机可读存储器设备。例如,计算机可读存储介质可经由易失性计算机存储器、非易失性存储器、硬盘驱动器、闪存驱动器、软盘或紧致盘和类似介质中的一个或多个来实现。
贯穿本说明书,术语“平台”可以是用于提供基于web的电子邮件服务的软件和硬件组件的组合。平台的示例包括但不限于,在多个服务器上执行的托管服务、在单个计算设备上执行的应用、以及类似系统。术语“服务器”一般指通常在联网环境中执行一个或多个软件程序的计算设备。然而,服务器还可以被实现为在被视作网络上的服务器的一个或多个计算设备上执行的虚拟服务器(软件程序)。在下面将提供关于这些技术和示例操作的更多细节。
参考图1,图示100示出根据某些实施例的用于同步基于web的电子邮件中的会话结构的示例联网系统。图示100中示出的各示例组件出于说明目的。可以在各种本地计算环境、联网计算环境和利用各种计算设备和系统的类似计算环境中实现各实施例。
根据某些实施例,作为web服务102的一部分,促进电子邮件交换的web服务命令允许客户机(例如,106、108、110)同步会话,这些会话在指定文件夹和时间窗内具有至少一个电子邮件。web服务102可报告会话的而非电子邮件的变更,并且高效地枚举现有会话,使得加入该服务的新客户机接收所有会话数据。可以报告与每一会话有关的文件夹专用和全局信息,诸如(特定文件夹或全部中)已读/未读/已加标志/已回复电子邮件的数量。web服务102还可向客户机返回同步状态,从而允许它控制同步会话。如图示100中所示,web服务102和客户机106-110可通过一个或多个网络112进行通信,并且与电子邮件(和会话)有关的数据可被存储在一个或多个数据存储104中。
根据各实施例,web服务可跟踪服务器数据库中会话对象的变更,并且向客户机报告任何变更的会话的结构。这可包括聚集的数据,如主题、收件人、标志、重要性、分类等。已报告数据还可包括作为会话的一部分的电子邮件(例如,由“itemId(项id)”来标识)列表。
为高效地填充文件夹的现有内容,当客户机首次连接时,查询机制可被使用,其中对每一请求寻找最后同步的会话。这种方式使同步状态保持较小,并且对服务器而言是高效操作。
图2示出根据各实施例的系统的主要组件。使得电子邮件服务内的会话能够同步的系统可包括任何数量的组件。那些图示200中所示的仅出于示例目的,而不构成对各实施例的限制。
根据各实施例,系统中的示例组件包括与web服务224(例如,美国华盛顿州雷蒙德市的微软公司的)进行通信的基于web的电子邮件应用222,以及同步服务226。web服务224和同步服务226可与内部应用编程接口(API)228内的同步提供者230进行交互,并且通过消息收发API(MAPI)232与存储电子邮件、会话和相关元数据的数据存储236的增量变更同步(ICS)234进行交互。
同步服务226的一个示例是美国华盛顿州雷蒙德市的微软公司的Exchange(EAS),它是通过针对将电子邮件、联系人、日历、任务和备注从消息收发服务器同步到移动设备而设计的超文本传输协议(HTTP)进行通信的基于XML的协议。该协议还可提供移动设备管理和策略控制。同步服务226可提供会话视图,该会话视图将各电子邮件消息放在由若干属性连接的视图中,这些属性包括消息ID和电子邮件标题、备注同步、(从其日历中)查找联系人有空与否(空闲/忙碌状态)的能力、其中共享常用联系人的名称的昵称高速缓存、设置移动会话中的各消息的服务器侧规则的能力。
web服务224和基于web的电子邮件应用222可通过内部API228与数据存储236进行通信,而MAPI232充当中间层。MAPI232是消息收发体系结构和基于组件对象模型(COM)的API,该MAPI通过调用与特定消息收发服务器接口的MAPI子系统例程来允许客户机程序变成启用、知晓、或基于(电子邮件)消息收发。MAPI允许对客户机计算机上的消息收发系统的完全控制,对消息的创建和管理,对客户机收件箱、服务提供者的管理等等。MAPI包括访问消息传输、消息存储和目录的设施。ICS234是web服务的一部分,它允许MAPI客户机枚举给定文件夹中已发生的变更。ICS234可被构想为变更跟踪模块。
在一个示例场景中,基于web的电子邮件应用222可将会话同步请求发送给web服务224。作为响应,web服务224可在文件夹的会话视图上调用ICS234,并且确定已变更的会话的列表。对于每一收到会话ID,客户机可发送GetConversationItems(获取会话项)请求以及该会话的会话状态团块。web服务224可从文件夹的会话视图中读取项列表,与会话状态中的数据作比较,并且返回已变更的项属性和正文。更详细的过程在下文中解释。
基于web的电子邮件应用222可通过发送同步会话请求来开始同步会话。该请求可包括要(例如,按优先级次序)同步的文件夹ID的列表、要同步的时间窗、要返回的变更数量、和/或兆同步状态团块(首次同步时为空)。该响应可包括已更新的兆同步状态团块、指示是否存在更多变更的标志、参与所请求的文件夹中的至少一个的已变更或已添加的会话、以及已删除的会话。每个会话的数据可包括会话ID、会话对象的消息标识符(MID)(以对删除进行相关)、针对文件夹中某些文件夹的聚集统计数据、和/或聚集全局统计数据。已删除的会话中的每一个可包括会话对象的MID以及消息从中被删除的文件夹ID。
在接收到该响应之后,基于web的电子邮件应用222可迭代通过已添加/已变更的会话,迭代通过已删除的会话,并且删除最后收到时间经过了所需时间窗的会话。通过已添加/已变更的会话的迭代可包括使用会话ID在本地数据库中找出该会话(如果没找到,则可创建新会话),更新全局统计数据,更新文件夹统计数据(对于统计数据可用的那些文件夹),移除针对不在文件夹ID(FID)内的文件夹的任何文件夹统计数据,并且将会话ID添加到“get(获取)”会话列表。迭代通过已删除的会话可包括使用MID在本地数据库中找到该会话(如果没找到,则跳到下一个已删除的会话),移除针对该已删除的会话所在的文件夹的任何文件夹统计数据,并且将会话ID添加到“get”会话列表。
对于同步会话期间所累积的每一会话ID,基于web的电子邮件应用222可发送GetConversationItems(获取会话项)请求以及以下自变量:(1)会话ID,(2)该会话的最后一个GetConversationItems中接收到的CState(会话状态),以及(3)对于该会话中的每一消息,项ID+变更键+读取标志变更键。如果响应是“未找到会话”,则基于web的电子邮件应用可从其数据库中删除该会话。如果该会话被找到,则响应可包括已变更的项的消息属性、受这些变更影响的消息的正文部分、该会话的新Cstate、以及对于该会话中的每一消息的项ID+变更键+读取标志变更键。基于web的电子邮件应用可将响应存储在该会话中。如果任何项ID在该请求中但不在该响应中,则消息可被删除。
web服务224可接收会话同步请求以及以下自变量:要同步的文件夹ID的列表、要同步的时间窗、要返回的变更数量、和/或兆同步状态团块(首次同步时为空)。该响应可包括已更新的同步状态团块、指示是否存在更多变更的标志、参与所请求的文件夹中的至少一个的已变更或已添加的会话、和/或已删除的会话。每个会话的数据可包括会话ID、会话对象的MID(以对删除进行相关)、针对文件夹中某些文件夹的聚集统计数据、和/或聚集全局统计数据。已删除的会话可包括会话对象的MID、会话从中被删除的文件夹的文件夹ID。
web服务224可通知执行以下步骤来计算响应:
1)将兆同步状态团块分割成要同步的每一文件夹的同步状态
2)对于要(按所请求的次序)同步的每一文件夹:
a.如果该文件夹的同步状态不存在
i.从ICS获取“追赶”同步状态,并且将其封装在兆同步状态中。
ii.将当前时间存储成最后收到时间(LRT)水印
b.如果同步状态确实存在,则通过调用在所请求的文件夹上使用“会话模式”和“新到旧”的ICS来枚举变更。
i.跳过LRT在所请求的时间窗之前的任何变更
ii.对于添加和变更:接收会话ID、MID、聚集统计数据(文件夹和全局)。
iii.对于删除:接收会话对象的MID
3)对于要(按最新LRT水印的次序)同步的每一文件夹:
a.如果LRT水印经过了所请求的时间窗,则跳到下一个文件夹
b.查询LRT小于LRT水印的会话(按LRT降序)。当大于所请求的时间窗的LRT达到时(或结果的结尾),存储在同步状态中已检测到的最低LRT。
只要达到客户机所请求的变更数量,系统就摆脱以上循环。
web服务224可接收GetConversationItems请求以及以下自变量:(1)会话ID,(2)该会话的最后一个GetConversationItems中接收到的CState,以及(3)对于该会话中的每一消息的项ID+变更键+读取标志变更键。如果响应是“未找到会话”,则基于web的电子邮件应用222可从其数据库中删除该会话。如果该会话被找到,则响应可包括已变更的项的消息属性、受这些变更影响的消息的正文部分、该会话的新Cstate、以及对于该会话中的每一消息的项ID+变更键+读取标志变更键。
web服务224可调用ICS234以及自变量:(1)先前同步状态,(2)文件夹ID,(3)指示“会话模式”的新标志,(4)“新到旧”标志,以及(5)针对添加和变更的要返回的额外属性列表。ICS234可返回会话已添加/已变更、会话“已软删除”(不再位于被同步的文件夹中)、以及新同步状态。会话已添加/已变更可包括会话ID、会话对象的MID(用于对未来删除进行相关)、文件夹专用会话统计数据、以及全局会话统计数据。“已软删除”会话还可包括会话对象的MID。ICS模式可枚举对在该文件夹中具有至少一个消息的任何会话对象的变更。由于web服务可能正针对客户机所请求的每一文件夹执行ICS枚举,因此每一文件夹的同步状态可被存储在数据存储236中。
图3示出系统中用于同步会话结构的示例存储表和索引。根据各实施例的系统可采用一个或多个表来跟踪会话状态、消息状态等等。图示300中在概念上示出某些示例表。
如上面提到的,ICS模式可枚举对在文件夹中具有至少一个消息的任何会话对象的变更。对于被同步的文件夹(例如,344、346),按变更数量(CN)来排序的会话视图索引352可被维护。在某些实施例中,数据存储可维护每一文件夹的这些索引中的若干索引。消息的状态可被维护在文件夹的会话视图342中,其中这些消息连同它们的会话属性一起被记录。会话信息可被存储在会话文件夹348中。如上面讨论的,系统可在同步的各个阶段使用MID和FID(350)。
由于web服务可能正针对客户机所请求的每一文件夹执行ICS枚举,因此每一文件夹的同步状态可被存储。如果同步状态的大小太大,则可通过使用删除历史表354来移除数据。随着消息被删除,可以用新的CN将其附加到删除历史表354。在同步时间,可将删除历史表354中未经处理的任何条目包括在已删除响应集中。
图4是示出根据各实施例的系统的主要组件之间的示例交互的动作图。尽管图示400显示了基于web的电子邮件应用462、web服务464、ICS466、以及存储468之间的交互,但根据各实施例的系统可包括附加组件以及附加交互。
在一个示例场景中,基于web的电子邮件应用462可以以会话同步请求(471)来开始该过程,web服务464可依该会话同步请求,通过ICS466来读取文件夹的会话视图(472)。ICS466可将同步操作(473)返回给web服务464,该web服务464可将会话ID(474)提供给基于web的电子邮件应用462。作为响应,基于web的电子邮件应用462可将GetConversationItems请求以及先前状态(475)发送给web服务464。根据从基于web的电子邮件应用接收到的会话ID,web服务464可通过ICS466将对文件夹的会话视图的查询(476)提交给存储468。
作为对该查询的响应,web服务464可从存储468接收项和变更键的列表(477)并且查询这些项(478)。存储468可将项属性和正文差异(479)返回给web服务464,该web服务464可将项属性、正文差异、以及新状态(480)发送给基于web的电子邮件应用462。根据各实施例的系统还可采用更少或更多的交互来同步客户机之间的会话。
图1到图4的示例实施例以特定组件和配置示出。各实施例不仅限于根据这些示例配置的系统。对基于web的系统中的电子邮件会话结构进行的同步可在采用商业应用中更少或更多的组件的配置中实现。此外,图1至4中所示的示例体系结构、系统和组件及其属性可以使用在此所述的原理通过类似方式以其他组件来实现。
图5是可实现根据各实施例的系统的联网环境。具有会话同步的基于web的电子邮件服务可通过在一个或多个服务器514或诸如托管服务等单个服务器(例如,web服务器)516上执行的一个或多个应用来促进。促进电子邮件交换和会话同步的应用可以通过网络510来与诸如智能电话513、膝上型计算机512、或台式计算机511(“客户机设备”)等各个计算设备上的客户机应用(诸如浏览器)进行通信。
如上面讨论的,在跨客户机应用同步会话时,即使同步限于文件夹的子集,基于web的电子邮件服务也可以使得客户机设备511-513和类似设备上的客户机应用能够交换电子邮件。服务器可直接地或通过数据库服务器518来从数据存储519中取回或向数据存储519存储相关的数据。
网络510可包括服务器、客户机、因特网服务供应商以及通信介质的任何拓扑结构。根据各实施例的系统可以具有静态或动态拓扑结构。网络510可包括诸如企业网络等安全网络、诸如无线开放网络等非安全网络、或因特网。网络510还通过诸如公共交换电话网络(PSTN)或蜂窝网络等其他网络来协调通信。此外,网络510可包括诸如蓝牙或类似网络等短程无线网络。网络510提供此处描述的节点之间的通信。作为示例而非限制,网络510可以包括例如声学、RF、红外线和其它无线介质等无线介质。
可以采用计算设备、应用、数据源和数据分发系统的许多其它配置来实现具有会话同步的基于web的电子邮件服务。此外,图5中所讨论的联网环境仅用于说明目的。各实施例不仅限于示例应用、模块或过程。
图6及相关联讨论旨在提供对其中可实现各实施例的合适计算环境的简要概括描述。参考图6,该图示出了诸如计算设备600之类的根据各实施例的应用的示例计算操作环境的框图。在基本配置中,计算设备600可包括至少一个处理单元602和系统存储器604。计算设备600还可以包括在执行程序时协作的多个处理单元。取决于计算设备的确切配置和类型,系统存储器604可以是易失性的(诸如RAM)、非易失性的(诸如ROM、闪存等)或是两者的某种组合。系统存储器604通常包括适于控制平台的操作的操作系统605,例如来自美国华盛顿州雷蒙德市的微软公司的操作系统。系统存储器604还可以包括一个或多个软件应用,诸如程序模块606、web服务622、以及基于web的电子邮件应用624。
web服务622可提供促进客户机应用之间进行电子邮件交换的电子邮件服务以及其他服务。web服务622可包括用于提供基于web的服务的一个或多个应用,诸如基于web的电子邮件应用624。基于web的电子邮件应用624可通过采用每一客户机处的会话状态以及会话同步的web服务命令来使得电子邮件系统内的会话能够同步。该基本配置在图6中由虚线608内的那些组件示出。
计算设备600可以具有附加特征或功能。例如,计算设备600还可包括附加数据存储设备(可移动和/或不可移动),诸如,例如磁盘、光盘或磁带。在图6中通过可移动存储609和不可移动存储610示出这样的附加存储。计算机可读存储介质可以包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机可读存储介质是非瞬态的计算机可读存储器设备。系统存储器604、可移动存储609和不可移动存储610都是计算机可读存储介质的示例。计算机可读存储介质包括但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术,CD-ROM、数字多功能盘(DVD)或其它光学存储,磁带盒、磁带、磁盘存储或其它磁存储设备,或能用于存储所需信息且能够由计算设备600访问的任何其它介质。任何这样的计算机可读存储介质都可以是计算设备600的一部分。计算设备600也可具有输入设备612,诸如键盘、鼠标、笔、语音输入设备、触摸输入设备和类似输入设备。还可以包括输出设备614,诸如显示器、扬声器、打印机和其它类型的输出设备。这些设备在本领域中公知且无需在此处详细讨论。
计算设备600还可以包含允许该设备与其它设备618通信的通信连接616,诸如通过分布式计算环境中的无线网络、卫星链路、蜂窝链路和类似机制。其他设备618可包括执行通信应用的计算机设备、存储服务器和类似设备。通信连接616是通信介质的一个示例。通信介质可以包括计算机可读指令、数据结构、程序模块、或者诸如载波或其它传输机制等的已调制数据信号中的其它数据,并且包括任何信息传递介质。术语“已调制数据信号”指其一个或多个特征以这样的方式设置或改变以便在信号中对信息进行编码的信号。作为示例而非限制,通信介质包括诸如有线网络或直接线连接之类的有线介质,以及诸如声学、RF、红外及其他无线介质之类的无线介质。
各示例实施例还包括各种方法。这些方法可以用任何数量的方式,包括本文中所描述的结构来实现。一种此类方式是通过本文中描述的类型的设备的机器操作。
另一可任选方式是该方法的各个操作中的一个或多个操作在结合一个或多个人类操作者执行该方法的各个操作中的某一些的情况下被执行。这些人类操作者无需彼此同在一处,而是其每一个可以仅与执行程序的一部分的机器同在一处。
图7示出根据各实施例的在基于web的电子邮件系统中同步会话结构的过程700的逻辑流程图。过程700可由任何基于web的电子邮件服务或应用来实现。
过程700可以以操作710开始,其中会话可被枚举。可以向新客户机或在长时间缺席之后参与该服务的客户机提供所有会话信息,诸如与该会话相关联的电子邮件和属性。在操作720,可以向客户机提供会话细节和状态。会话可由会话ID、名称、或类似合适的属性来标识。
在操作730,可以从客户机接收会话状态。基于web的电子邮件服务可基于客户机的会话状态来确定要提供给客户机的会话细节,并且在操作740将那些会话细节提供给客户机。该服务可同时更新客户机的状态,或者客户机可在本地更新其状态。
某些实施例可在包括通信模块、存储器和处理器的计算设备中实现,其中处理器结合存储在存储器中的指令执行如上所述的方法或类似方法。其它实施例可被实现为其上存储有用于执行如上所述的方法或类似方法的指令的计算机可读存储介质。
过程700中包括的操作只是为了说明。用于管理会话权限的通信服务可以使用此处所述的各原理通过具有更少或附加步骤的相似过程、以及不同的操作次序来实现。
以上说明书、示例和数据提供了对各实施例的组成的制造和使用的全面描述。尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。相反,上述具体特征和动作是作为实现权利要求和各实施方式的示例形式而公开的。
Claims (10)
1.一种在计算机设备上执行的用于同步电子邮件会话的方法,所述方法包括:
在web服务处接收来自客户机应用的会话同步请求;
在文件夹的会话视图上调用内部应用编程接口(API)来确定已变更的会话的列表;
将包括已变更的会话的标识符的响应传送给所述客户机应用;
对于每一已变更的会话,接收来自所述客户机应用的请求以及会话状态;
基于接收到的会话状态,将每一已变更的会话的会话数据与文件夹的所述会话视图作比较;以及
将所述已变更的会话中的项属性和消息的正文返回给所述客户机应用。
2.如权利要求1所述的方法,其特征在于,所述会话同步请求包括以下一组中的至少一个:要同步的文件夹标识符的列表、要同步的时间窗、要返回的变更数量、以及同步状态团块。
3.如权利要求2所述的方法,其特征在于,还包括:
使所述客户机应用迭代通过已添加的会话、已变更的会话、以及最后收到时间经过了要同步的所述时间窗的已删除的会话。
4.如权利要求3所述的方法,其特征在于,使所述客户机应用迭代通过已添加和已变更的会话还包括:
使用接收到的会话标识符来在本地数据库中找到已添加和已变更会话之一。
更新全局统计数据;
更新文件夹统计数据;
移除不在所传送的文件夹标识符(FID)的列表内的文件夹的任何文件夹统计数据;以及
将所述会话标识符添加到会话的列表中,以便包括在对所述web服务的请求中。
5.如权利要求3所述的方法,其特征在于,使所述客户机应用迭代通过已删除的会话还包括:
使用消息标识符(MID)来在本地数据库中找到已删除的会话;
移除包括所述已删除的会话的文件夹的任何文件夹统计数据;
将所述已删除的会话的会话标识符添加到对所述web服务的请求的会话列表中。
6.如权利要求1所述的方法,其特征在于,还包括:
将以下一组中的至少一个包括在传送给所述客户机应用的响应中:已更新的同步状态团块、指示是否存在更多变更的标志、参与所请求的文件夹中的至少一个的已变更的会话和已添加的会话、以及已删除的会话。
7.一种用于同步电子邮件会话的系统,所述系统包括:
执行基于web的电子邮件应用的第一服务器,其被配置成:
传送会话同步请求以及以下一组中的至少一个:同步状态团块、要同步的文件夹列表、以及同步的时间窗;
接收会话标识符的列表;以及
对于每一接收到的会话标识符,传送包括最后会话状态的请求;以及
执行web服务的第二服务器,其被配置成:
调用web服务数据存储的变更跟踪模块来确定已变更的会话的列表;
将会话标识符的所述列表传送给所述基于web的电子邮件应用;
在所述web服务数据存储处从文件夹的会话视图中读取项列表;
基于所述接收到的最后会话状态来比较项数据;以及
向所述基于web的电子邮件应用返回被确定为已变更的项属性和消息的正文。
8.如权利要求7所述的系统,其特征在于,所述第二服务器还被配置成:
向所述基于web的电子邮件应用返回与每一会话相关联的文件夹专用信息和全局信息、以及经聚集的数据。
9.如权利要求8所述的系统,其特征在于,所述第二服务器还被配置成:通过经由内部API和消息收发API(MAPI)调用所述变更跟踪模块来查询所述web服务数据存储。
10.一种其上存储有用于同步电子邮件会话的指令的计算机可读存储器设备,所述指令包括:
从基于web的电子邮件应用接收会话同步请求以及以下一组中的至少一个:同步状态团块、要同步的文件夹列表、以及同步的时间窗;
调用web服务数据存储的变更跟踪模块来确定已变更的会话的列表;
将已变更的会话的会话标识符的列表传送给所述基于web的电子邮件应用;
对于每一接收到的会话标识符,在所述基于web的电子邮件应用处接收包括最后会话状态的请求;
在所述web服务数据存储处从文件夹的会话视图中读取项列表;
基于所述接收到的最后会话状态来比较项数据;以及
向所述基于web的电子邮件应用返回被确定为已变更的项属性和消息的正文。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/213,320 | 2011-08-19 | ||
US13/213,320 US8533275B2 (en) | 2011-08-19 | 2011-08-19 | Synchronizing conversation structures in web-based email systems |
PCT/US2012/049678 WO2013028336A2 (en) | 2011-08-19 | 2012-08-05 | Synchronizing conversation structures in web-based email systems |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103733218A true CN103733218A (zh) | 2014-04-16 |
Family
ID=47713437
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280040255.XA Pending CN103733218A (zh) | 2011-08-19 | 2012-08-05 | 在基于web的电子邮件系统中同步会话结构 |
Country Status (6)
Country | Link |
---|---|
US (2) | US8533275B2 (zh) |
EP (1) | EP2745263A4 (zh) |
JP (1) | JP6018204B2 (zh) |
KR (1) | KR101919180B1 (zh) |
CN (1) | CN103733218A (zh) |
WO (1) | WO2013028336A2 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109743247A (zh) * | 2018-12-29 | 2019-05-10 | 咪咕文化科技有限公司 | 一种企业通讯录更新系统及方法、服务器、存储介质 |
CN110445826A (zh) * | 2018-05-04 | 2019-11-12 | 阿里巴巴集团控股有限公司 | 一种会话信息获取方法、装置及服务器 |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130097116A1 (en) * | 2011-10-17 | 2013-04-18 | Research In Motion Limited | Synchronization method and associated apparatus |
US9166892B1 (en) * | 2012-01-20 | 2015-10-20 | Google Inc. | Systems and methods for event stream management |
US20130212198A1 (en) * | 2012-02-14 | 2013-08-15 | Htc Corporation | Methods and systems of dynamic mail synchronization for mobile devices |
US9497150B2 (en) | 2014-07-08 | 2016-11-15 | Tuul, Inc. | System and method for managing electronic conversations |
US9185063B1 (en) * | 2014-11-08 | 2015-11-10 | Ashish Kumar | System and method for sharing and synchronization of information within a specified information context among users with a mobile electronic device |
US20170005973A1 (en) * | 2015-06-30 | 2017-01-05 | International Business Machines Corporation | Message refresh for communication devices |
US10033680B2 (en) | 2015-10-27 | 2018-07-24 | Blackberry Limited | Method for priming inbox and conversations during initial synchronization of messages |
US11245654B2 (en) | 2019-07-02 | 2022-02-08 | International Business Machines Corporation | System and method to create global conversation thread across communication channels |
US11398996B2 (en) | 2019-07-02 | 2022-07-26 | International Business Machines Corporation | System and method to create global conversation thread across communication channels |
CN113242174B (zh) * | 2021-07-09 | 2021-11-09 | 太平金融科技服务(上海)有限公司深圳分公司 | 邮件同步方法、装置、计算机设备和存储介质 |
US20230078600A1 (en) * | 2021-08-27 | 2023-03-16 | Formagrid Inc | Email-Based Data Transfer and Synchronization |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1739107A (zh) * | 2003-08-21 | 2006-02-22 | 微软公司 | 为可由硬件/软件接口系统管理的信息单元提供同步服务的系统和方法 |
CN1820266A (zh) * | 2003-08-21 | 2006-08-16 | 微软公司 | 用于将应用程序与基于项的存储平台接口的系统和方法 |
US20090100009A1 (en) * | 2004-09-02 | 2009-04-16 | Zimbra, Inc. | System and method for displaying and acting upon email conversations across folders |
US20100100590A1 (en) * | 2008-10-21 | 2010-04-22 | Palay Andrew J | Always ready client/server data synchronization |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6052735A (en) * | 1997-10-24 | 2000-04-18 | Microsoft Corporation | Electronic mail object synchronization between a desktop computer and mobile device |
US6330589B1 (en) | 1998-05-26 | 2001-12-11 | Microsoft Corporation | System and method for using a client database to manage conversation threads generated from email or news messages |
US6952708B2 (en) | 2001-06-27 | 2005-10-04 | Microsoft Corporation | Method and system for using a sync key |
US7149813B2 (en) | 2001-08-14 | 2006-12-12 | Microsoft Corporation | Method and system for synchronizing mobile devices |
US7107314B2 (en) | 2003-01-21 | 2006-09-12 | Red Hat, Inc. | Mail system synchronization using multiple message identifiers |
US7600048B2 (en) * | 2005-03-04 | 2009-10-06 | Microsoft Corporation | Web services processing using MAPI compliant mail applications |
US7461104B2 (en) * | 2006-03-22 | 2008-12-02 | Webroot Software, Inc. | Method and system for rapid data-fragmentation analysis of a New Technology File System |
US7792792B2 (en) | 2006-05-22 | 2010-09-07 | Microsoft Corporation | Synchronizing structured web site contents |
US20090083441A1 (en) | 2007-09-24 | 2009-03-26 | Microsoft Corporation | Synchronization of web service endpoints in a multi-master synchronization environment |
US20090094337A1 (en) | 2007-10-08 | 2009-04-09 | Eric Wilfred Bruno Dias | Method of accessing web e-mail off-line |
US9665850B2 (en) | 2008-06-20 | 2017-05-30 | Microsoft Technology Licensing, Llc | Synchronized conversation-centric message list and message reading pane |
US8402096B2 (en) * | 2008-06-24 | 2013-03-19 | Microsoft Corporation | Automatic conversation techniques |
US20100153335A1 (en) | 2008-12-12 | 2010-06-17 | Microsoft Corporation | Synchronizing multiple classes with disparate schemas in the same collection |
US8645303B2 (en) * | 2009-06-01 | 2014-02-04 | Advance Response, LLC. | Methods and systems for creating, accessing, and communicating content |
US8407181B2 (en) * | 2010-05-26 | 2013-03-26 | Research In Motion Limited | Email system providing enhanced conversation and category search features and related methods |
US8312096B2 (en) * | 2010-12-08 | 2012-11-13 | Google Inc. | Priority inbox notifications and synchronization for mobile messaging application |
-
2011
- 2011-08-19 US US13/213,320 patent/US8533275B2/en active Active
-
2012
- 2012-08-05 JP JP2014527158A patent/JP6018204B2/ja active Active
- 2012-08-05 CN CN201280040255.XA patent/CN103733218A/zh active Pending
- 2012-08-05 WO PCT/US2012/049678 patent/WO2013028336A2/en active Application Filing
- 2012-08-05 EP EP12826364.7A patent/EP2745263A4/en not_active Withdrawn
- 2012-08-05 KR KR1020147004127A patent/KR101919180B1/ko active IP Right Grant
-
2013
- 2013-08-12 US US13/964,839 patent/US9413703B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1739107A (zh) * | 2003-08-21 | 2006-02-22 | 微软公司 | 为可由硬件/软件接口系统管理的信息单元提供同步服务的系统和方法 |
CN1820266A (zh) * | 2003-08-21 | 2006-08-16 | 微软公司 | 用于将应用程序与基于项的存储平台接口的系统和方法 |
US20090100009A1 (en) * | 2004-09-02 | 2009-04-16 | Zimbra, Inc. | System and method for displaying and acting upon email conversations across folders |
US20100100590A1 (en) * | 2008-10-21 | 2010-04-22 | Palay Andrew J | Always ready client/server data synchronization |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110445826A (zh) * | 2018-05-04 | 2019-11-12 | 阿里巴巴集团控股有限公司 | 一种会话信息获取方法、装置及服务器 |
CN110445826B (zh) * | 2018-05-04 | 2021-11-30 | 阿里巴巴集团控股有限公司 | 一种会话信息获取方法、装置及服务器 |
CN109743247A (zh) * | 2018-12-29 | 2019-05-10 | 咪咕文化科技有限公司 | 一种企业通讯录更新系统及方法、服务器、存储介质 |
CN109743247B (zh) * | 2018-12-29 | 2021-12-03 | 咪咕文化科技有限公司 | 一种企业通讯录更新系统及方法、服务器、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20130046836A1 (en) | 2013-02-21 |
EP2745263A4 (en) | 2015-03-18 |
KR101919180B1 (ko) | 2019-02-08 |
US20130332547A1 (en) | 2013-12-12 |
JP6018204B2 (ja) | 2016-11-02 |
EP2745263A2 (en) | 2014-06-25 |
US9413703B2 (en) | 2016-08-09 |
US8533275B2 (en) | 2013-09-10 |
WO2013028336A3 (en) | 2013-04-25 |
WO2013028336A2 (en) | 2013-02-28 |
KR20140049559A (ko) | 2014-04-25 |
JP2014529131A (ja) | 2014-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103733218A (zh) | 在基于web的电子邮件系统中同步会话结构 | |
US10671977B2 (en) | Management team mailbox integrating email repository and content management store services | |
US10079789B2 (en) | Shared attachments | |
US9935780B2 (en) | Attachment collaboration within message environments | |
US9015248B2 (en) | Managing updates at clients used by a user to access a cloud-based collaboration service | |
US10491673B2 (en) | Synchronization of conversation data | |
AU2005286683A1 (en) | Mobile messaging system and method | |
CN103136658A (zh) | 自动聚集联系人信息 | |
WO2004114120A1 (en) | Method and system for data collection for alert delivery | |
CN102419838B (zh) | 提供合并后的项目信息服务 | |
WO2015130720A1 (en) | Utilizing interactivity signals to generate relationships and promote content | |
US20160330158A1 (en) | Messaging Sharing System and Method of Use | |
US8880595B2 (en) | Asynchronous, passive knowledge sharing system and method | |
US20080281608A1 (en) | Providing Collaboration services to Business Applications to correlate user collaboration with the business application | |
CN101562628B (zh) | 个性化数字媒体内容管理和发布的方法、系统及服务器 | |
US20090157841A1 (en) | Encapsulation of online storage providers | |
US11822513B2 (en) | Work spaces including links to content items in their native storage location | |
US7536314B2 (en) | System and method for processing work according to an active work model |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
ASS | Succession or assignment of patent right |
Owner name: MICROSOFT TECHNOLOGY LICENSING LLC Free format text: FORMER OWNER: MICROSOFT CORP. Effective date: 20150728 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20150728 Address after: Washington State Applicant after: Micro soft technique license Co., Ltd Address before: Washington State Applicant before: Microsoft Corp. |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140416 |