CN101466077A - 实现呈现信息和日程信息同步的系统、装置和方法 - Google Patents
实现呈现信息和日程信息同步的系统、装置和方法 Download PDFInfo
- Publication number
- CN101466077A CN101466077A CN 200710161037 CN200710161037A CN101466077A CN 101466077 A CN101466077 A CN 101466077A CN 200710161037 CN200710161037 CN 200710161037 CN 200710161037 A CN200710161037 A CN 200710161037A CN 101466077 A CN101466077 A CN 101466077A
- Authority
- CN
- China
- Prior art keywords
- information
- schedule
- server
- event
- schedule information
- 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
- 238000000034 method Methods 0.000 title claims abstract description 49
- 230000008569 process Effects 0.000 claims description 21
- 230000009471 action Effects 0.000 claims description 13
- 230000000977 initiatory effect Effects 0.000 claims description 8
- 230000007246 mechanism Effects 0.000 abstract description 6
- 230000001360 synchronised effect Effects 0.000 abstract description 4
- 238000010295 mobile communication Methods 0.000 description 7
- 235000017858 Laurus nobilis Nutrition 0.000 description 3
- 244000125380 Terminalia tomentosa Species 0.000 description 3
- 235000005212 Terminalia tomentosa Nutrition 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000035945 sensitivity Effects 0.000 description 3
- 238000013523 data management Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明公开了一种实现呈现信息和日程信息同步的系统、方法以及呈现服务器和日历日程安排服务器,在日程信息发布者发布日程信息之后,日历日程安排服务器根据发布的日程信息生成该日程信息发布者当前的状态信息,自动通知呈现服务器更新该日程信息发布者的呈现信息;在呈现信息发布者手动修改自身的呈现信息并发布后,呈现服务器可以根据所接收的呈现信息生成事件信息通知日历日程安排服务器,更新该呈现信息发布者的日程信息。通过本发明的技术方案,简化了用户的操作,利用网络侧的同步机制,保证一个用户呈现信息和日程信息始终保持一致,使订阅该用户呈现信息和日程信息的不同用户群都可以及时得到该用户当前的状态。
Description
技术领域
本发明涉及通信技术,特别涉及将呈现(Presence)业务与日历日程安排(Calendar)业务相结合,实现呈现信息和日程信息同步的系统和方法以及呈现服务器和日历日程安排服务器。
背景技术
Presence业务是目前在即时通信应用中广泛使用的一种业务,主要目的是为其他即时通信用户呈现某一即时通信用户当前的状态,例如,该即时通信用户是处于在线(on line)状态,还是处于不在线(off line)状态。目前,随着移动通信技术的发展,Presence业务也可以作为开放移动联盟(OMA,Open Mobile Alliance)的一个业务引擎,能够应用在移动即时通信中,为移动用户提供服务。一般来讲,Presence业务中为用户呈现的信息称为呈现信息。除了用户当前的状态,呈现信息可以承载各种各样的复杂信息,例如,用户的通信意愿等等。互联网工程任务组(IETF,Internet Engineering TaskForce)对呈现信息的格式进行了标准化,其中包括丰富的状态呈现信息格式(RPID,Rich Presence Information Data Format)。
除了Presence业务之外,为了方便用户规划自己的时间以及安排工作等,网络运营上还提供了Calendar业务。现有的Calendar业务主要包含两种实现方式。一种是基于个人信息管理(PIM,Personal Information Manager)的Calendar,例如,在个人计算机或笔记本电脑上运行的具有日历功能的各种软件,或者在移动终端或个人数字助理(PDA)上运行日历软件等等。利用这种基于PIM的Calendar,用户可以通过定制自己的Calendar来规划自己的时间并安排自身的工作,但是由于基于PIM的Calendar主要为个人提供服务,无法实现多个用户之间的共享,因此,其他与该用户相关的用户无法查询该用户定制的Calendar。另一种Calendar是基于互联网的,比如现有的Yahoo Calendar,Google Calendar等等。基于互联网的Calendar通常在互联网上放置有专门的服务器来存储用户定制的包括日历及时间管理等信息在内的日程信息。通过这种基于互联网的Calendar,用户不仅可以定制自身的Calendar,并且可以将自身定制的Calendar发布给有权限查询自身日程信息的订阅者(Subscriber)。IETF于1996年即开始着手制定Calendar的标准,其中包括用于规定Calendar格式的标准iCalendar。
在现阶段,Presence业务和Calendar业务是两个相互独立的业务,也就是说,若一个用户同时使用网络运营商提供的Presence业务和Calendar业务,则该用户需要分别发布自身的呈现信息和日程信息给不同的用户群,浪费了用户的时间和网络资源。例如,对于一个工作繁忙的首席执行官(CEO)来讲,他每天都有严格的日程安排,为了将其当前的状态以及日程安排通知给其他相关人员,例如秘书、家人或者下属职员等,该CEO可以使用网络运营商提供的Presence业务和目前基于互联网的Calendar业务定制自身的呈现信息和日程信息,并分别发布给有权限查询自身呈现信息或日程信息的订阅者。这样,该CEO的秘书、家人以及下属职员等有权限查询该CEO呈现信息或日程信息的订阅者,就可以获知该CEO当前的状态,或日程安排。然而,由于现有Presence业务和Calendar业务是两个相互独立的业务,因此,为了保证呈现信息和日程信息的一致性,在日程安排不变的情况下,该CEO需要按照其日程安排,手动更新自身的呈现信息;而在日程安排改变的情况下,还要同时更新自身的呈现信息和日程信息。这种呈现信息和日程信息的更新是非常繁琐的,通常会占用大量的时间,并且若呈现信息或日程信息更新不及时或不完全,还会出现呈现信息和日程信息不一致的情况,无法保证订阅者获得真实可靠的呈现信息或日程信息。
发明内容
为了解决上述技术问题,本发明提供了一种实现呈现信息和日程信息同步的系统和方法,这样,用户可以只更新自身的呈现信息,其日程信息就可以自动或根据用户指示与更新后的呈现信息同步,或者用户可以只更新自身的日程信息,其呈现信息将自动与日程信息同步,从而大大方便了用户的操作,并且可以保证用户呈现信息和日程信息的一致性,保证不同的订阅群体获得正确的信息。
本发明实施例所述的实现呈现信息和日程信息同步的系统,包括:呈现信息发布者,日程信息订阅者,呈现服务器(Presence Server)和日历日程安排服务器(Calendar Server);其中,
所述Presence Server用于根据从所述呈现信息发布者接收的呈现信息生成所述呈现信息发布者的事件信息,并向所述Calendar Server发布所生成的事件信息;
所述Calendar Server用于根据所述Presence Server发布的事件信息更新自身存储的所述呈现信息发布者的日程信息,并向订阅所述呈现信息发布者日程信息的日程信息订阅者发布更新后的日程信息。
本发明实施例所述的另一实现呈现信息和日程信息同步的系统,包括:日程信息发布者,呈现信息订阅者,日历日程安排服务器(Calendar Server)和呈现服务器(Presence Server);其中,
所述Calendar Server用于根据从所述日程信息发布者接收的日程信息中所包含的事件,在新的事件开始时生成所述日程信息发布者的状态信息,并向所述Presence Server发布所生成的状态信息;
所述Presence Server用于根据所述Calendar Server发布的状态信息更新自身存储的所述日程信息发布者的呈现信息,并向订阅所述日程信息发布者呈现信息的呈现信息订阅者发布更新后的呈现信息。
本发明实施例所述的Presence Server,包括:
呈现信息接收模块,用于接收呈现信息发布者发布的呈现信息;
呈现信息存储模块,用于存储所接收的呈现信息;
事件信息生成模块,用于根据所接收呈现信息生成该呈现信息发布者的事件信息;以及
事件信息发布模块,用于向日历日程安排服务器Calendar Server发布所生成的事件信息。
上述Presence Server还可以进一步包括:状态信息接收模块,用于接收所述Calendar Server发布的所述呈现信息发布者的状态信息;以及呈现信息更新模块,用于根据所接收的状态信息更新呈现信息存储模块存储的所述呈现信息发布者的呈现信息。
本发明实施例所述的Calendar Server,包括:
日程信息接收模块,用于接收日程信息发布者发布的日程信息;
日程信息存储模块,用于存储所接收的日程信息;
状态信息生成模块,用于根据所接收的日程信息中所包含的事件,在新的事件开始时,生成所述日程信息发布者的状态信息;以及
状态信息发布模块,用于向呈现服务器Presence Server发布所生成的状态信息。
上述Calendar Server进一步包括:事件信息接收模块,用于接收所述Presence Server发布的所述日程信息发布者的事件信息;以及日程信息更新模块,用于根据接收的事件信息更新日程信息存储模块存储的该日程信息发布者的日程信息。
本发明实施例所述的根据日程信息更新呈现信息的方法包括:CalendarServer在收到日程信息发布者发布的日程信息后,根据所接收的日程信息中所包含的事件,在新的事件开始时生成该日程信息发布者的状态信息;Calendar Server将所生成的状态信息发布到呈现服务器Presence Server,由Presence Server根据所接收的状态信息更新该日程信息发布者的呈现信息。
本发明实施例所述的根据呈现信息更新日程信息的方法包括:PresenceServer在收到呈现信息发布者发布的呈现信息后,根据所接收的呈现信息生成该呈现信息发布者的事件信息;Presence Server将所生成的事件信息发布到日历日程安排服务器Calendar Server,由Calendar Server根据所接收的事件信息更新该呈现信息发布者的日程信息。Presence Server根据所接收的呈现信息生成该呈现信息发布者的事件信息的过程可以是自动的,也可以等待该呈现信息发布者的指示。如果该呈现信息发布者认为更新后的呈现信息只会维持一个短暂的时间,并未指示Presence Server去同步其日程安排信息,Presence Server将不会生成事件信息发送给Calendar Server。这样一来,在呈现信息发布者手动更改自身的呈现信息后,Presence Server可以自动或者在呈现信息发布者的指令之下将呈现信息发布到Calendar Server,让Calendar Server实现该呈现信息发布者日程信息的更新,而无需该呈现信息发布者手动更新自身的日程信息。
通过上述实施例所述的系统和方法,不但可以对订阅一个用户的呈现信息和日程信息的不同用户群保证该用户呈现信息和日程信息始终保持一致,还大大简化了用户的操作,既节省了用户的时间,提高了用户的效率,又增强了用户使用Presence业务和Calendar业务的体验。另外,由于通过上述系统和方法不需要用户分别向两个服务器发送内容相同信息,而由网络侧也即Presence Server与Calendar Server之间传递实现呈现信息和日程信息同步的信息,从而减少了对接入网侧资源的占用。
附图说明
下面将通过参照附图详细描述本发明的示例性实施例,使本领域的普通技术人员更清楚本发明的上述及其它特征和优点,附图中:
图1为本发明实施例所述的实现呈现信息和日程信息同步的系统结构示意图;
图2为本发明实施例所述的呈现服务器内部结构示意图;
图3为本发明实施例所述的日历日程安排服务器内部结构示意图;
图4为本发明实施例所述的根据日程信息同步呈现信息的方法流程图;
图5为本发明实施例所述的基于会话初始协议实现根据日程信息同步呈现信息的方法流程图;
图6为本发明实施例所述的根据呈现信息同步日程信息的方法流程图;
图7为本发明实施例所述的基于会话初始协议实现根据呈现信息同步日程信息的方法流程图。
具体实施方式
为使本发明的目的、技术方案更加清楚明白,以下参照附图并举实施例,对本发明做进一步详细说明。
为了解决现有技术中问题,本发明实施例给出了一种实现呈现信息和日程信息同步的系统,该系统的内部结构如图1所示,主要包括:位于用户侧的用户代理以及位于网络侧的呈现服务器(Presence Server)和日历日程安排服务器(Calendar Server)。
其中,用户代理可以集成在移动终端中,也可以集成在固定终端中。若用户代理集成在移动终端中,则用户代理通过移动通信系统,例如第三代移动通信系统,连接到位于网络侧的Presence Server和Calendar Server;若用户代理集成在固定终端中,则用户代理通过PSTN或互联网连接到位于网络侧的Presence Server和Calendar Server。为了实现Presence业务和/或Calendar业务,用户代理作为呈现信息的发布者时可以包括呈现信息客户端模块,作为日程信息的发布者时可以包括日程信息客户端模块,作为订阅其他用户呈现信息时可以包括呈现信息订阅者客户端模块,而作为订阅其他用户日程信息时可以包括日程信息订阅者客户端模块。上述用户代理也可以兼有上述呈现信息发布者、日程信息发布者、呈现信息订阅者或日程信息订阅者中的任意两种或两种以上的功能。
其中,呈现信息客户端模块也可以被称为呈现信息发布者,主要用于通过自身的接入网和核心网,例如移动通信系统或者互联网,向Presence Server发布该呈现信息发布者的呈现信息;
日程信息客户端模块也可以被称为日程信息发布者,主要用于通过自身的接入网和核心网,例如移动通信系统或者互联网,向Calendar Server发布该日程信息发布者的日程信息;
呈现信息订阅者客户端模块也可以被称为呈现信息订阅者,主要用于通过自身的接入网和核心网,例如移动通信系统或者互联网,向Presence Server发送订阅其他用户呈现信息的请求,并接收及显示Presence Server发布的被订阅用户的呈现信息;
日程信息订阅者客户端模块也可以被称为日程信息订阅者,主要用于通过自身的接入网和核心网,例如移动通信系统或者互联网,向Calendar Server发送订阅其他用户日程信息的请求,并接收及显示Calendar Server发布的被订阅用户的日程信息。
Presence Server主要用于完成如下常规功能,包括:接收并存储呈现信息发布者发布的呈现信息;接收呈现信息订阅者发送的订阅呈现信息的请求,查询该呈现信息订阅者的订阅权限以及存储的被订阅用户的呈现信息,并向呈现信息订阅者返回查询结果,具体来讲,若该呈现信息订阅者没有订阅被订阅用户呈现信息的权限,则向该呈现信息订阅者返回呈现信息订阅失败信息;若该呈现信息订阅者有订阅被订阅用户呈现信息的权限,则向该呈现信息订阅者返回被订阅用户发布的呈现信息。实际应用中,Presence Server也可以将所接收的呈现信息存储到外置的呈现信息数据管理服务器中。
Calendar Server主要用于完成如下常规功能,包括:接收并存储日程信息发布者发布的日程信息;接收日程信息订阅者发送的订阅日程信息的请求,查询该日程信息订阅者的订阅权限以及存储的被订阅用户的日程信息,并向日程信息订阅者返回查询结果,具体来讲,若该日程信息订阅者没有订阅被订阅用户日程信息的权限,则向该日程信息订阅者返回日程信息订阅失败信息;若该日程信息订阅者有订阅被订阅用户日程信息的权限,则向该日程信息订阅者返回被订阅用户发布的日程信息。实际应用中,Calendar Server也可以将所接收的日程信息存储到外置的日程信息数据管理服务器中。
除了上述常规功能之外,Presence Server和Calendar Server还应当进一步实现呈现信息和日程信息同步。也就是说,一方面,在日程信息发布者发布自身的日程信息之后,Calendar Server能够根据日程信息发布者发布的日程信息生成该日程信息发布者当前的状态信息,自动通知Presence Server,以实时更新该日程信息发布者的呈现信息;另一方面,在呈现信息发布者临时改变日程,手动修改自身的呈现信息并发布后,Presence Server能够自动或者根据该呈现信息发布者的请求,根据所接收的呈现信息生成事件信息通知Calendar Server,以更新该呈现信息发布者的日程信息。
上述系统可以应用在任何网络上,例如,可以应用到IP多媒体子系统(IMS,IP Multimedia Subsystem)网络上。若将上述系统应用到IMS网络上,则Presence Server和Calendar Server可以作为应用服务器配置在IMS网络的应用层。IMS网络可提供信令的传送,压缩,用户鉴权,认证,计费等功能。在用户使用呈现业务和日历和日程安排业务时,利用本发明这种信息同步的机制来降低接入侧的信令开销,节省时间,提高效率,大大提高了用户的体验。
由上述描述可见,呈现信息与日程信息的同步是一个双向的过程,包括根据日程信息同步呈现信息以及根据呈现信息同步日程信息两个方向的过程。本发明实施例所述的实现呈现信息与日程信息同步的系统可以只实现上述任意一个方向的信息同步,也可以同时实现上述两个方向上的信息同步。
除了上述实现呈现信息与日程信息同步的系统,本发明的实施例还给出了具有上述功能的Presence Server和Calendar Server的结构。
如图2所示,本发明实施例所述的Presence Server主要包括:
呈现信息接收模块,用于接收呈现信息发布者发布的呈现信息;
呈现信息存储模块,用于存储所接收呈现信息;
呈现信息发布模块,用于向已订阅所述呈现信息发布者的呈现信息的呈现信息订阅者发布呈现信息存储模块存储的呈现信息;
事件信息生成模块,用于根据所接收呈现信息生成该呈现信息发布者的事件信息;以及
事件信息发布模块,用于向Calendar Server发布所生成的事件信息。
更进一步,在实际的应用中,上述事件信息生成模块进一步用于接收来自呈现信息发布者的日程信息同步请求,在收到所述日程信息同步请求后再执行生成事件信息的过程。
通过上述模块,Presence Server即可根据呈现信息发布者发布的呈现信息生成该呈现信息发布者的事件信息并发布给Calendar Server,以实现根据呈现信息同步日程信息的过程。为了实现根据日程信息同步呈现信息的过程,上述Presence Server还可以进一步包括:
状态信息接收模块,用于接收Calendar Server发布的所述呈现信息发布者的状态信息;以及
呈现信息更新模块,用于根据接收的状态信息更新呈现信息存储模块存储的该呈现信息发布者的呈现信息。
在这种情况下,呈现信息发布模块进一步用于向所述呈现信息订阅者发布更新后的呈现信息。
如图3所示,本发明实施例所述的Calendar Server主要包括:
日程信息接收模块,用于接收日程信息发布者发布的日程信息;
日程信息存储模块,用于存储所接收日程信息;
日程信息发布模块,用于向已订阅所述日程信息发布者的日程信息的日程信息订阅者发布日程信息存储模块存储的日程信息;
状态信息生成模块,用于根据所接收日程信息中所包含的事件,在每个事件的开始时刻,生成该日程信息发布者的状态信息;以及
状态信息发布模块,用于向Presence Server发布所生成的状态信息。
通过上述模块,Calendar Server即可根据日程信息发布者发布的日程信息生成该日程信息发布者的状态信息并发布给Presence Server,以实现根据日程信息同步呈现信息的过程。为了实现根据呈现信息更新日程信息的过程,上述Calendar Server还可以进一步包括:
事件信息接收模块,用于接收Presence Server发布的该日程信息发布者的事件信息;以及
日程信息更新模块,用于根据接收的事件信息更新自身存储的该日程信息发布者的日程信息。
在这种情况下,日程信息发布模块进一步用于向所述日程信息订阅者发布更新后的日程信息。
下面将通过本发明的实施例详细说明呈现信息与日程信息的同步方法。
图4显示了根据日程信息同步呈现信息的过程。这一同步过程主要涉及的实体有日程信息发布者、Presence Server、Calendar Server以及呈现信息订阅者。从图4可以看出,根据日程信息同步呈现信息的过程主要包括:
步骤401:日程信息发布者将自身的日程信息发布到Calendar Server中;
步骤402:Calendar Server接收并保存所接收的日程信息,再根据所接收的日程信息所记录的各个事件的开始时间,在新事件开始时生成该日程信息发布者的状态信息,并将所生成的状态信息发布到Presence Server,由Presence Server根据所接收的状态信息(也即,日程信息)更新该日程信息发布者的呈现信息。
在上述步骤401至402的执行过程中,Presence Server每次在收到Calendar Server发布的状态信息后,将更新自身存储的该日程信息发布者的呈现信息,并将更新后的呈现信息发布给已订阅该日程信息发布者呈现信息的呈现信息订阅者。
在本发明的较佳实施例中,可以充分利用会话初始协议(SIP)的事件通知机制实现上述过程。图5显示了利用SIP协议承载日程信息、呈现信息以及状态信息实现根据日程信息同步呈现信息的过程,主要包括:
在步骤511,日程信息发布者使用SIP的发布PUBLISH消息承载自身发布的日程信息,将日程信息发布到Calendar Server;或用PUBLISH消息通知Calendar Server要发布日程信息,然后利用HTTP或其他方法将日程信息的具体内容发布给Calendar Server。其中,PUBLISH消息中的事件标题头可扩展为Event:Calendar以表明此次发布的是日程信息;在IMS系统中,IMS系统可根据该事件标题头Event:Calendar将PUBLISH消息路由到应用服务器Calendar Server。
在步骤512,Calendar Server在收到来自日程信息发布者的PUBLISH消息之后,将返回200 OK消息到该日程信息发布者;
在步骤513-516,Calendar Server根据所接收的日程信息所记录的各个事件的开始时间,在新事件开始时生成该日程信息发布者的状态信息,并将所生成的状态信息通过SIP PUBLISH消息发布到Presence Server;PresenceServer在收到Calendar Server发布的该日程信息发布者的状态信息后,将返回200 OK消息到Calendar Server,并更新自身存储的该日程信息发布者的呈现信息,然后,通过事件通知机制将更新后的呈现信息通过SIP的通知NOTIFY消息发布给呈现信息订阅者;呈现信息订阅者在收到来自PresenceServer的NOTIFY消息之后将回复200OK消息到Presence Server(参见步骤525-526)。
与上述步骤511-516过程并行的,在Presence Server和呈现信息订阅者之间还可以通过SIP完成呈现信息的订阅和通知,包括:
在步骤521,呈现信息订阅者通过SIP的订阅SUBSCRIBE消息承载向Presence Server订阅上述日程信息发布者呈现信息的请求;
在步骤522,Presence Server在收到上述SUBSCRIBE消息,并确认该呈现信息订阅者有权限订阅该日程信息发布者的呈现信息后,返回200 OK消息到所述呈现信息订阅者;
在步骤523,Presence Server通过SIP的NOTIFY消息将自身保存的该日程信息发布者的呈现信息发布给订阅者;
在步骤524,该呈现信息订阅者在收到来自Presence Server的NOTIFY消息之后,回复200 OK消息到Presence Server。
在步骤525,当Presence Server收到Calendar Server发布的该日程信息发布者的状态信息,更新自身存储的该日程信息发布者的呈现信息后(参见步骤513-516),将通过事件通知机制将更新后的呈现信息通过SIP的NOTIFY消息发布给呈现信息订阅者;
在步骤526,呈现信息订阅者收到更新的呈现信息后,回复200 OK消息到Presence Server。
由此可以看出,上述根据日程信息同步呈现信息的过程是自动的,无需用户手动更改其呈现信息的设置,而由Calendar Server来完成。
下面将详细说明步骤402及步骤513-516中,Calendar Server根据所接收的日程信息所记录的各个事件的开始时间,在新事件开始时生成该日程信息发布者状态信息的方法。在本实施例中,所述状态信息应当至少包括状态内容,还可以进一步包括状态的开始时间和结束时间。
假设在本实施例中呈现信息采用RPID格式记录,日程信息采用iCalendar格式记录。
已知采用iCalendar格式记录的日程信息中的一个事件(Event)的结构如下:
BEGIN:VEVENT
UID:19970901T130000Z-123402@host.com
DTSTAMP:19970901T1300Z
DTSTART:19970401T163000Z
DTEND:19970402T010000Z
SUMMARY:Laurel is in sensitivity awareness class.
CLASS:PUBLIC
CATEGORIES:BUSINESS,HUMANRESOURCES
TRANSP:TRANSPARENT
END:VEVENT
从上述结构可以看出,在上述iCalendar格式的Event中可以定义用户标识UID,时间戳DTSTAMP,该事件的开始时间DTSTART和结束时间DTEND,记录了一个事件内容的总结SUMMARY,级别CLASS,分类CATEGORIES,透明度TRANSP等内容。通过上述格式的Event,日程信息的发布者即可以将自身的日程信息所包含的各个事件发布给CalendarServer。Calendar Server则可以获知该日程信息发布者在一个Event的开始时间到结束时间内将处于该Event SUMMARY所记录的状态。由此,CalendarServer可以在该Event开始时生成至少包括状态内容的状态信息,并发布到Presence Server。例如,通过上述Event结构中,Calendar Server可以获知,从1997年4月1日的16:30:00到1997年4月2日的01:00:00,日程信息发布者的日程安排是“Laurelis in sensitivity awareness class.”,这样,在1997年4月1日的16:30:00,Calendar Server将生成状态内容为“Laurel is insensitivity awareness class.”的状态信息,并发布到Presence Server。如前所述,所生成的状态信息还可以包括该状态的开始时间和结束时间。
在本实施例中,所述状态信息可以采用RPID格式记录,或者采用其他格式记录。在采用非标准的呈现信息格式记录上述状态信息时,PresenceServer在收到状态信息后需要首先进行解析才能更新自身存储的呈现信息。
下面将结合图6和7详细说明根据呈现信息同步日程信息的方法。
图6显示了根据呈现信息同步日程信息的过程。这一同步过程主要涉及的实体有呈现信息发布者、Presence Server、Calendar Server以及日程信息订阅者。从图6可以看出,根据呈现信息同步日程信息的过程主要包括:
步骤601:呈现信息发布者将自身的呈现信息发布到Presence Server;
步骤602:Presence Server接收并更新自身保存的呈现信息后,如呈现信息包含有时间信息,可根据所接收的呈现信息中记录的动作的内容以及该动作的开始时间、结束事件生成事件信息,并将所生成的事件信息发布到Calendar Server,以更新其上记录的该呈现信息发布者的日程信息。
在该步骤中,Presence Server在收到呈现信息之后,可根据来自呈现信息发布者发送的日程信息同步请求,在收到上述日程信息同步请求之后,再根据所接收的呈现信息生成所述事件信息,并将所生成的事件信息发布到Calendar Server。
图7显示了利用SIP协议承载日程信息和呈现信息实现根据呈现信息同步日程信息的过程,主要包括:
在步骤711,呈现信息发布者使用SIP的PUBLISH消息承载上述呈现信息,将呈现信息发送到Presence Server;
此时,如果Presence Server需要呈现信息发布者的指示来决定是否向Calendar Server更新该呈现信息发布者的日程信息,Presence Server会对收到PUBLISH消息进行解析:当呈现信息发布者不需要更新其日程消息,该PUBLISH消息中的事件标题头可为Event:Presence以表明此次发布的是呈现信息,不需要更新日程信息,此时不需执行步骤713-714;如果呈现信息发布者需要同时更新其日程信息,可将该PUBLISH消息中的事件标题头设为Event:Presence-sync-calendar,Presence Server解析到该消息头时,会根据所接收的呈现信息生成所述事件信息,并将所生成的事件信息发布到Calendar Server,即执行步骤713-714。如果Presence Server设为自动更新该呈现信息发布者的日程信息,则Presence Server在收到呈现信息发布者发送的SIP PUBLISH消息后,将执行步骤713-714。
在步骤712,Presence Server在收到来自呈现信息发布者的PUBLISH消息之后,将返回200OK消息到呈现信息发布者;
在步骤713,如果Presence Server解析到呈现信息发布者发送的PUBLISH消息中的事件标题头为Event:Presence-sync-calendar,或者Presence Server设为自动更新该呈现信息发布者的日程信息,则PresenceServer根据所接收的呈现信息同步Calendar Server中存储的该呈现信息发布者的日程信息;
具体而言,Presence Server将根据所接收的呈现信息中记录的动作内容以及该动作的开始时间和结束时间生成一个事件信息,并将所生成的事件信息通过SIP的PUBLISH消息发布到Calendar Server,以更新Calendar Server上记录的该呈现信息发布者的日程信息;
在步骤714,Calendar Server根据所接收的事件信息更新自身存储的该呈现信息发布者的日程信息后,向Presence Server回复200 OK消息。
此后,如果日程信息订阅者订阅了该呈现信息发布者的日程信息并该次订阅还在有效期内,Calendar Server将更新后的日程信息发布给所述日程信息订阅者(参见步骤723-724)。
与上述步骤711-715过程并行的,在Calendar Server和日程信息订阅者之间还可以通过SIP完成日程信息的订阅,包括:
在步骤721,日程信息订阅者通过SIP的订阅SUBSCRIBE消息承载向Calendar Server订阅上述呈现信息发布者日程信息的请求;
在步骤722,Calendar Server在收到上述SUBSCRIBE消息,并确认该日程信息订阅者有权限订阅该呈现信息发布者的日程信息后,返回200 OK消息到所述订阅者客户端模块;
在步骤723,Calendar Server在收到Presence Server发送的事件信息并更新了该呈现信息发布者日程信息后,通过SIP NOTIFY向其日程信息订阅者发布该呈现信息发布者的日程信息;
在步骤724,日程信息订阅者在收到来自Calendar Server的NOTIFY消息之后将回复200 OK消息到Calendar Server。
下面将详细说明步骤602及步骤713中,Presence Server根据所接收的呈现信息中记录的动作内容以及该事件的起止时间生成日程信息中包含的一个事件信息的方法。在本实施例中,所述事件信息将至少包含事件的内容以及其起止时间。
假设在本实施例中呈现信息采用RPID格式记录,日程信息采用iCalendar格式记录。
已知采用RPID格式记录的呈现信息的一个最小化集合tuple的结构示例如下:
<tuple id=″qoica 12″>
<status>
<basic>open</basic>
</status>
<rpid:activities from=″1997-04-01T16:30:00″
until=″1997-04-02T01:00:00″?
<Laurel is in sensitivity awareness class.>
</rpid:activities>
</tuple>
其中,一个tuple定义的元素包括动作activities,不仅定义了该动作的时间属性,包括起始时间和结束时间,还定义了该动作的内容。通过上述结构的tuple,呈现信息的发布者即可以将自身当前的动作以及该动作的起止时间发布给Presence Server。然后,Presence Server也可以从呈现信息发布者发布的呈现信息中提取出必要的信息生成该呈现信息发布者日程信息中的一个事件信息,例如,通过上述tuple,Presence Server可以获知从1997年4月1日的16:30:00到1997年4月2日的01:00:00,呈现信息发布者的动作是“Laurel is in sensitivity awareness class.”。这样,Presence Server可以生成如下的事件信息:事件内容“Laurelis in sensitivity awareness class.”,事件的开始时间为1997年4月1日的16:30:00,事件的结束时间为1997年4月2日的01:00:00。Calendar Server在收到Presence Server发布的上述事件信息后,将根据该事件信息更新自身记录的日程信息。
在本实施例中,所述事件信息可以采用iCalendar格式记录,也可以采用任何其他格式记录。在采用非标准的日程信息格式记录上述事件信息时,Calendar Server在收到事件信息后需要首先进行解析才能更新自身存储的日程信息。
从上述实施例可以看出,一方面,在日程信息发布者将日程信息发布到Calendar Server后,Calendar Server可以根据日程信息自动通知PresenceServer该日程信息发布者当前的状态,实现该日程信息发布者呈现信息的自动更新,而无需日程信息发布者手动发布自身的呈现信息到Presence Server;另一方面,在呈现信息发布者手动更改自身的呈现信息后,Presence Server可以自动或者在呈现信息发布者的指令之下将呈现信息发布到CalendarServer,实现该呈现信息发布者日程信息的更新,而无需该呈现信息发布者手动更新自身的日程信息到Calendar Server。通过上述实施例所述的系统和方法,简化了用户的操作,利用网络侧的同步机制,保证一个用户呈现信息和日程信息对订阅该用户呈现信息和日程信息的不同订阅群体始终保持一致,既节省了用户的时间,提高了用户的效率,又增强了用户使用Presence业务和Calendar业务的体验。
另外,由于通过上述系统和方法不需要用户分别向两个服务器发送内容相同信息,而由网络侧也即Presence Server与Calendar Server之间传递实现呈现信息和日程信息同步的信息,从而减少了接入网侧资源的占用。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (20)
1、一种实现呈现信息和日程信息同步的系统,其特征在于,包括:呈现信息发布者,日程信息订阅者,呈现服务器Presence Server和日历日程安排服务器Calendar Server;其中,
所述Presence Server用于根据从所述呈现信息发布者接收的呈现信息生成所述呈现信息发布者的事件信息,并向所述Calendar Server发布所生成的事件信息;
所述Calendar Server用于根据所述Presence Server发布的事件信息更新自身存储的所述呈现信息发布者的日程信息,并向订阅所述呈现信息发布者日程信息的日程信息订阅者发布更新后的日程信息。
2、根据权利要求1所述的系统,其特征在于,所述Presence Server通过会话初始协议向所述Calendar Server发布所生成的事件信息。
3、根据权利要求1所述的系统,其特征在于,Presence Server进一步用于在根据从所述呈现信息发布者接收的呈现信息生成所述呈现信息发布者的事件信息之前处理来自呈现信息发布者的日程信息同步请求。
4、根据权利要求1所述的系统,其特征在于,进一步包括:日程信息发布者和呈现信息订阅者,其中
所述Calendar Server进一步用于根据从所述日程信息发布者接收的日程信息中所包含的事件,在新的事件开始时生成所述日程信息发布者的状态信息,并向所述Presence Server发布所生成的状态信息;
所述Presence Server进一步用于根据所述Calendar Server发布的状态信息更新自身存储的所述日程信息发布者的呈现信息,并向订阅所述日程信息发布者呈现信息的呈现信息订阅者发布更新后的呈现信息。
5、根据权利要求4所述的系统,其特征在于,所述Calendar Server通过会话初始协议向所述Presence Server发布所生成的状态信息。
6、一种实现呈现信息和日程信息同步的系统,其特征在于,包括:日程信息发布者,呈现信息订阅者,日历日程安排服务器Calendar Server和呈现服务器Presence Server;其中,
所述Calendar Server用于根据从所述日程信息发布者接收的日程信息中所包含的事件,在新的事件开始时生成所述日程信息发布者的状态信息,并向所述Presence Server发布所生成的状态信息;
所述Presence Server用于根据所述Calendar Server发布的状态信息更新自身存储的所述日程信息发布者的呈现信息,并向订阅所述日程信息发布者呈现信息的呈现信息订阅者发布更新后的呈现信息。
7、根据权利要求6所述的系统,其特征在于,所述Calendar Server通过会话初始协议向所述Presence Server发布所生成的状态信息。
8、一种呈现服务器Presence Server,其特征在于,包括:
呈现信息接收模块,用于接收呈现信息发布者发布的呈现信息;
呈现信息存储模块,用于存储所接收的呈现信息;
呈现信息发布模块,用于向已订阅所述呈现信息发布者的呈现信息的呈现信息订阅者发布呈现信息存储模块存储的呈现信息;
事件信息生成模块,用于根据所接收呈现信息生成该呈现信息发布者的事件信息;以及
事件信息发布模块,用于向日历日程安排服务器Calendar Server发布所生成的事件信息。
9、根据权利要求8所述的呈现服务器,其特征在于,所述事件信息生成模块进一步用于在根据所接收呈现信息生成该呈现信息发布者的事件信息之前等待接收来自呈现信息发布者的日程信息同步请求。
10、根据权利要求8所述的呈现服务器,其特征在于,进一步包括:
状态信息接收模块,用于接收所述Calendar Server发布的所述呈现信息发布者的状态信息;以及
呈现信息更新模块,用于根据所接收的状态信息更新呈现信息存储模块存储的所述呈现信息发布者的呈现信息;其中
呈现信息发布模块进一步用于向所述呈现信息订阅者发布更新后的呈现信息。
11、一种日历日程安排服务器Calendar Server,其特征在于,包括:
日程信息接收模块,用于接收日程信息发布者发布的日程信息;
日程信息存储模块,用于存储所接收的日程信息;
日程信息发布模块,用于向已订阅所述日程信息发布者的日程信息的日程信息订阅者发布日程信息存储模块存储的日程信息;
状态信息生成模块,用于根据所接收的日程信息中所包含的事件,在新的事件开始时,生成所述日程信息发布者的状态信息;以及
状态信息发布模块,用于向呈现服务器Presence Server发布所生成的状态信息。
12、根据权利要求11所述的Calendar Server,其特征在于,进一步包括:
事件信息接收模块,用于接收所述Presence Server发布的所述日程信息发布者的事件信息;以及
日程信息更新模块,用于根据接收的事件信息更新日程信息存储模块存储的该日程信息发布者的日程信息;其中
日程信息发布模块进一步用于向所述日程信息订阅者发布更新后的日程信息。
13、一种根据日程信息更新呈现信息的方法,其特征在于,包括:
在收到日程信息发布者发布的日程信息后,根据所接收的日程信息中所包含的事件,在新的事件开始时生成该日程信息发布者的状态信息;
将所生成的状态信息发布到呈现服务器Presence Server,由PresenceServer根据所接收的状态信息更新该日程信息发布者的呈现信息。
14、根据权利要求13所述的方法,其特征在于,所述根据所接收的日程信息中所包含的事件,在新的事件开始时生成该日程信息发布者的状态信息包括:分别在所接收日程信息所记录各个事件的开始时间,从日程信息中提取对应事件的事件内容作为所述状态信息。
15、根据权利要求14所述的方法,其特征在于,所述根据所接收的日程信息中所包含的事件,在新的事件开始时生成该日程信息发布者的状态信息进一步包括:在从日程信息中提取对应事件的事件内容时,提取对应事件的开始时间和结束时间,与所提取的事件内容一起作为所述状态信息。
16、根据权利要求13所述的方法,其特征在于,所述将所生成的状态信息发布到Presence Server包括:使用会话初始协议的发布消息承载所述状态信息。
17、一种根据呈现信息更新日程信息的方法,其特征在于,包括:
在收到呈现信息发布者发布的呈现信息后,根据所接收的呈现信息生成该呈现信息发布者的事件信息;
将所生成的事件信息发布到日历日程安排服务器Calendar Server,由Calendar Server根据所接收的事件信息更新该呈现信息发布者的日程信息。
18、根据权利要求17所述的方法,其特征在于,在根据所接收的呈现信息生成该呈现信息发布者的事件信息之前进一步包括:等待接收呈现信息发布者发送的日程信息同步请求。
19、根据权利要求17所述的方法,其特征在于,所述根据所接收的呈现信息生成该呈现信息发布者的事件信息包括:从所接收的呈现信息中提取所记录动作的内容以及动作的开始时间和结束时间,作为所述事件信息。
20、根据权利要求17所述的方法,其特征在于,所述将所生成的事件信息发布到Calendar Server包括:使用会话初始协议的发布消息承载所述事件信息。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710161037 CN101466077B (zh) | 2007-12-19 | 2007-12-19 | 实现呈现信息和日程信息同步的系统、装置和方法 |
JP2008319539A JP2009153126A (ja) | 2007-12-19 | 2008-12-16 | プレゼンス情報とスケジュール情報との同期を実現するシステム、装置および方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710161037 CN101466077B (zh) | 2007-12-19 | 2007-12-19 | 实现呈现信息和日程信息同步的系统、装置和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101466077A true CN101466077A (zh) | 2009-06-24 |
CN101466077B CN101466077B (zh) | 2012-10-10 |
Family
ID=40806381
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200710161037 Expired - Fee Related CN101466077B (zh) | 2007-12-19 | 2007-12-19 | 实现呈现信息和日程信息同步的系统、装置和方法 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2009153126A (zh) |
CN (1) | CN101466077B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102045265A (zh) * | 2009-10-20 | 2011-05-04 | 爱思开电讯投资(中国)有限公司 | 一种用于信息交互的装置和方法 |
CN102111877A (zh) * | 2009-12-28 | 2011-06-29 | 株式会社Ntt都科摩 | 感知用户业务活动的方法、基站、网络侧装置及系统 |
CN101616173B (zh) * | 2008-06-26 | 2012-10-17 | 深圳富泰宏精密工业有限公司 | 移动终端及其行事历同步方法 |
CN103530760A (zh) * | 2012-11-22 | 2014-01-22 | 广州七七八二信息科技有限公司 | 日程计划活动发布系统 |
CN103997454A (zh) * | 2014-05-30 | 2014-08-20 | 华为技术有限公司 | 一种日志信息的使用方法和设备 |
CN104243559A (zh) * | 2014-08-29 | 2014-12-24 | 小米科技有限责任公司 | 日历信息推送方法、装置及系统 |
CN105205619A (zh) * | 2015-10-22 | 2015-12-30 | 北京今目标信息技术有限公司 | 一种基于时间轴的资源管理方法、装置和系统 |
CN106873948A (zh) * | 2015-12-10 | 2017-06-20 | 珠海市君天电子科技有限公司 | 日历显示方法及装置 |
CN107506982A (zh) * | 2017-08-31 | 2017-12-22 | 深圳前海弘稼科技有限公司 | 一种系统任务的管理方法及管理系统 |
CN111489138A (zh) * | 2020-04-20 | 2020-08-04 | 上海创先泰克教育科技有限公司 | 基于校历的教育信息和应用发布、获取和互动方法与系统 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102131165B (zh) * | 2011-03-16 | 2013-11-13 | 宇龙计算机通信科技(深圳)有限公司 | 基于短信的日程协同方法和移动终端 |
CN104156848B (zh) * | 2014-07-23 | 2018-07-27 | 小米科技有限责任公司 | 日程管理的方法和装置 |
CN105120082A (zh) * | 2015-07-27 | 2015-12-02 | 小米科技有限责任公司 | 状态通知方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090043627A1 (en) * | 2005-11-23 | 2009-02-12 | Mihir Vaidya | System and method for calendar presence retrieval |
CN1964329A (zh) * | 2006-11-24 | 2007-05-16 | 华为技术有限公司 | 在呈现业务中提供日程信息的方法及呈现服务器 |
-
2007
- 2007-12-19 CN CN 200710161037 patent/CN101466077B/zh not_active Expired - Fee Related
-
2008
- 2008-12-16 JP JP2008319539A patent/JP2009153126A/ja active Pending
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101616173B (zh) * | 2008-06-26 | 2012-10-17 | 深圳富泰宏精密工业有限公司 | 移动终端及其行事历同步方法 |
CN102045265A (zh) * | 2009-10-20 | 2011-05-04 | 爱思开电讯投资(中国)有限公司 | 一种用于信息交互的装置和方法 |
CN102111877A (zh) * | 2009-12-28 | 2011-06-29 | 株式会社Ntt都科摩 | 感知用户业务活动的方法、基站、网络侧装置及系统 |
CN102111877B (zh) * | 2009-12-28 | 2015-05-13 | 株式会社Ntt都科摩 | 感知用户业务活动的方法、基站、网络侧装置及系统 |
CN103530760A (zh) * | 2012-11-22 | 2014-01-22 | 广州七七八二信息科技有限公司 | 日程计划活动发布系统 |
CN103997454A (zh) * | 2014-05-30 | 2014-08-20 | 华为技术有限公司 | 一种日志信息的使用方法和设备 |
CN103997454B (zh) * | 2014-05-30 | 2017-11-21 | 华为技术有限公司 | 一种日志信息的使用方法和设备 |
CN104243559A (zh) * | 2014-08-29 | 2014-12-24 | 小米科技有限责任公司 | 日历信息推送方法、装置及系统 |
CN105205619A (zh) * | 2015-10-22 | 2015-12-30 | 北京今目标信息技术有限公司 | 一种基于时间轴的资源管理方法、装置和系统 |
CN106873948A (zh) * | 2015-12-10 | 2017-06-20 | 珠海市君天电子科技有限公司 | 日历显示方法及装置 |
CN107506982A (zh) * | 2017-08-31 | 2017-12-22 | 深圳前海弘稼科技有限公司 | 一种系统任务的管理方法及管理系统 |
CN111489138A (zh) * | 2020-04-20 | 2020-08-04 | 上海创先泰克教育科技有限公司 | 基于校历的教育信息和应用发布、获取和互动方法与系统 |
Also Published As
Publication number | Publication date |
---|---|
JP2009153126A (ja) | 2009-07-09 |
CN101466077B (zh) | 2012-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101466077B (zh) | 实现呈现信息和日程信息同步的系统、装置和方法 | |
CN102164172B (zh) | 一种用于提供用户界面的方法及装置 | |
US9425973B2 (en) | Resource-based synchronization between endpoints in a web-based real time collaboration | |
US8516060B2 (en) | Calendar event prompt system and calendar event notifying method | |
US8180722B2 (en) | Method and apparatus for data mining within communication session information using an entity relationship model | |
EP1696377A1 (en) | Method and system for locating contact information collected from contact sources | |
EP1696635A2 (en) | Method and system for aggregating contact information from multiple contact sources | |
US20060095556A1 (en) | Method and apparatus for automating collaboration over communications devices | |
CN101365118B (zh) | 一种基于计算机网络的视频监控系统 | |
CN101156385A (zh) | 一种提供呈现信息的方法及装置 | |
WO1999026153A2 (en) | Method for establishing a communication connection between two or more users via a network of interconnected computers | |
CN101175114A (zh) | 自动提醒的方法、返回提醒信息的方法、相应设备和系统 | |
US20080098079A1 (en) | Instant messaging system configured to facilitate event plan management | |
CN111585868B (zh) | 一种信息处理方法、装置、计算机设备以及可读存储介质 | |
CN110309231A (zh) | 一种跨机房的数据同步方法及系统 | |
EP2187610A1 (en) | Method of issuing user service capability and present server and communication service system | |
CN103581111A (zh) | 一种通信方法及系统 | |
WO2007137467A1 (fr) | Procédé et système de fourniture d'informations de présence | |
CN101217533B (zh) | 同步大头像的方法及实现该方法的群组服务器和终端 | |
US20050078705A1 (en) | Service providing system cooperative with SIP and web systems and a method therefor | |
KR20090001748A (ko) | 기업용 메신저 서비스 제공 시스템 및 방법 | |
CN114528473A (zh) | 一种基于WebSocket的信息集成发布方法及系统 | |
CN104509029B (zh) | 在通信系统中更新个人信息的方法及装置 | |
CN101164303A (zh) | 一种提供呈现信息的方法和系统 | |
JP7524404B2 (ja) | メッセージングサービス方法及び装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20121010 Termination date: 20131219 |