CN101160913A - 一种离线消息处理方法 - Google Patents

一种离线消息处理方法 Download PDF

Info

Publication number
CN101160913A
CN101160913A CNA2006800122159A CN200680012215A CN101160913A CN 101160913 A CN101160913 A CN 101160913A CN A2006800122159 A CNA2006800122159 A CN A2006800122159A CN 200680012215 A CN200680012215 A CN 200680012215A CN 101160913 A CN101160913 A CN 101160913A
Authority
CN
China
Prior art keywords
deferred information
message
deferred
sip
subscription client
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
Application number
CNA2006800122159A
Other languages
English (en)
Inventor
王珏
牟伦建
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN101160913A publication Critical patent/CN101160913A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/224Monitoring or handling of messages providing notification on incoming messages, e.g. pushed notifications of received messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/42Mailbox-related aspects, e.g. synchronisation of mailboxes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • H04L65/1104Session initiation protocol [SIP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/54Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/23Reliability checks, e.g. acknowledgments or fault reporting

Abstract

本发明公开了一种离线消息处理方法。包括离线消息的存储过程、离线消息的通知过程和离线消息的获取过程。在所述离线消息的存储过程中,当用户预先设置要求保存离线消息时,系统保存发送给用户的离线消息;在所述离线消息的通知过程中,当用户上线后,用户客户端所属即时消息IM服务器检测到系统中保存有该用户的离线消息时,则按照系统设置或用户订阅离线消息通知的设置,发送离线消息通知给该用户客户端;在所述离线消息的获取过程中,当用户客户端收到离线消息通知并请求获取离线消息后,其所属IM服务器将所属离线消息内容发送给用户客户端。本发明完善了SIP/SIMPLE即时消息业务系统中的离线消息处理方法。

Description

一种离线消息处理方法 技术领域
本发明涉及通信领域, 尤其涉及会话初始协议 SIP/即时消息与存在利用 扩展会话初始协议 (SIMPLE协议) 的即时消息系统中, 离线消息的处理方 法。
背景技术
即时消息业务 (Instant Messaging, IM) 是一种在移动通信网络、 Internet 网络上开展的, 基于呈现业务(Presence)的个人对个人、 个人对群组的消息 类的移动数据业务。 移动网络包括现有的 2G (2nd Generation, 第 2代移动网 络)、 2.5G, 未来的 3G (3rd Generation, 第 3代移动网络)、 以及多媒体子域 (IMS) 等。
在当前的标准规范版本中有两类即时消息系统。 第一类是基于无线乡村 (Wireless Village, WV) 协议的即时消息系统, 其基于超级文本传送协议 / 无线访问协议 /短消息发送协议 (HTTP WAP/SMS ) 承载的协议, 可以支持 2.5G/3G网络; 第二类是基于会话初始协议 (SIP) /即时消息和呈现业务扩展 会话初始协议(SIMPLE) 的即时消息系统, 其基于 SIP/SIMPLE承载的协议, 支持基于 IMS的 IP网络。
在基于 SIP/SIMPLE的 IM系统中, 存在这样的使用场景需求: 发送方用户 发送即时消息到接收方, 此时若接收方不在线, 则接收方所归属的 IM服务器 根据用户设置和系统设置 (是否需要保存和获取离线消息、 是否提供离线消 息功能等), 选择是否需要保存该离线消息 (deferred message )0 假设保存了 离线消息,那么当接收方用户再次注册到 SIP/IP核心网络且上线到接收方服务 器上时, 该 IM服务器可以给接收方用户离线消息通知, 如果用户需要获取 某条消息或者某几条消息的详细内容, 则给服务器发送获取请求, 服务器则 下发用户所选的消息的详细内容给用户。
然而, 在现有符合 SIP/SIMPLE IM标准的即时消息系统中, 未涉及到离 线消息存储获取的订阅技术、 离线消息的获取技术、 用户如何选择获取一条 或多条消息的技术、 下发多条消息的技术等等, 即现有技术中没有提供一个 完整的离线消息解决方案。
另外, 在现有标准规范中描述了离线消息应保存在离线消息存储数据库
(deferred message storage database) 中, 而实际上离线消息的内容和元数据 (meta-data, 类似于摘要数据) 并非必须全部存储在此离线消息存储数据库 中; 对于通知技术, 现有规范中描述了采用初始会话协议消息 (SIP
MESSAGE)承载离线消息通知,但是对于通知中的内容、下发通知的方式(例 如一次性下发还是逐条下发) 等等都还没有明确的研究。
发明内容
本发明提供一种离线消息处理方法, 在 SIP/SIMPLE即时消息系统中, 实 现一种完整的离线消息处理流程。
本发明方法包括离线消息的存储过程、 离线消息的通知过程和离线消息 的获取过程, 在所述离线消息的存储过程中, 当用户预先设置要求保存离线 消息时, 系统保存发送给用户的离线消息;
在所述离线消息的通知过程中, 当用户上线后, 用户客户端所属即时消 息 IM服务器检测到系统中保存有该用户的离线消息时, 若用户订阅了离线消 息通知, 则按照用户订阅设置发送离线消息通知给用户客户端; 否则按照系 统默认设置发送离线消息通知给该用户客户端;
在所述离线消息的获取过程中, 当用户客户端收到离线消息通知并请求 获取离线消息后, 其所属 IM服务器将离线消息内容发送给用户客户端。
根据本发明的上述方法, 所述离线消息包括离线消息元数据和离线消息 内容; 在离线消息存储过程中, 将离线消息元数据和离线消息内容合并存储 在一个离线消息存储实体中或分开存储在不同的离线消息存储实体中。
若将离线消息元数据和离线消息内容分开存储在不同的离线消息存储实 体中, 则将所述离线消息元数据存储在即时消息扩展标识语言文档管理 IM XDMS实体 (即时消息扩展标识语言文档管理服务器实体) 中, 将所述离线 消息内容存储在离线消息内容存储实体中。
根据本发明的上述方法, 所述用户订阅离线消息通知, 具体包括. · 用户客户端向所属 IM服务器发起订阅离线消息逋知的 SIP订阅请求消息; 所述 IM服务器对所述订阅用户进行鉴权, 鉴权通过后向该用户客户端发 送 SIP通知消息, 该消息中包含用户当前的离线消息状态和离线消息通知。 所述 SIP订阅请求消息中包含订阅事件包;在所述订阅事件包中设置离线 消息通知内容。
所述离线消息通知内容包括: 离线消息列表信息和离线消息元数据。 所述 SIP订阅请求消息中还包含离线消息通知时机。
所述离线消息通知时机包括: 在规定时长内用户客户端每次上线时发送 离线消息通知, 或仅限于本次订阅完成后发送一次离线消息通知。
根据本发明的上述方法, 若用户己订阅离线消息通知, 则所述 IM服务器 使用 SIP NOTIFY通知消息发送离线消息通知; 若用户没有订阅离线消息通 知,则按照系统默认设置由 IM服务器使用 SIP MESSAGE消息发送离线消息通 知。
所述按照系统默认设置由 IM服务器使用 SIP MESSAGE消息发送离线消 息通知, 包括: 系统定时发送离线消息通知、 周期性发送离线消息通知或者 仅当用户客户端上线后发送一次离线消息通知。
所述离线消息通知内容包括: 离线消息列表信息和离线消息元数据或者 离线消息内容。
根据本发明的上述方法, 若离线消息元数据和离线消息内容合并存储在 一个存储实体中, 且用户已订阅了离线消息通知, 当用户客户端上线后, 所 述 IM服务器通过数据库接口向所述离线消息存储实体査询获取该用户的离 线消息元数据; 并根据查询结果构造离线消息列表, 通过 SIPNOTIFY消息携 带所述离线消息列表信息和所述离线消息元数据向用户客户端发送离线消息 通知。
根据本发明的上述方法, 若离线消息元数据和离线消息内容合并存储在 一个存储实体中, 但用户没有订阅离线消息通知, 当用户客户端上线后, 所 述 IM服务器根据系统的默认设置通过数据库接口向所述离线消息存储实体 查询获取该用户的离线消息元数据; 并根据查询结果构造离线消息列表, 通 过 SIP MESSAGE消息携带所述离线消息列表信息和所述离线消息元数据向 用户客户端发送离线消息通知。
根据本发明的上述方法, 若离线消息元数据存储在 IM XDMS实体中, 且 用户已订阅了离线消息通知, 当用户客户端上线后, 所述 IM服务器通过 IM-3 接口向所述 IM XDMS实体查询获取该用户的离线消息元数据; 并根据査询结 果构造离线消息列表, 通过 SIP NOTIFY消息携带所述离线消息列表信息和所 述离线消息元数据向用户客户端发送离线消息通知。
根据本发明的上述方法, 若离线消息元数据存储在 IM XDMS实体中, 但 用户没有订阅离线消息通知, 当用户客户端上线后, 所述 IM服务器通过 IM-3 接口向所述 IM XDMS实体査询获取该用户的离线消息元数据; 并根据査询结 果构造离线消息列表, 通过 SIP MESSAGE消息携带所述离线消息列表信息和 所述离线消息元数据向用户客户端发送离线消息通知。
根据本发明的上述方法, 用户客户端收到离线消息通知后, 向所属 IM服 务器发起离线消息获取请求, 携带获取条件信息。
根据本发明的上述方法,用户客户端通过 SIP消息、超文本传输协议 HTTP 消息或通过消息会话中继协议 MSRP通道采用 MSRP消息, 发起离线消息获取 请求。
所述获取条件包括: 按照发件人选择离线消息、 按照发送时间选择离线 消息、 按照消息主题选择离线消息或按照上述条件的组合选择离线消息或随 机选择离线消息。
所述 IM服务器收到离线消息获取请求后, 根据获取条件发送离线消息内 容给用户客户端。
所述 IM服务器通过 SIP消息、 HTTP消息或通过 MSRP通道采用 MSRP消 息, 发送所述离线消息内容。
所述 IM服务器在一条发送消息中仅携带一条离线消息内容; 或将多条离 线消息内容合并在一起, 通过一条发送消息发送。 '
所述多条离线消息内容的字节数之和小于等于所述发送消息所能支持的 最大字节数。
根据本发明的上述方法, 若离线消息元数据和离线消息内容合并存储在 同一离线消息存储实体中, 所述 IM服务器通过数据库接口向所述同一离线消 息存储实体查询获取该用户的离线消息内容并发送;
若离线消息元数据和离线消息内容分别存储在不同的离线消息存储实体 中, 所述 IM服务器通过数据库接口向仅存储离线消息内容的存储实体查询获 取该用户的离线消息内容并发送。
根据本发明的上述方法,若采用 MSRP消息发送离线消息内容,则使用所 述 IM服务器与用户客户端之间已建立的 MSRP通道或新建 MSRP通道发送所 述离线消息内容。
所述采用新建 MSRP通道发送离线消息内容包括: IM服务器先获取用户 的离线消息内容, 再新建 MSRP通道并发送; 或者
IM服务器收到用户客户端发起的获取离线消息请求后, 先建立起与用户 客户端之间的 MSRP通道, 再获取用户的离线消息内容发送。
所述先获取用户的离线消息内容, 再新建 MSRP通道并发送, 具体包括:
Al、 IM服务器接收到用户客户端的获取离线消息请求后, 根据请求中携 带的获取条件査询离线消息内容并存储在本地;
Bl、 IM服务器向用户客户端发送 SIP请求消息, 请求建立起与用户客户 端之间的 MSRP传输通道;
Cl、 用户客户端返回 SIP响应消息给 IM服务器;
Dl、 IM服务器收到 SIP响应消息后, 发送 SIP确认消息给用户客户端, 建 立起与用户客户端之间的 MSRP通道; 并通过该 MSRP通道将获取的离线消息 发送给用户客户端。
所述先建立起与用户客户端之间的 MSRP通道,再获取用户的离线消息内 容发送, 具体包括:
A2、 IM服务器收到用户客户端发起的获取离线消息请求后, 向用户客户 端发送 SIP请求消息, 请求建立起与用户客户端之间的 MSRP传输通道;
B2、 用户客户端返回 SIP响应消息给 IM服务器;
C2、 IM服务器收到 SIP响应消息后, 发送 SIP确认消息给用户客户端, 建 立起与用户客户端之间的 MSRP通道;
D2、IM服务器根据获取离线消息请求中携带的获取条件查询离线消息内 容并通过建立起的 MSRP通道发送给用户客户端。
根据本发明的上述方法, 若用户没有预先设置要求保存离线消息, 当 SIP/SIMPLE系统收到发送给用户的离线消息时, 丢弃该离线消息; 或者按照 SIP/SIMPLE系统默认的处理策略进行处理。
根据本发明的上述方法, 在所述离线消息的获取过程中, 所述所属 IM服 务器将离线消息内容发送给用户客户端, 用户客户端向其所属 IM服务器发送 响应消息。
根据本发明的上述方法, 所述用户客户端所属 IM服务器收到用户客户端 发送的响应消息后, 删除离线消息存储实体中已经发送过的离线消息。
根据本发明的上述方法, 所述当 IM服务器从离线消息存储实体中获取该 客户端的离线消息内容后, 在离线消息存储实体中删除已获取的离线消息。
根据本发明的上述方法, 所述当 IM服务器从离线消息存储实体中获取该 客户端的离线消息内容后, 将已从离线消息存储实体中获取的离线消息打上 已获取的标记, 即时消息系统定期集中删除所述已打上已获取标记的离线消 息。
根据本发明的上述方法, 所述当 IM服务器从离线消息存储实体中获取该 客户端的离线消息内容后, 并将离线消息存储实体中已获取的离线消息设置 相应的保存时限, 当所述离线消息在系统中保存的时间超过保存时限时, 删 除离线消息存储实体中的所述离线消息。
本发明的技术方案, 能够支持 SIP/SIMPLE IM用户灵活地根据自己的需 要选择离线消息的通知方式及通知所包含的内容, 能够选择获取离线消息的 时间以及获取的具体离线消息内容等, 使得 SIP/SIMPLE IM业务系统中能够 完整地支持关于离线消息的整体解决方案, 从而丰富了用户业务体验。另外, 通过采用将离线消息的元数据与消息内容分别存储于 IM XDMS和离线消息 存储实体中, 更便于相关数据的索取, 更于支持 XCAP (XML Configuration Access Protocol; XML配置接入协议)协议。并且通过采取将已发送的离线消 息从系统中删除, 节约了系统资源。
附图说明
图 1为本发明实施例所述离线消息存储、通知和获取方案的典型业务流程 图;
图 2为本发明实施例所述离线消息接收方客户端向服务器事先请求订阅 离线消息通知及下发通知的信令流程图; 图 3为本发明实施例所述离线消息接收方客户端上线时向服务器临时请 求订阅离线消息通知并下发通知的信令流程图;
图 4为本发明实施例所述离线消息元数据和消息内容合并存储的示意图; 图 5为本发明实施例所述离线消息元数据和消息内容分开存储的示意图; 图 6为本发明实施例所述离线消息元数据和消息内容合并存储且用户已 订阅离线消息通知时的离线消息通知过程的信令流程图;
图 7为本发明实施例所述离线消息元数据和消息内容合并存储且用户未 订阅离线消息通知时的离线消息通知过程的信令流程图;
图 8为本发明实施例所述离线消息元数据和消息内容分开存储且用户已 订阅离线消息通知时的离线消息通知过程的信令流程图;
图 9为本发明实施例所述离线消息元数据和消息内容分开存储且用户未 订阅离线消息通知时的离线消息通知过程的信令流程图;
图 10为本发明实施例所述 IM服务器逐条下发离线消息内容的信令流程 图;
图 11为本发明实施例所述 IM服务器多条离线消息内容合并后下发离线消 息内容的信令流程图;
图 12为本发明另一实施例所述 IM服务器多条离线消息内容合并后下发 离线消息内容的信令流程图。
具体实施方式
下面分别以离线消息通知获取功能的订阅、 离线消息和元数据的存储、 离线消息通知的下发内容和承载, 以及离线消息内容的下发方式和承载, 对 本发明离线消息存储、 通知和获取过程进行详细描述。
首先, 从业务应用层面说明本发明的完整流程, 如图 1所示, 其中, 客户 端 A为即时消息发送方用户的客户端; IM服务器 A为客户端 A所属的即时消息 服务器; 客户端 B为即时消息接收方用户 B的客户端; IM服务器 B为客户端 B 所属的即时消息服务器; 离线消息存储实体为当即时消息接受方用户的客户 端 B在离线状态时, 保存即时消息发送方用户从客户端 A发送的即时消息, 具 体流程如下:
101、用户 A需要发送即时消息给用户 B, 首先客户端 A会发送即时消息到 其所在域的 IM服务器 A;
102、 IM服务器 A判断接受方用户 B是归属于 IM服务器 B的, 转发即时消 息到 IM服务器 B;
103、 IM服务器 B判断是否用户 B在线, 如果在线, 则发送即时消息至用 户 B, 结束; 否则, IM服务器 B判断是否客户端 B配置了需要离线消息业务, 如果客户端 B需要离线消息业务,则保存此消息内容和消息元数据(例如发送 时间、 发送者、 接收者、 主题等等) 到离线消息存储实体中;
104、 当用户 B上线时, IM服务器 B获取离线消息存储实体上的离线消息 元数据,
105、 IM服务器 B给客户端 B下发离线消息通知, 通知中包括离线消息列 表和元数据。
106、 用户 B可以选择需要获取其中的某一条或者几条消息, 然后发送获 取离线消息请求到 IM服务器 B;
107、 IM服务器 B到离线消息存储实体上读取客户端 B 所需获取的具体的 离线消息内容;
108、 IM服务器 B给用户下发该离线消息内容, 可以一条条下发, 也可以 多条消息同时下发。
上述流程中,客户端 B向 IM服务器 B订阅离线消息通知事件的步骤是可选 的。 客户端 B可以在开通了 IM业务之后的任何时间向 IM服务器 B订阅离线消 息通知事件; 也可以在上线之后临时向 IM服务器 B订阅离线消息通知事件; 若客户端 B从未订阅过, IM服务器将按照系统配置 (运营商的策略) 默认提 供离线消息通知功能, 或不提供此功能。
客户端在订阅离线消息通知事件过程中, 可选择离线消息的通知方式, 即: 每次用户上线时都进行通知, 还是只限于本次订阅的一次性通知; 还可 选择离线消息通知所包含的内容, 即: 只包含离线消息列表和离线消息元数 据, 还是直接下发离线消息内容。 若选择的通知内容包括离线消息列表和离 线消息元数据, 则后续还有用户的获取请求、 离线消息内容的下发等过程; 若选择是直接下发消息内容, 则后续没有获取请求、 消息内容的下发等过程 (本发明主要针对通知内容包含离线消息列表和离线消息元数据的情况)。 用户订阅离线消息通知, 可以分为事先长期订阅和用户上线后一次性订 阅, 下面分别对这两种订阅流程进行描述。
在本发明实施例所述过程中, 当 IM服务器从离线消息存储实体中获取离 线消息内容后, 根据 IM系统的预先设置, 可以将离线消息存储实体中的 IM服 务器 B已经获取并保存的离线消息删除,或者将离线消息存储实体中已经获取 过的离线消息打上已获取的标记, 以便区分哪些离线消息是已经获取过的, 哪些离线消息是未获取过的, 然后 IM系统将定期集中删除离线消息存储实体 中的这些消息。 当然, 还可以根据客户端定制的要求, 比如, 在当 IM服务器 B收到客户端 B接收到离线消息后所发送的响应消息后, 删除离线消息存储实 体中的该离线消息(可以是立即删除, 或过间隔一定时间后删除)。还可以采 用在离线消息中设置相应的保存时限 (EXPIRE), 当离线消息在离线消息存 储实体上保存的时间超过保存时限时,删除离线消息存储实体中的离线消息。 所述删除离线消息的过程是本发明实施例所述方式可以采取的优选方式, 当 然还可以根据 IM系统或客户端的定制要求, 采取其他可行方式, 这里不再过 多叙述。
如图 2所示, 为用户客户端在开通了 IM业务之后的任何时间, 订阅离线 消息通知, 图 2中:
客户端 B表示需要接收离线消息的客户端; IM服务器 B表示其归属的 IM 服务器; SIP/IP核心网表示其所在的 SIP核心网络。
具体流程步骤如下:
201、接收方客户端发起 SIP订阅请求消息(SIP SUBSCRIBE)到 SIP/IP核 心网, 表示请求订阅离线消息通知。 其中, 为表明要订阅 IM服务器 B的事件, 因此在请求的 URI中填充 IM服务器 B的 SIP URI地址; 在消息的事件 (Event) 包头域中可以定义需要获得更新信息的通知的时机, 例如, 定义以后用户每 次上线时就立即获得离线消息通知;还可以在消息事件包中指定通知的内容, 例如, 通知内容包括离线消息列表和离线消息元数据, 或还可包括离线消息 内容; 在消息的 "Accept-Contact" (接收联系特征码, 为 SIP消息头中标准 字段域名称) 部分包含 SIP/SIMPLE IM业务的特征码, 例如" +g.oma.sip-im";
202、 SIP/IP核心网根据请求的 URI地址判断是到 IM服务器 B的订阅请求, 则转发所述 SIP订阅请求消息 (SIP SUBSCRIBE) 到 IM服务器 B;
203、 IM服务器 B接收到所述 SIP订阅请求消息后, 向 SIP/IP核心网返回响 应消息 (SIP 200 OK), 表示已经收到;
204、 SIP/IP核心网转发所述响应消息 (SIP 200 OK) 给客户端 B;
205、 IM服务器 B作订阅请求的鉴权, 检査订阅的事件、 Expires、 订阅者 是否有响应的权限,判断是否允许客户端 B订阅本事件发生时的通知,如果鉴 权通过 (具体鉴权技术不在本发明范围之内, 不作详述), 则执行步骤 206;
206、 IM服务器 B发送第一个 SIP通知消息 (SIP NOTIFY) 到 SIP IP核心 网, 此 SIP NOTIFY消息包含当前的状态信息也即客户端 B当前的离线消息状 态和离线消息通知; 如果客户端 B此时没有离线消息, 则 SIP NOTIFY的消息 体为空;
207、 SIP/IP核心网转发所述 SIP NOTIFY消息给客户端 B, 客户端 B收到 所述第一个 SIP NOTIFY之后, 表示订阅己被成功处理;
208、 客户端 B返回响应消息 (SIP 200 OK) 给 SIP/IP核心网;
209、 SIP/IP核心网转发所述响应消息 (SIP 200 OK) 给 IM服务器 B; 至此, 订阅 /通知过程结束。
假设一段时间后用户 B离线, 然后又重新上线了, IM服务器 B监测到用户 B上线后,发现所述用户有离线消息且订阅了离线消息通知,则继续执行以下 步骤:
210、 IM服务器 B发送 SIP通知消息 (SIP NOTIFY) 到 SIP/IP核心网, 此 SIP NOTIFY消息包含当前的离线消息通知;
211、 SIP/IP核心网转发所述 SIP NOTIFY通知消息给客户端 B;
212、客户端 B收到离线消息通知后,返回响应消息(SIP 200 OK)给 SIP/IP 核心网, 表示已收到;
213、 SIP/IP核心网转发所述 SIP 200 OK响应消息给 IM服务器 B。
上述流程中, 步骤 205可以在步骤 203之后立即进行, 和步骤 204没有先后 的时序关系。
当用户需要一次性临时订阅离线消息通知时, 用户通过所在 IM客户端 上线后, 给 IM服务器发送订阅请求, 要求订阅离线消息通知事件。 在订阅成 功后, 若有离线消息则 IM服务器会下发离线消息通知。 在这种情况下, 客户 端在订阅离线消息时设置的通知发送方式为只限于本次订阅的一次性通知。 具体流程如图 3所示, 包括如下步骤:
301、 接收方客户端发起 SIP订阅请求消息 (SIP SUBSCRIBE) 到 SIP/IP 核心网, 表示请求订阅离线消息通知。 其中, 请求的 U I表明要订阅服务器 B 的事件, 填充服务器 B的 SIP URI地址; 在事件 (Event)包头域中可以定义需 要获得更新信息的通知的时机, 例如, 定义只需要本次获得离线消息通知; 还可以在消息事件包中指定通知的具体内容, 例如, 为离线消息列表及元数 据通知、 直接的离线消息内容; Accept-Contact包含 SIP/SIMPLE IM业务的特 征码, 例如" +g.oma.sip-im"。 其后步骤与图 2类似;
302、 SIP/IP核心网根据请求的 URI地址判断是到服务器 B的订阅请求, 则转发所述 SIP SUBSCRIBE请求消息到 IM服务器 B;
303、 服务器 B接收到所述请求消息后, 向 SIP/IP核心网返回响应消息 (SIP 200 OK), 表示已经收到请求;
304、 SIP/IP核心网转发所述 SIP 200 OK响应消息给客户端 B;
305、 服务器 B作订阅请求的鉴权, 检査订阅的事件、 时长、 订阅者是否 有响应的权限,判断是否允许客户端 B订阅本事件发生时的通知,如果鉴权通 过, 则执行步骤 306;
306、服务器 B发送第一个 SIP通知消息(SIP NOTIFY)到 SIP/IP核心网, 所述 SIP NOTIFY消息包含当前的状态信息, 也即客户端 B当前的离线消息状 态和离线消息通知。 如果该客户端此时没有离线消息, 则 SIPNOTIFY消息的 消息体中为空;
307、 SIP/IP核心网转发所述 SIPNOTIFY消息给客户端 B, 客户端 B收到 第一个 SIP NOTIFY消息之后, 表示订阅已被成功处理;
308、 客户端 B返回响应消息 (SIP 200 OK) 给 SIP/IP核心网;
309、 SIP/IP核心网转发所述 SIP 200 OK响应消息给服务器 B; 如果用户 B有离线消息, 则继续执行以下步骤:
310、服务器 B发送 SIP通知消息(SIPNOTIFY)到 SIP/IP核心网,所述 SIP NOTIFY包含当前的离线消息通知; 311、 SIP/IP核心网转发所述 SIP NOTIFY通知消息给客户端 B;
312、 客户端 B收到后, 返回响应消息(SIP 200 OK)给 SIP/IP核心网, 表 示已收到;
313、 SIP/IP核心网转发所述 SIP 200 OK给服务器^
同样, 上述过程中, 步骤 305可以在步骤 303之后立即进行, 和步骤 304 没有先后的时序关系。
用户也可以不订阅离线消息通知事件, 此时是否向用户提供离线消息通 知功能取决于运营商的配置, 例如服务器若配置默认提供, 则即使用户不订 阅离线消息通知, 也总是会在用户上线后发送离线消息通知; 若配置默认不 提供, 则用户必须订阅后, 才会发送离线消息通知。 此时, 通知的内容是消 息列表和元数据, 还是直接下发离线消息内容本身取决于服务器的具体运营 实现配置。
离线消息数据包括消息元数据和消息内容, 他们可以是存储在同一个离 线消息存储实体(deferred message storage entity)上,也可以是分开存储, 即: 消息元数据存储在 IM XDMS (即时消息扩展标识语言文档管理服务器实体) 上, 消息内容存储在 deferred message storage entity上。
离线消息数据合并存储的情况如图 4所示:离线消息的元数据和消息内容 都存储在一个离线消息存储实体中, IM服务器只需要到一个离线消息存储实 体中获取离线消息相关的数据, IM服务器和离线消息存储实体之间可以直接 采用数据库接口。
离线消息数据分开存储的情况如图 5所示: 离线消息的元数据存储在 IM XDMS中, 消息内容存储在离线消息内容存储实体中。 IM服务器和离线消息 内容存储实体之间可以直接采用数据库接口; IM服务器和 IM XDMS之间为 OMA规范所定义的 IM-3接口,其承载协议是 XCAKXML Configuration Access Protocol; XML配置接入协议), 通过 IM-3接口可以支持存储在 IM XDMS上的 XML文档 (例如离线消息元数据) 的管理功能包括创建、 修改、 获取、 删除 当接收方用户上线后, 此时 ΙΜ服务器根据用户是否订阅离线消息通知, 以及订阅的设置, 决定是否下发离线消息。 ΙΜ服务器下发离线消息时, 先要 从离线消息存储实体中获取消息元数据, 下发到客户端。 因此在不同的存储 技术下, 通知流程也有所不同。
另夕卜,如果用户订阅过离线消息通知,则通知的承载消息为 SIP NOTIFY; 如果用户没有订阅离线消息通知, 服务器默认下发, 则此时离线消息通知的 承载消息是 SIP MESSAGE
因此, 根据不同的消息存储方式、 离线消息通知不同的承载方式, 离线 消息通知过程有 4种情况, 分别说明如下- 情况一: 如图 6所示, 离线消息元数据和消息内容合并存储, 并且用户已 订阅离线消息通知时, 离线消息的通知流程包括:
601、 当 IM服务器 B监测到接收方用户客户端 B上线后, 决定给其下发离 线消息通知, 到离线消息存储实体上查询关于客户端 B的离线消息元数据内 容, 向离线消息存储实体发起的査询请求可以采用存储 (Storage) 逻辑实体 所采用的数据库(例如 Oracle DB2等)本身提供的数据库接口进行直接查询 操作;
602、 离线消息存储实体以数据库接口返回给 IM服务器 B查询结果;
603 IM服务器 B根据此返回的査询结果构造 SIP NOTIFY消息, 并发送 至 SIP/IP核心网, 此 SIP NOTIFY消息携带了离线消息列表和元数据, 例如,
" UserB you have X number of Ims mainly informationre listed as
604 SIP/IP核心网转发所述 SIP NOTIFY消息给客户端 B;
605、 客户端 B返回响应消息 (SIP 200 OK) 给 SIP/IP核心网, 表示已收 到所述 SIP NOTIFY消息;
606 SIP/IP核心网转发所述 SIP 200 OK响应消息给 IM服务器 B;
情况二: 如图 7所示, 离线消息元数据和消息内容合并存储, 并且用户未 订阅离线消息通知, 而由 IM服务器默认下发离线消息通知时, 离线消息的通 知流程与图 6的流程类似, 区别在于:
步骤 703中, IM服务器发送 81? ]\4£88入05消息到81?/1?核心网,表示下发 离线消息通知, 其中, 请求 URI中指定客户端 B的 SIP URI地址, 消息的 " Accept-Contact " 部分包含 SIP/SIMPLE IM业务的特征码, 例如, "+g.oma.sip-im"; 消息体部分携带了离线消息列表和元数据, 例如 "UserB, you have X number of IMs,mainly informationre listed as.-***********";
步骤 704中, SIP/IP核心网根据消息中包含的 SIP URI地址转发此 SIP MESSAGE消息到客户端 B
情况三: 如图 8所示, 离线消息元数据和消息内容分开存储, 并且用户已 订阅离线消息通知时, 离线消息的通知流程包括:
801、 当 IM服务器 B监测到接收方用户客户端 B上线后, 决定给其下发离 线消息通知, 向 IM XDMS发送 XCAP GET请求消息, 请求获取存储在 IM XDMS中的关于客户端 B的离线消息元数据。 其中 XCAP GET请求中的请求 URI设置为离线消息元数据 XML文档的 URI;
802 IM XDMS查询相关的离线消息元数据, 若查询成功, 则返回 XCAP 200 OK响应消息给 IM服务器 B,在 XCAP 200 OK响应消息中包含了查询结果;
803 IM服务器 B转换所述 XCAP 200 OK消息为 SIP NOTIFY消息, 并发 送至 SIP/IP核心网, 所述 SIP NOTIFY携带离线消息列表和元数据, 例如
" UserB you have X number of IMs,mainly informationre listed as *
804 SIP/IP核心网转发所述 SIP NOTIFY消息给客户端 B
805、客户端 B收到后, 返回 SIP 200 OK响应消息给 SIP/IP核心网,表示已 收到所述 SIP NOTIFY消息;
806 SIP/IP核心网转发所述 SIP 200 OK响应消息给 IM服务器 B
情况四: 如图 9所示, 离线消息元数据和消息内容分开存储, 并且用户未 订阅离线消息通知, 而由 IM服务器默认发送离线消息通知时, 离线消息的通 知流程与图 8的流程类似, 区别在于- 步骤 903中, IM服务器 B发送 SIP MESSAGE消息到 SIP IP核心网, 表示下 发离线消息通知, 其中, 请求 URI中包含客户端 B的 SIP URI地址, 消息的 " Accept-Contact " 部分包含 SIP/SIMPLE IM业务的特征码, 例如, "+g.oma.sip-im"; 消息体部分携带了离线消息列表和元数据, 例如 "UserB, you have X number of IMs,mainly informationre listed as
步骤 904中, SIP/IP核心网根据消息中包含的 SIP URI地址转发所述 SIP MESSAGE消息到客户端 B。
当接收方客户端接收到离线消息通知后, 用户可以按照某种获取策略选 择性获取其中的某些消息内容, 接着客户端可以发起获取请求到 IM服务器, 要求获取用户在终端界面上所选择的这些消息的具体内容。
所述获取策略中, 可包括: 可以是随机选择获取其中某几条、 按照发件 人获取、 按照发送时间获取、 按照消息大小等等, 以及它们的组合。
所述的获取请求的承载协议可以是 SIP, 或者 MSRP, 或者 HTTP等等。 当 IM服务器接收到客户端端的获取请求之后, 需要从离线消息存储实体 中读取所选离线消息的消息内容, 然后下发客户端。 所述的消息下发接口的 承载协议可以是 SIP, 或者 MSRP, 或者 HTTP等等。
上述的消息下发方式可以有两种- 方式一: 逐条下发, 也即 IM服务器一次只下发一条离线消息内容。
下面以使用 SIP MESSAGE承载为例说明流程如下, 如图 10所示, IM服务 器逐条下发离线消息的流程包括:
1001、 当 IM服务器 B接收到接收方客户端 B的获取离线消息请求后,根据 查询请求中的获取策略到离线消息存储实体上查询所选择的离线消息的消息 内容, 向离线消息存储实体发送的査询请求可以采用存储 (Storage) 逻辑实 体所采用的数据库(例如 OmCle、 DB2等)本身提供的数据库接口进行直接査 询操作;
1002、 离线消息存储实体以数据库接口返回 IM服务器 B査询结果; 假设 用户 B有 3条离线消息需要下发;
1003、 IM服务器 B发送 SIP MESSAGE消息到 SIP/IP核心网, 下发第一条 离线消息内容, 其中, 消息中的请求 URI包含客户端 B的 SIP U I地址, 消息 的 " Accept-Contact " 部分包含 SIP/SIMPLE IM业务的特征码, 例如, "+g.oma.sip-im"; 消息体部分则携带了第一条离线消息的消息内容;
1004、 SIP/IP核心网根据消息中包含的 SIP URI地址转发所述 SIP MESS AGE消息到客户端 B;
1005、 客户端 B返回 SIP 200 OK响应消息, 表示收到此 SIP MESSAGE消 息; 1006、 SIP/IP核心网转发所述 SIP 200 OK响应消息到 IM服务器 B;
1007、 IM服务器 B发送 SIP MESSAGE消息到 SIP/IP核心网, 下发第二条 离线消息内容, 其中 " Request URI " 包含客户端 B的 SIP URI地址,
" Accept-Contact " 部分包含 SIP/SIMPLE IM业务的特征码, 例如, "+g.oma.sip-im"; 消息体部分则携带了第二条离线消息的消息内容;
1008、 SIP/IP核心网根据消息中包含的 SIP URI地址转发所述 SIP MESSAGE消息到客户端 B;
1009、 客户端 B返回 SIP 200 OK响应消息, 表示收到此 SIP MESSAGE消 息;
1010、 81?/1卩核心网转发此81? 200 OK响应消息到 IM服务器 B;
1011、 服务器发送 SIP MESSAGE消息到 SIP/IP核心网, 下发第三条离 线消息内容, 其中 " Request URI " 包含客户端 B的 SIP URI地址,
"Accept-Contact"包含 SIP/SIMPLE IM业务的特征码,例如, "+g.oma.sip-im"; 消息体部分则携带了第三条离线消息的消息内容;
1012、 SIP/IP核心网根据消息中包含的 SIP URI地址转发所述 SIP MESSAGE消息到客户端 B;
1013、 客户端 B返回 SIP 200 OK响应消息, 表示收到 SIP MESSAGE消息;
1014、 SIP/IP核心网转发所述 SIP 200 OK响应消息到 IM服务器 B。
上述流程步骤 1007在时序上并非一定在步骤 1006之后, 在步骤 1003之后 即可发送。 步骤 1011也是同理, 即, 并非一定在步骤 1010之后, 只要是在步 骤 1007之后即可。。
方式二: 多条消息同时下发, 也即 IM服务器可以一次性下发多条离线消 息的内容。
下面以使用 MSRP承载为例说明流程如下, 如图 11所示, IM服务器下发 多条离线消息的流程包括:
1101、当 IM服务器 B接收到接收方客户端 B的获取离线消息请求后, 根据 查询请求中的获取策略到离线消息存储实体上查询所选择的离线消息的消息 内容, 向离线消息存储实体发送的查询请求可以采用 Storage逻辑实体所采用 的数据库 (例如 Omcle、 DB2等)本身提供的数据库接口进行直接査询操作; 1102、 离线消息存储实体以数据库接口返回 IM服务器 B査询结果; 假设 用户 B有 5条离线消息需要下发;
1103、 ∑^服务器8向80>/1?核心网8发送81? 1]^!^消息, 请求建立和客 户端 B之间的 MSRP传输通道, 以便发送离线存储的 IM消息到客户端 B;
1104、 SIP/IP核心网将所述 SIP INVITE消息转发到客户端 B;
1105、客户端 B回应 81? 200€«:响应消息到81?/1?核心网,表示收到请求;
1106、 SIP/IP核心网将 SIP200 OK响应消息转发到 IM服务器 B;
1107、 IM服务器 B确认收到 SIP 200 OK响应消息, 响应 SIP ACK消息到 SIP/IP核心网;
1108、 SIP/IP核心网将 SIP ACK消息转发给客户端 B;
到此, 已经建立了 MSRP通道。
1109、 IM服务器 B通过 MSRP数据通道向客户端 B发送 MSRP SEND消息, 所述 MSRP SEND消息中携带了离线消息 1和离线消息 2的内容,这样将离线消 息 1和 2合并发送;
1110、客户端 B响应 ]^10> 200 0¾:消息到1]^服务器8, 表示客户端收到消 息;
1111、 IM服务器 B向客户端 B发送 MSRP SEND消息, 所述 MSRP SEND消 息中携带了离线消息 3、 离线消息 4和离线消息 5的内容, 这样将离线消息 3、 4 和 5合并发送;
1112、客户端 B响应 1^10> 200 01^消息到1]\1服务器8, 表示客户端收到消 息;
1113、 IM服务器 B向 SIP/IP核心网发送 SIP BYE消息, 请求断开 MSRP数 据通道, 结束会话;
1114、 SIP/IP核心网将消息转发给客户端 B;
1115、 客户端 B收到该 SIP BYE消息并断开 IM服务器 B与客户端 B之间的 MSRP通道后, 响应 SIP 200 OK消息给 SIP/IP核心网;
1116、 SIP/IP核心网将响应转发给 IM服务器 B, IM服务器获知 IM服务器 B 与客户端 B之间的 MSRP通道已经断开。
上述图 11的流程中, 是 IM服务器先读取离线消息内容, 再建立和客户端 的 MSRP通道。 另外一种方法是, 先建立 MSRP通道, 建立成功后再读取离线 消息内容, 如图 12所示, 其流程与图 11类似, 区别在于 IM服务器 B在建立与 客户端 B之间的 MSRP通道后, 向离线消息存储实体获取用户 B所选择的离线 消息内容发送到客户端^
在上述图 10、 图 11和图 12的流程中, IM服务器根据接收方用户 B或 IM系 统的预先设置、客户端 B的业务能力和 /或当前 MSRP SEND消息可以携带的信 息量来决定一次能够同时携带的离线消息的数量, 将几条离线消息的内容同 时在 MSRP SEND消息中发送, 这样, 在 MSRP SEND消息中将对每条离线消 息进行分隔, 以区别出不同的离线消息。 主要是需要保证多条消息的容量之 和小于等于承载消息所支持的最大容量, 例如: 如果用 SIP MESSAGE消息下 发, 由于消息体最长为 1300字节, 因此离线消息的容量之和不能超过 1300字 节;
如果用 MSRP SEND消息下发, 为确保传输效率原则上 MSRP消息体长度 不应超过 2048字节, 另外由于 MSRP协议本身就具有多条消息合并发送的功 能, 因此如果是大消息, 可以将它们用若干个 SEND请求来交付, 每个请求包 含一个分片。 上述都是 MSRP本身的传输机制, 因此 IM服务器基本无需做额 外的处理。
显然, 本领域的技术人员可以对本发明进行各种改动和变型而不脱离本 发明的精神和范围。 这样, 倘若本发明的这些修改和变型属于本发明权利要 求及其等同技术的范围之内, 则本发明也意图包含这些改动和变型在内。

Claims (34)

  1. 权利 要求 书
    1. 一种离线消息处理方法, 应用于采用会话初始协议 SIP/即时消息与存 在利用扩展会话初始协议 SIMPLE的即时消息系统, 其特征在于,包括离线消 息的存储过程、 离线消息的通知过程和离线消息的获取过程, 在所述离线消 息的存储过程中, 当用户预先设置要求保存离线消息时, 系统保存发送给用 户的离线消息;
    在所述离线消息的通知过程中, 当用户上线后, 用户客户端所属即时消 息 IM服务器检测到系统中保存有该用户的离线消息时, 若用户订阅了离线消 息通知, 则按照用户订阅设置发送离线消息通知给用户客户端; 否则按照系 统默认设置发送离线消息通知给该用户客户端;
    在所述离线消息的获取过程中, 当用户客户端收到离线消息通知并请求 获取离线消息后, 其所属 IM服务器将离线消息内容发送给用户客户端。
  2. 2. 如权利要求 1所述的方法, 其特征在于, 所述离线消息包括离线消息 元数据和离线消息内容; 在离线消息存储过程中, 将离线消息元数据和离线 消息内容合并存储在一个离线消息存储实体中或分开存储在不同的离线消息 存储实体中。
  3. 3. 如权利要求 2所述的方法, 其特征在于, 若将离线消息元数据和离线 消息内容分开存储在不同的离线消息存储实体中, 则将所述离线消息元数据 存储在即时消息扩展标识语言文档管理 IM XDMS实体中, 将所述离线消息内 容存储在离线消息内容存储实体中。
  4. 4. 如权利要求 1所述的方法, 其特征在于, 所述用户订阅离线消息通知, 具体包括:
    用户客户端向所属 IM服务器发起订阅离线消息通知的 SIP订阅请求消息; 所述 IM服务器对所述订阅用户进行鉴权, 鉴权通过后向该用户客户端发 送 SIP通知消息, 该消息中包含用户当前的离线消息状态和离线消息通知。
  5. 5. 如权利要求 4所述的方法, 其特征在于, 所述 SIP订阅请求消息中包含 订阅事件包; 在所述订阅事件包中设置离线消息通知内容。
  6. 6.如权利要求 5所述的方法, 其特征在于, 所述离线消息通知内容包括: 离线消息列表信息和离线消息元数据。
  7. 7. 如权利要求 5所述的方法, 其特征在于, 所述 SIP订阅请求消息中还包 含离线消息通知时机。
  8. 8. 如权利要求 7所述的方法, 其特征在于, 所述离线消息通知时机包括: 在规定时长内用户客户端每次上线时发送离线消息通知, 或仅限于本次订阅 完成后发送一次离线消息通知。
  9. 9. 如权利要求 1所述的方法, 其特征在于, 若用户已订阅离线消息通知, 则所述 IM服务器使用 SIP NOTIFY通知消息发送离线消息通知;若用户没有订 阅离线消息通知,则按照系统默认设置由 IM服务器使用 SIP MESSAGE消息发 送离线消息通知。
  10. 10. 如权利要求 9所述的方法, 其特征在于, 所述按照系统默认设置由 IM 服务器使用 SIP MESSAGE消息发送离线消息通知, 包括: 系统定时发送离线 消息通知、 周期性发送离线消息通知或者仅当用户客户端上线后发送一次离 线消息通知。
  11. 11. 如权利要求 10所述的方法, 其特征在于, 所述离线消息通知内容包 括: 离线消息列表信息和离线消息元数据或者离线消息内容。
  12. 12. 如权利要求 2所述的方法, 其特征在于, 若离线消息元数据和离线消 息内容合并存储在一个存储实体中, 且用户己订阅了离线消息通知, 当用户 客户端上线后, 所述 IM服务器通过数据库接口向所述离线消息存储实体查询 获取该用户的离线消息元数据; 并根据查询结果构造离线消息列表, 通过 SIP NOTIFY消息携带所述离线消息列表信息和所述离线消息元数据向用户客户 端发送离线消息通知。
  13. 13. 如权利要求 2所述的方法, 其特征在于, 若离线消息元数据和离线消 息内容合并存储在一个存储实体中, 但用户没有订阅离线消息通知, 当用户 客户端上线后, 所述 IM服务器根据系统的默认设置通过数据库接口向所述离 线消息存储实体查询获取该用户的离线消息元数据; 并根据查询结果构造离 线消息列表, 通过 SIP MESSAGE消息携带所述离线消息列表信息和所述离线 消息元数据向用户客户端发送离线消息通知。
  14. 14. 如权利要求 2所述的方法, 其特征在于, 若离线消息元数据存储在 IM XDMS实体中, 且用户已订阅了离线消息通知, 当用户客户端上线后, 所述 IM服务器通过 IM-3接口向所述 IM XDMS实体查询获取该用户的离线消息元 数据; 并根据查询结果构造离线消息列表, 通过 SIP NOTIFY消息携带所述离 线消息列表信息和所述离线消息元数据向用户客户端发送离线消息通知。
  15. 15. 如权利要求 2所述的方法, 其特征在于, 若离线消息元数据存储在 IM XDMS实体中, 但用户没有订阅离线消息通知, 当用户客户端上线后, 所述 IM服务器通过 IM-3接口向所述 IM XDMS实体查询获取该用户的离线消息元 数据; 并根据查询结果构造离线消息列表, 通过 SIP MESSAGE消息携带所述 离线消息列表信息和所述离线消息元数据向用户客户端发送离线消息通知。
  16. 16. 如权利要求 1所述的方法, 其特征在于, 用户客户端收到离线消息通 知后, 向所属 IM服务器发起离线消息获取请求, 携带获取条件信息。
  17. 17. 如权利要求 16所述的方法, 其特征在于, 用户客户端通过 SIP消息、 超文本传输协议 HTTP消息或通过消息会话中继协议 MSRP通道采用 MSRP消 息, 发起离线消息获取请求。
  18. 18. 如权利要求 16所述的方法, 其特征在于, 所述获取条件包括: 按照 发件人选择离线消息、 按照发送时间选择离线消息、 按照消息主题选择离线 消息或按照上述条件的组合选择离线消息或随机选择离线消息。
  19. 19.如权利要求 16所述的方法, 其特征在于, 所述 IM服务器收到离线消 息获取请求后, 根据获取条件发送离线消息内容给用户客户端。
  20. 20. 如权利要求 19所述的方法,其特征在于,所述 IM服务器通过 SIP消息、 HTTP消息或通过 MSRP通道采用 MSRP消息, 发送所述离线消息内容。
  21. 21. 如权利要求 20所述的方法, 其特征在于, 所述 IM服务器在一条发送 消息中仅携带一条离线消息内容; 或将多条离线消息内容合并在一起, 通过 一条发送消息发送。
  22. 22. 如权利要求 21所述的方法, 其特征在于, 所述多条离线消息内容的 字节数之和小于等于所述发送消息所能支持的最大字节数。
  23. 23. 如权利要求 20所述的方法, 其特征在于, 若离线消息元数据和离线 消息内容合并存储在同一离线消息存储实体中, 所述 IM服务器通过数据库接 口向所述同一离线消息存储实体查询获取该用户的离线消息内容并发送; 若离线消息元数据和离线消息内容分别存储在不同的离线消息存储实体 中, 所述 IM服务器通过数据库接口向仅存储离线消息内容的存储实体查询获 取该用户的离线消息内容并发送。
  24. 24. 如权利要求 20所述的方法, 其特征在于, 若采用 MSRP消息发送离线 消息内容, 则使用所述 IM服务器与用户客户端之间已建立的 MSRP通道或新 建 MSRP通道发送所述离线消息内容。
  25. 25. 如权利要求 24所述的方法, 其特征在于, 所述采用新建 MSRP通道发 送离线消息内容包括: IM服务器先获取用户的离线消息内容, 再新建 MSRP 通道并发送; 或者
    IM服务器收到用户客户端发起的获取离线消息请求后, 先建立起与用户 客户端之间的 MSRP通道, 再获取用户的离线消息内容发送。
  26. 26. 如权利要求 25所述的方法, 其特征在于, 所述先获取用户的离线消 息内容, 再新建 MSRP通道并发送, 具体包括:
    IM服务器接收到用户客户端的获取离线消息请求后, 根据请求中携带的 获取条件查询离线消息内容并存储在本地;
    IM服务器向用户客户端发送 SIP请求消息,请求建立起与用户客户端之间 的 MSRP传输通道;
    用户客户端返回 SIP响应消息给 IM服务器;
    IM服务器收到 SIP响应消息后, 发送 SIP确认消息给用户客户端, 建立起 与用户客户端之间的 MSRP通道; 并通过该 MSRP通道将获取的离线消息发送 给用户客户端。
  27. 27. 如权利要求 25所述的方法, 其特征在于, 所述先建立起与用户客户 端之间的 MSRP通道, 再获取用户的离线消息内容发送, 具体包括:
    IM服务器收到用户客户端发起的获取离线消息请求后, 向用户客户端发 送 SIP请求消息, 请求建立起与用户客户端之间的 MSRP传输通道;
    用户客户端返回 SIP响应消息给 IM服务器;
    IM服务器收到 SIP响应消息后, 发送 SIP确认消息给用户客户端, 建立起 与用户客户端之间的 MSRP通道;
    IM服务器根据获取离线消息请求中携带的获取条件查询离线消息内容 并通过建立起的 MSRP通道发送给用户客户端。
  28. 28. 如权利要求 26或 27所述的方法, 其特征在于, 当全部离线消息发送 完毕后, 所述 IM服务器向用户客户端发送 SIP BYE消息; 用户客户端返回响 应消息。
  29. 29. 如权利要求 1所述的方法, 其特征在于, 若用户没有预先设置要求保 存离线消息, 当 SIP/SIMPLE系统收到发送给用户的离线消息时, 丢弃该离线 消息; 或者
    按照 SIP/SIMPLE系统默认的处理策略进行处理。
  30. 30. 如权利要求 1所述的方法, 其特征在于, 在所述离线消息的获取过程 中, 所述所属 IM服务器将离线消息内容发送给用户客户端, 用户客户端向其 所属 IM服务器发送响应消息。
  31. 31. 如权利要求 30所述的方法, 其特征在于, 所述用户客户端所属 IM服 务器收到用户客户端发送的响应消息后, 删除离线消息存储实体中已经发送 过的离线消息。
  32. 32. 如权利要求 23所述的方法, 其特征在于, 所述当 IM服务器从离线消 息存储实体中获取该客户端的离线消息内容后, 在离线消息存储实体中删除 已获取的离线消息。
  33. 33. 如权利要求 23所述的方法, 其特征在于, 所述当 IM服务器从离线消 息存储实体中获取该客户端的离线消息内容后, 将已从离线消息存储实体中 获取的离线消息打上已获取的标记, 即时消息系统定期集中删除所述已打上 已获取标记的离线消息。
  34. 34. 如权利要求 23所述的方法, 其特征在于, 所述当 IM服务器从离线消 息存储实体中获取该客户端的离线消息内容后, 并将离线消息存储实体中已 获取的离线消息设置相应的保存时限, 当所述离线消息在系统中保存的时间 超过保存时限时, 删除离线消息存储实体中的所述离线消息。
CNA2006800122159A 2005-10-11 2006-07-07 一种离线消息处理方法 Pending CN101160913A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN200510112565.X 2005-10-11
CNB200510112565XA CN100514968C (zh) 2005-10-11 2005-10-11 离线消息的处理方法和即时消息服务器
PCT/CN2006/001600 WO2007041913A1 (en) 2005-10-11 2006-07-07 A method for processing a deferred message

Publications (1)

Publication Number Publication Date
CN101160913A true CN101160913A (zh) 2008-04-09

Family

ID=36805990

Family Applications (2)

Application Number Title Priority Date Filing Date
CNB200510112565XA Active CN100514968C (zh) 2005-10-11 2005-10-11 离线消息的处理方法和即时消息服务器
CNA2006800122159A Pending CN101160913A (zh) 2005-10-11 2006-07-07 一种离线消息处理方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CNB200510112565XA Active CN100514968C (zh) 2005-10-11 2005-10-11 离线消息的处理方法和即时消息服务器

Country Status (3)

Country Link
US (3) US8010611B2 (zh)
CN (2) CN100514968C (zh)
WO (1) WO2007041913A1 (zh)

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7561595B2 (en) * 2005-09-30 2009-07-14 Nokia Corporation Method and apparatus for instant messaging
CN100514968C (zh) * 2005-10-11 2009-07-15 华为技术有限公司 离线消息的处理方法和即时消息服务器
CN102611639B (zh) * 2006-07-21 2015-04-08 华为技术有限公司 一种即时消息系统中发送即时消息报告的系统
CN101207577B (zh) * 2006-12-19 2011-04-13 华为技术有限公司 消息系统间的互连方法及消息互连网关
CN101296194B (zh) * 2007-04-26 2010-12-01 中国移动通信集团公司 即时消息互通方法、即时消息网关及即时消息服务器
KR101544623B1 (ko) * 2007-06-22 2015-08-17 삼성전자주식회사 연기된 메시지 리마인더와 만기 연장을 위한 시스템 및 방법
CN101087272B (zh) * 2007-06-29 2010-12-08 腾讯科技(深圳)有限公司 一种在即时通讯系统中实现呼叫受限的方法、装置和系统
US7747694B2 (en) * 2007-07-30 2010-06-29 Solace Systems, Inc. Low latency and assured delivery using HTTP
CN101242357B (zh) * 2008-01-17 2010-09-29 中兴通讯股份有限公司 一种移动ip用户通知业务的实现方法
US8572170B2 (en) * 2008-02-14 2013-10-29 Cisco Technology, Inc. System and method for leaving and retrieving electronic message notes
US20090216836A1 (en) * 2008-02-25 2009-08-27 Thomas Richard Haynes Saving a Draft Message in an Instant Messaging Environment
CN101262655B (zh) * 2008-04-23 2011-08-03 华为技术有限公司 一种会话方法、系统及装置
CN101282361B (zh) * 2008-05-16 2010-12-08 腾讯科技(深圳)有限公司 移动通信终端与电子邮箱的操作交互系统及方法
US8214442B2 (en) * 2008-08-05 2012-07-03 International Business Machines Corporation Facilitating an extended IM session in a secure way
DE102008045425B3 (de) * 2008-09-02 2009-08-13 Infineon Technologies Ag Verfahren zur Ermittlung aktiver Kommunikationssitzungen, Kommunikationssitzungs-Informationsserver, Verfahren zum Bereitstellen einer Information über aktive Kommunikationssitzungen und Dokumentenmanagement-Server
CN101465883B (zh) * 2008-12-16 2012-05-23 北京畅游天下网络技术有限公司 一种修改用户数据的方法、装置及系统
KR101596955B1 (ko) * 2009-02-20 2016-02-23 삼성전자주식회사 통합 인터넷 프로토콜 메시징 시스템에서 세션 트랜스퍼 방법
KR101485806B1 (ko) * 2009-05-28 2015-01-23 삼성전자주식회사 원격 유저 인터페이스를 지원하는 홈 네트워크에서 이벤트 처리 방법 및 이를 위한 장치
CN101998315B (zh) * 2009-08-14 2013-12-11 中国电信股份有限公司 短信接收智能处理方法及系统
CN106850681B (zh) * 2009-10-08 2020-07-10 瑞典爱立信有限公司 用于传递消息的方法和系统
US10182008B2 (en) 2009-10-08 2019-01-15 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for transferring a message
US8990332B2 (en) * 2009-12-21 2015-03-24 International Business Machines Corporation Performance optimization of a publish operation
CN102137339A (zh) * 2010-01-27 2011-07-27 深圳市源通世纪科技有限公司 一种一键通终端提醒群组成员上线的方法
CN102195787B (zh) * 2010-03-17 2013-09-11 华为技术有限公司 消息处理方法和消息会话传输协议服务器
US8706822B2 (en) * 2010-06-23 2014-04-22 Microsoft Corporation Delivering messages from message sources to subscribing recipients
CN102014160A (zh) * 2010-11-25 2011-04-13 中国联合网络通信集团有限公司 终端间数据传输方法和终端间数据传输系统
US9137191B2 (en) 2011-03-17 2015-09-15 Microsoft Technology Licensing, Llc Messaging for notification-based clients
ES2751133T3 (es) * 2011-06-29 2020-03-30 Orange Motor de notificaciones
CN102377785A (zh) * 2011-11-28 2012-03-14 上海量明科技发展有限公司 即时通信中向自身发送数据的方法和系统
CN103324517A (zh) * 2012-03-20 2013-09-25 华为终端有限公司 离线应用的生成及调用方法、终端及系统
CN102685138A (zh) * 2012-05-21 2012-09-19 华为技术有限公司 离线消息推送方法及装置
CN103516579A (zh) * 2012-06-27 2014-01-15 腾讯科技(深圳)有限公司 提供离线消息的服务系统及相应的服务方法
CN103546437A (zh) * 2012-07-16 2014-01-29 中兴通讯股份有限公司 一种ims中实现离线消息收发的方法、ue及as
WO2014071375A1 (en) * 2012-11-05 2014-05-08 Brilliant Mobile L.L.C. Media messaging methods, systems, and devices
CN103973541B (zh) * 2013-01-29 2018-03-20 中兴通讯股份有限公司 一种向群组成员发送多媒体消息的方法及设备
US10296618B1 (en) * 2013-05-20 2019-05-21 EMC IP Holding Company LLC Storage system query mechanism and techniques
US9231894B1 (en) * 2013-08-14 2016-01-05 Infinite Convergence Solutions, Inc. Method and devices for instant message client swap
US9961027B2 (en) 2013-09-17 2018-05-01 Amazon Technolgies, Inc. Email webclient automatic failover
US9900366B2 (en) 2013-09-17 2018-02-20 Amazon Technologies, Inc. Email webclient notification queuing
CN104518953B (zh) * 2013-09-30 2019-12-24 腾讯科技(深圳)有限公司 删除消息的方法、即时通信终端及系统
US10110536B2 (en) * 2014-04-21 2018-10-23 Dropbox, Inc. System for managing event notifications to client devices
CN104796417B (zh) * 2015-04-08 2018-05-01 大唐移动通信设备有限公司 一种创建订阅业务的方法及装置
US20170005971A1 (en) * 2015-06-30 2017-01-05 Samsung Electronics Co., Ltd. Method and system for data communication
CN106547746B (zh) * 2015-09-16 2021-03-30 北京国双科技有限公司 数据发送的方法及装置
CN105933380A (zh) * 2016-04-01 2016-09-07 宇龙计算机通信科技(深圳)有限公司 一种数据传输的方法、装置及终端
CN107547289A (zh) * 2016-06-24 2018-01-05 南京中兴软件有限责任公司 消息传输系统、消息发送方法和装置、接收方法和装置
CN106656763A (zh) * 2016-12-29 2017-05-10 北京奇虎科技有限公司 发送离线消息的方法及装置
CN106657357A (zh) * 2016-12-29 2017-05-10 北京奇虎科技有限公司 发送离线消息的方法及装置
CN106685804A (zh) * 2016-12-29 2017-05-17 北京奇虎科技有限公司 发送离线消息的方法及装置
CN109218422A (zh) * 2018-09-12 2019-01-15 上海庆科信息技术有限公司 一种信息交互的方法、装置、设备以及存储介质
CN111643892A (zh) * 2020-05-29 2020-09-11 上海米哈游天命科技有限公司 消息处理方法、装置、设备和存储介质
CN112100556B (zh) * 2020-08-25 2023-02-24 福建天泉教育科技有限公司 优化消息推送方式的方法及其系统
US11936763B2 (en) 2020-10-28 2024-03-19 International Business Machines Corporation Handling deferrable network requests
CN115174507B (zh) * 2021-04-02 2023-10-27 北京字跳网络技术有限公司 即时通信离线消息处理方法、客户端和服务器
CN115242744B (zh) * 2022-06-15 2024-02-02 艺龙网信息技术(北京)有限公司 自定义时间的定时消息发送方法、系统、终端及存储介质

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020131395A1 (en) * 2001-03-19 2002-09-19 Chenghui Wang Session initiation protocol (SIP) user agent in a serving GPRS support node (SGSN)
CN1404288A (zh) * 2001-09-13 2003-03-19 腾讯科技(深圳)有限公司 完成手机号码与即时通信号码捆绑和手机状态显示的方法
US7512407B2 (en) * 2001-03-26 2009-03-31 Tencent (Bvi) Limited Instant messaging system and method
GB0108041D0 (en) 2001-03-30 2001-05-23 Nokia Networks Oy Presence service in IP multimedia
GB0213726D0 (en) 2002-06-14 2002-07-24 Nokia Corp A communication system
US7450937B1 (en) * 2003-09-04 2008-11-11 Emc Corporation Mirrored data message processing
ES2295664T3 (es) * 2003-11-06 2008-04-16 Siemens Aktiengesellschaft Metodo para recuperacion y entrega de mensajes multimedia utilizando el protocolo de inicio de sesion.
CN1642148B (zh) * 2004-01-17 2012-06-20 腾讯科技(深圳)有限公司 一种即时通讯处理方法
US7886024B2 (en) * 2004-07-01 2011-02-08 Microsoft Corporation Sharing media objects in a network
US7305069B1 (en) * 2004-07-20 2007-12-04 Cisco Technology, Inc. Multi-copy, multi-media, non-redundant messaging
US7529813B2 (en) * 2005-04-14 2009-05-05 Hewlett-Packard Development Company, L.P. Multimedia transfer for wireless network
US20060235981A1 (en) * 2005-04-19 2006-10-19 Nokia Corporation Providing a second service to a group of users using a first service
CN1859380B (zh) 2005-07-28 2011-12-07 华为技术有限公司 一种离线消息获取方法
EP1929712B1 (en) * 2005-09-02 2019-11-06 BlackBerry Limited Sip header reduction
US7512619B2 (en) * 2005-09-19 2009-03-31 International Business Machines Corporation Real time work queue notification
US20160344581A9 (en) * 2005-09-21 2016-11-24 Amit Karmarkar Text message including a contextual attribute of a mobile device
US7580719B2 (en) * 2005-09-21 2009-08-25 U Owe Me, Inc SMS+: short message service plus context support for social obligations
US8472986B2 (en) * 2005-09-21 2013-06-25 Buckyball Mobile, Inc. Method and system of optimizing context-data acquisition by a mobile device
US9258259B2 (en) * 2005-09-30 2016-02-09 Nokia Technologies Oy Retrieval of offline instant messages
US7561595B2 (en) * 2005-09-30 2009-07-14 Nokia Corporation Method and apparatus for instant messaging
CN100514968C (zh) * 2005-10-11 2009-07-15 华为技术有限公司 离线消息的处理方法和即时消息服务器
US20070226295A1 (en) * 2006-03-23 2007-09-27 Nokia Corporation Method and apparatuses for retrieving messages
US7996467B2 (en) * 2006-08-29 2011-08-09 Oracle International Corporation Techniques for applying policies for real time collaboration
CN101170540A (zh) * 2006-10-24 2008-04-30 华为技术有限公司 一种xml文档管理方法和客户端、服务器
KR101506029B1 (ko) * 2006-11-13 2015-03-27 삼성전자주식회사 통합 메시징 서비스를 제공하기 위한 시스템과 방법
CN101227418B (zh) * 2007-01-19 2012-04-04 华为技术有限公司 一种实现融合ip消息的方法、装置及系统
FR2913158B1 (fr) * 2007-02-23 2009-05-01 Iminent Soc Par Actions Simpli Procede d'insertion d'un contenu multimedia dans une communication informatisee par messagerie instantanee
CN101309231B (zh) * 2007-05-16 2013-08-07 华为技术有限公司 一种线索的操作方法及装置
KR101544623B1 (ko) * 2007-06-22 2015-08-17 삼성전자주식회사 연기된 메시지 리마인더와 만기 연장을 위한 시스템 및 방법
GB2470705B (en) * 2008-04-10 2013-03-13 Ericsson Telefon Ab L M Adaption of metadata based on network conditions
US20100235762A1 (en) * 2009-03-10 2010-09-16 Nokia Corporation Method and apparatus of providing a widget service for content sharing

Also Published As

Publication number Publication date
US9397968B2 (en) 2016-07-19
CN1794723A (zh) 2006-06-28
CN100514968C (zh) 2009-07-15
US20110282957A1 (en) 2011-11-17
WO2007041913A1 (en) 2007-04-19
US20140289350A1 (en) 2014-09-25
US8819151B2 (en) 2014-08-26
US20070203995A1 (en) 2007-08-30
US8010611B2 (en) 2011-08-30

Similar Documents

Publication Publication Date Title
CN101160913A (zh) 一种离线消息处理方法
CN111131501B (zh) 一种基于mqtt协议的消息推送系统及方法
US8671156B2 (en) Method and apparatus for providing communication history
CN101714170B (zh) 一种基于xdms的群组管理系统及方法
CN101155049B (zh) 一种消息系统中会话历史处理方法及消息系统
CN101299829B (zh) 一种实现统一存储中管理媒体内容的方法和消息系统
CN101160875A (zh) 一种离线消息发送方法
KR101002842B1 (ko) I m p s 시스템과 s i m p l e i m 시스템의 연동 시스템에서 그룹 관리 방법
US9049165B2 (en) Method for delivering message based on CPM service and server thereof
CN101821991B (zh) 用于管理网络中的用户优选项简档的方法和系统
KR101663009B1 (ko) 통신 네트워크에서의 메시지 저장 관리를 위한 서버, 장치 및 방법
CN103988468B (zh) 用于邀请订阅联系人信息的装置和方法
WO2007107064A1 (fr) Procédé et système de distribution de contenu dynamique
CN101599921A (zh) 一种企业即时通信系统及其文件传输方法
CN101374254A (zh) 通信系统中传送报告的方法及设备
EP2396940B1 (en) A method and an arrangement for handling resource data
EP1941752A1 (en) System and method for forwarding presence subscription along with contact list entries
CN101800759B (zh) 一种邀请订阅的实现系统及方法
CN101047668B (zh) 扩展信息发送方法
CN101202953B (zh) 快捷回复方法及其系统
CN100454908C (zh) 一种即时消息业务处理方法及服务系统
CN1878171B (zh) 一种聊天室中阻塞信息通知的方法
CN101400020A (zh) 被动加入群组的用户获取群组列表的方法、系统及服务器
CN108337215B (zh) 一种文件传输方法及系统、装置、电子设备
CN101790137A (zh) 一种融合ip消息的转发方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication