一种处理即时消息报告或即时消息的方法和装置的制作方法

文档序号:7925819阅读:187来源:国知局
专利名称:一种处理即时消息报告或即时消息的方法和装置的制作方法
技术领域
本发明涉及通信领域,特别涉及一种处理即时消息l艮告或即时消息的方法 和装置。
背景技术
IP多媒体子系统(IP Multimeida Subsystem /Multimedia Domain)是 3GPP/3GPP2中的一个标准,其核心协议是会话初始协议(Session Initiation Protocol)。以SIP和IMS为基础,可以快速提供和部署各种多媒体业务,其中 包括即时消息(IM)业务和呈现(Presence )业务。即时消息业务采用SIP MESSAGE 或与SIP相配合协议其它协议(如Message Session Relay Protocol [4])等, 用于在终端用户间发送接近实时的各种类型的多i某体消息;呈现业务则采用 SIP中的订阅/通知机制,用于为用户提供彼此的在线状态等信息。同时,即时 消息业务中还提供了即时消息报告的功能,即发送方在发送消息时能够请求接 收方反馈是否成功收到所述消息或是否成功阅读所述消息的即时消息报告,接 收方则根据请求在消息接收后返回相应的即时消息报告给发送方。
通常,用户能够通过即时消息业务设置、或者呈现信息发布的方式,设置 自身的即时消息业务的呈现状态为"隐身,,、"离线,,或"不可用,,等,以避 免不必要的打扰或礼貌地"忽略"他人发来的即时消息内容。发明人在发明的 过程中发现,在现有技术条件下,如果消息收发双方既使用了呈现业务,又使 用了即时消息业务中的递送/阅读报告的即时消息报告功能,则可能出现相互 沖突的情形,从而暴露用户的真实呈现状态,泄露用户隐私。

发明内容
本发明提供一种处理即时消息报告的方法,以避免即时消息报告与即时消
5息接收方的呈现状态相沖突。具体包括 一种处理即时消息报告的方法,包括 接收第二终端发向第 一终端的即时消息报告; 获取第二终端的呈现状态; 判断第二终端的呈现状态为离线; 保存所述发向第 一终端的即时消息才艮告。 一种处理即时消息的方法,包括
接收第一终端发向第二终端的即时消息,所述即时消息中包含递送报告请
求;
获取第二终端的呈现状态; 判断第二终端的呈现状态为离线; 保存所述第 一终端发向第二终端的即时消息。 一种处理即时消息报告的方法,包括
根据即时消息中的递送报告请求,生成发向第 一终端的即时消息报告;
获取第二终端的呈现状态;
判断第二终端的呈现状态为离线;
保存所述发向第 一终端的即时消息报告。
一种消息服务器,包括
接收模块用于接收发向第一终端的即时消息报告;
判断模块用于判断第二终端的呈现状态为离线,保存所述发向第一终端 即时消息"t艮告。
一种消息服务器,包括
接收模块用于接收发向第二终端的即时消息;
判断模块用于判断第二终端的呈现状态为离线,保存所述发向第二终端 的即时消息。
一种终端,包括,消息模块用于根据接收到的第 一终端发送来的即时消息中的递送报告请 求,生成发向第一终端的即时消息报告;
判断模块用于判断自身的呈现状态为离线,保存所述发向第一终端的即 时消息报告。
本发明协调了即时消息报告的递送和呈现状态,避免了即时消息报告暴露 用户的真实在线状态,从而保护了用户的隐私,保证用户的业务体验。


图1为本发明实施例一种处理即时消息报告方法的流程图; 图2为本发明实施例一种处理即时消息方法的流程图; 图3为本发明实施例一种处理即时消息报告方法的流程图; 图4为本发明实施例一种消息服务器的结构图; 图5为本发明一种终端的结构图;
具体实施例方式
为了使本技术领域的人员更好地理解本发明,下面结合附图对本发明作进 一步的详细"i兑明。
附图1为本发明由消息服务器处理即时消息报告方法的实施例,其中, 步骤101:第二终端向消息服务器发送业务注册消息,消息服务器将可以 向第二终端提供业务服务,例如转发第一终端向第二终端发送的即时消息, 保存第二终端向第一终端发送的即时消息报告,在本发明的一个实施例中消息 服务器还可以在自身存储的信息中存储终端的呈现状态,例如终端为"隐身"、 "在线"、"离线"、"请勿打扰"等。
步骤102:第二终端向呈现服务器发送其自身的呈现状态,所述呈现状态 可以包括隐身、离线、在线、请勿打扰等,以上所述"隐身"、"离线"、"请勿打扰"等呈现状态,包括用户设置的第二终端处于无法或不愿意收发即时消 息的状态,其具体表达方式可以是采用其它类似的描述,如关闭、不可达等, 在本发明中实施例中统一用"离线"表示;以上所述"在线",包括用户设 置的第二终端处于可以或愿意收发即时消息的状态,其具体表达方式可以是采
用其它类似的描述,如打开、可达、已连接等,本发明实施例中统一用"在 线"表示。
还可以在呈现状态中进一步设置仅对部分用户的呈现状态,例如对本实施 例中第一终端的呈现状态为离线等,对其他终端的呈现状态为在线等。本步骤 中第二终端向呈现服务器发送的呈现状态为离线。
步骤102a, 102b:步骤102中第二终端向呈现服务器发送其自身的呈现状 态,也可以通过步骤102a, 102b实现,其中步骤102a为第二终端向消息服务 器发送呈现状态设置消息,请求消息服务器在呈现服务器中设置其呈现状态为 离线。步骤102b中,消息服务器通知呈现服务器第二终端的呈现状态为离线。 在本发明的另一个实施例中,消息服务器此时还可以保存所述第二终端的呈现 状态。
步骤103:第一终端向呈现服务器订阅第二终端的呈现状态,可以通过SIP 协议实现,例如通过发送SIP SUBSCRIBE请求向呈现服务器订阅第二终端的 呈现状态。
步骤104:呈现^^务器向第一终端反馈第二终端的呈现状态,可以通过SIP 协议实现,例如通过向第一终端发送SIP NOTIFY请求向第一终端反馈第二终 端的呈现状态。由于在步骤102中第二终端设置的呈现状态为离线,表示第二 终端处于无法或不愿意收发即时消息的状态。呈现服务器向第一终端反馈的第 二终端的呈现状态应该为离线,表示第二终端目前处于不可以收到来自第一终 端即时消息的状态。
步骤105:第一终端通过消息服务器向第二终端发送即时消息,该即时消 息首先到达消息服务器。并且在该即时消息中携带有递送报告请求,请求第二终端在收到所述即时消息后反馈即时消息报告,例如反馈其是否收到所述的 即时消息,是否阅读所述的即时消息等。
步骤106:消息服务器直接向第二终端转发所述即时消息。 步骤107:第二终端收到所述即时消息后根据消息中的递送报告请求,向 消息服务器反馈成功收到即时消息的即时消息报告。
步骤108:消息服务器在收到所述的即时消息报告后判断第二终端当前的 呈现状态,该步骤中消息服务器可以从呈现服务器获取第二终端的呈现状态, 比如通过SIP SUBSCRIBE请求订阅,或通过HTTP GET请求获取所述第二 终端的呈现状态。在本发明的另 一个实施例中也可以才艮据自身储存的第二终端 的呈现状态进行判断。此时对应于以上第二终端设置的呈现状态为离线,其判 断的结果也为离线。根据判断的结果,消息服务器将不会向第一终端发送所述 的即时消息报告,消息服务器还可以进一步緩存保存所述的即时消息报告,以 便在第二终端呈现状态更新为在线时,向所述第一终端发送。在本发明的另一 个实施例中,该步骤中消息服务器还可以进一步判断保存的即时消息报告是否 过期,如果已经过期,可以将所述的即时消息报告丟弃也可以将所述的即时消 息报告修改为表示发送或阅读失败的失败即时消息报告,并将此失败即时消息 报告发送给第一终端。
步骤109:第二终端直接请求呈现服务器更新其呈现状态为在线。 步骤109a, 10%:步骤109中第二终端直接请求呈现服务器更新其呈现状 态也可以通过步骤109a, 109b完成,其中步骤109a为第二终端向消息服务器 发送呈现状态更新消息,请求其在呈现服务器中更新所述第二终端的呈现状态 为在线。步骤10%中,消息服务器通知呈现服务器第二终端的呈现状态更新 为"在线"。在本发明的另外一个实施例中此时消息服务器中原先存储的第二 终端的呈现状态也更新为"在线"。
步骤110:由于第一终端在步骤103中订阅了第二终端的呈现状态,呈现 服务器向第一终端反馈第二终端的呈现状态,对应于步骤109中第二终端更新
9的呈现状态为在线,本步骤中呈现服务器向第一终端反馈的第二终端的呈现状 态也为在线。
步骤111:消息服务器判断第二终端的呈现状态,该判断可以是呈现服务 器定期向消息服务器反馈第二终端的呈现状态,也可以是由消息服务器定期从 呈现服务器获取第二终端的呈现状态,比如消息服务器通过SIP SUBSCRIBE 请求向呈现服务器订阅了第二终端的呈现状态,呈现服务器会将第二终端的呈 现状态定期反馈给消息服务器。又比如消息服务器通过HTTP GET请求从呈 现服务器主动获取所述第二终端的呈现状态。在本发明的另一个实施例中也可 以根据自身储存的信息中的第二终端的呈现状态进行判断。此时对应于以上第 二终端更新后的呈现状态为在线,其判断的结果也为在线。由于其判断的结果 为在线,消息服务器进一步将上述保存的即时消息报告发送给第 一终端。
附图2为本发明由消息服务器处理即时消息的方法的实施例,其中
步骤201:第二终端向消息服务器发送业务注册消息。其具体过程与上述 步骤101中的描述相同。
步骤202:第二终端向呈现服务器发送其自身的呈现状态,也可以通过步 骤202a, 202b实现,其具体过程与上述步骤102中的描述相同。
步骤203:第一终端向呈现服务器订阅第二终端的呈现状态,其具体过程 与上述步骤103中的描述相同。
步骤204:呈现服务器向第一终端反馈第二终端的呈现状态,其具体过程 与上述步骤104中的描述相同。
步骤205:第一终端通过消息服务器向第二终端发送即时消息,该即时消 息首先到达消息服务器。并且在即时消息中携带有递送报告请求,请求第二终 端在收到所述即时消息后反馈即时消息报告,例如反馈其是否收到所述的即 时消息,是否阅读所述的即时消息等。
步骤206:消息服务器收到上述第一终端向第二终端发送的携带有递送报 告请求的即时消息。消息^^务器可以首先判断第二终端的呈现状态,该判断可
10以是呈现服务器定期向消息服务器反馈第二终端的呈现状态,也可以是由消息
服务器从呈现服务器获取第二终端的呈现状态,比如消息服务器通过SIP SUBSCRIBE请求向呈现服务器订阅了第二终端的呈现状态,呈现服务器会将第 二终端的呈现状态定期反馈给消息服务器。又比如消息服务器通过HTTP GET 请求从呈现服务器主动获取所述第二终端的呈现状态。在本发明的另一个实施 例中也可以根据自身储存的信息中的第二终端的呈现状态进行判断。若第二终 端的呈现状态为离线则先保存所述即时消息,等到第二终端的呈现状态更新为 在线时再向第二终端发送所述的即时消息。在本发明的另一个实施例中,该步 骤中消息服务器还可以进一步判断保存的即时消息是否过期,如果已经过期, 可以将所述的即时消息丟弃,还可以进一步生成表示发送或阅读失败的失败即 时消息报告,并将此失败即时消息报告发送给第 一终端。
步骤207:第二终端直接请求呈现服务器更新其呈现状态为在线。 步骤207a,步骤207b:步骤207中第二终端直接请求呈现服务器更新其呈 现状态也可以通过步骤207a, 207b完成,其具体过程与步骤109a, 109b中的 描述相同。
步骤208:由于第一终端在步骤203中订阅了第二终端的呈现状态,呈现 服务器向第一终端反々贵第二终端的呈现状态,对应于步骤207中第二终端更新 的呈现状态为在线,本步骤中呈现服务器向第一终端反4t的第二终端的呈现状 态也为在线。
步骤209:消息服务器判断第二终端的呈现状态,该判断可以是呈现服务 器定期向消息服务器反馈第二终端的呈现状态,也可以是由消息服务器定期从 呈现服务器获取第二终端的呈现状态,比如消息服务器通过SIP SUBSCRIBE 请求向呈现服务器订阅了第二终端的呈现状态,呈现服务器会将第二终端的呈 现状态定期反馈给消息服务器。又比如消息服务器通过HTTP GET请求从呈 现服务器主动获取所述第二终端的呈现状态。在本发明的另 一个实施例中也可 以根据自身储存的信息中的第二终端的呈现状态进行判断。此时对应于以上第二终端更新后的呈现状态为在线,其判断的结果也为在线。消息服务器进一步将上述保存的即时消息发送给第二终端。
步骤210:第二终端收到消息服务器转发的由第一终端发来的上述即时消息,分析出即时消息中携带有递送报告请求,请求第二终端在收到所述即时消息后反馈即时消息报告。第二终端生成即时消息报告并通过消息服务器转发给第 一终端,告知第 一终端其已经收到第 一终端向其发送的即时消息或已经阅读第 一终端向其发送的即时消息。
以上附图2提供的实施例通过消息服务器对即时消息的处理,实现了第二终端向第 一终端发送的即时消息报告同第二终端的呈现状态相 一致。
附图3为本发明由第二终端处理即时消息报告方法的实施例,其中
步骤301:第二终端向消息服务器发送业务注册消息。其具体过程与上述步骤101中的描述相同。
步骤302:第二终端向呈现服务器发送其自身的呈现状态,也可以通过步骤302a, 302b实现,其具体过程与上述步骤102中的描述相同。
步骤303:第一终端向呈现服务器订阅第二终端的呈现状态,其具体过程与上述步骤103中的描述相同。
步骤304:呈现服务器向第一终端反馈第二终端的呈现状态,其具体过程与上述步骤104中的描述相同。
步骤305:第一终端通过消息服务器向第二终端发送即时消息,该即时消息首先到达消息服务器。并且在即时消息中携带有递送报告请求,请求第二终端在收到所述即时消息后反馈即时消息报告,例如反馈其是否收到所述的即时消息,是否阅读所述的即时消息等。
步骤306:消息服务器向第二终端转发所述即时消息。
步骤307:第二终端在收到所述的即时消息后,解析出即时消息中携带有递送报告请求,请求第二终端在收到所述即时消息后反馈即时消息报告,告知第一终端其是否收到或阅读所述的即时消息。第二终端根据上述请求生成并保
12存即时消息报告。本步骤中也可以先保存所述的即时消息,生成即时消息报告
可以在步骤308中第二终端的呈现状态更新为"在线,,以后执行。第二终端进一步判断其自身当前的呈现状态。本步骤中第二终端可以从呈现服务器获取第二终端的呈现状态,对于大多数情况来说第二终端的呈现状态对其自身来说是已知的,也可以通过第二终端其自身存储信息中得到第二终端的呈现状态。此时对应于以上第二终端设置的呈现状态为离线,其判断的结果也为离线,第二终端将不向第 一终端反馈所述即时消息报告,进一步保存所述即时消息报告。在本发明另 一个实施例中,本步骤中第二终端还可以进一步判断保存的即时消息报告是否过期,如果已经过期,则丟弃所述的即时消息报告,或进一步将所述生成的即时消息报告更改为表示递送或阅读失败的失败即时消息报告,并发送给第一终端。
步骤308:第二终端请求呈现服务器更新其呈现状态为在线。在本发明的另一个实施例中第二终端自身存储信息中的呈现状态也同时更新为在线。
步骤308a, 308b:步骤308中第二终端请求呈现服务器更新其呈现状态也可以通过步骤308a, 308b完成,其中步骤308a为第二终端向消息服务器发送呈现状态更新消息,请求其在呈现服务器中更新所述第二终端的呈现状态为在线。步骤308b中,消息服务器通知呈现服务器第二终端的呈现状态更新为在线。在本发明的另外一个实施例中此时消息服务器中原先存储的第二终端的呈现状态也更新为在线。
步骤309:呈现服务器向第一终端反馈第二终端的呈现状态更新为在线。
步骤310:第二终端呈现状态更新为在线后,若在步骤307中,第二终端生成并保存了所述即时消息报告,此时第二终端将该即时消息报告通过消息服务器反^t到所述第一终端;若在步骤307中,第二终端未生成或未保存所述即时消息报告,则生成相应的即时消息报告,并通过消息服务器反馈到所述第一终端。
图4为本发明实施例提供的一种消息服务器400的结构图,用于实施本发明所述即时消息才艮告和/或即时消息的处理方法,具体包括接收模块401,判断模块402,其中
接收模块401:用于接收由第二终端发向第一终端的即时消息报告;在本发明的另 一个实施例中该模块可以用于接收由第 一终端发向第二终端的即时消息;
判断模块402:用于判断第二终端的呈现状态,第二终端的呈现状态为离线,保存所述由第二终端发向第一终端即时消息报告。该模块还可以进一步用于判断保存的由第二终端发向第一终端即时消息净艮告已经过期,丢弃所述的即时报告或将所述的即时消息报告修改为表示递送或阅读失败的失败即时消息报告并发送给所述第一终端。在本发明的另 一个实施例中该模块可以用于判断第二终端的呈现状态为离线,保存由第一终端发向第二终端的即时消息,该才莫块还可以进一步用于判断所述保存的由第 一终端发向第二终端的即时消息已经过期,生成失败即时消息报告并发送给所述第一终端。
在本发明另外的实施例中,消息服务器400还可以包括,发送模块403。
发送模块403:用于根据第二终端的呈现状态,将第二终端向第一终端反馈的即时消息报告发送给第 一终端,例如当第二终端的呈现状态为在线时将第二终端向第一终端反馈的即时消息报告发送给第一终端;在本发明的另 一个实施例中,该;漠块还可以用于根据第二终端的呈现状态,将即时消息发送给第二终端,例如第二终端的呈现状态为"在线,,时,将第一终端向第二终端发送的即时消息转发给第二终端。
图5为本发明一种终端500的结构图,用于实施本发明所述即时消息报告的处理方法,具体包括消息模块501,判断模块502。其中
消息模块501:用于接收即时消息接收第一终端发送来的即时消息,该即时消息中携带递送报告请求,该模块根据此递送报告请求生成发向第一终端的即时消息报告;在本发明另一个实施例中,该模块还用于根据判断自身的呈现状态为在线,将所述发向第一终端的即时消息报告发送给所述第一终端。例如
14自身的呈现状态为"在线"时向第一客户端发送即时消息报告;
判断模块502:用于判断自身的呈现状态为离线,保存消息模块501生成 的发向第 一终端的即时消息报告。在本发明另外一个实施例中该模块还用于判 断保存的发向第一终端的即时消息报告已经过期,丢弃所述保存的发向第一终 端的即时消息报告,或将所述保存的发向第 一终端的即时消息报告修改为表示 发送或阅读失败的失败即时消息报告并发送给所述第 一终端。
通过以上实施例的描述,本领域的技术人员可以清楚地了解到本发明可借 助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情 况下前者是更佳的实施方式。基于这样的理解,本发明实施例的技术方案本质
产品存储在一个存储介质中,包括若干指令用以使得移动设备(可以是手机, 个人计算机,媒体播放器等)执行本发明各个实施例所述的方法。这里所称的 存储介质,如ROM/RAM、磁盘、光盘等。
显然,本领域的技术人员可以对本发明进4亍各种改动和变型而不脱离本发 明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及 其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
1权利要求
1.一种处理即时消息报告的方法,其特征在于,包括接收第二终端发向第一终端的即时消息报告;获取第二终端的呈现状态;判断第二终端的呈现状态为离线;保存所述发向第一终端的即时消息报告。
2. 根据权利要求l所述方法,其特征在于,还包括 判断第二终端的呈现状态为在线;向第 一终端发送所述保存的发向第 一终端的即时消息报告。
3. 根据权利要求1所述方法,其特征在于,还包括判断所述保存的发向第 一终端的即时消息"^艮告已经过期;丢弃所述保存的发向第 一终端的即时消息报告,或将所述保存的发向第 一终端的即时消息报告修改为失败即时消息报告并发送给所述第 一终端。
4. 一种处理即时消息的方法,其特征在于,包括接收第一终端发向第二终端的即时消息,所述即时消息中包含递送报告请求;获取第二终端的呈现状态;判断第二终端的呈现状态为离线;保存所述第 一终端发向第二终端的即时消息。
5. 根据权利要求4所述方法,其特征在于,还包括 判断第二终端当前的呈现状态为在线;将所述保存的第 一终端发向第二终端的即时消息发送给第二终端。
6. 根据权利要求4所述方法,其特征在于,还包括判断所述保存的第 一终端发向第二终端的即时消息已经过期;丟弃所述的第一终端发向第二终端的即时消息和/或生成失败即时消息报告,并发送给所述第一终端。
7.一种处理即时消息报告的方法,其特征在于,包括根据即时消息中的递送报告请求,生成发向第 一终端的即时消息报告;获取第二终端的呈现状态;判断第二终端的呈现状态为离线; 保存所述发向第 一终端的即时消息报告。
8. 根据权利要求7所述方法,其特征在于,还包括 判断第二终端的呈现状态为在线;向第 一终端发送所述保存的发向第 一终端的即时消息^^艮告。
9. 根据权利要求7所述方法,其特征在于,还包括判断所述保存的发向第 一终端的即时消息报告已经过期; 丢弃所述保存的发向第一终端的即时消息报告,或将所述保存的发向第一终端 的即时消息报告修改为失败即时消息报告并发送给所述第 一终端。
10. —种消息服务器,其特征在于,包括 接收模块用于接收发向第一终端的即时消息报告;判断模块用于判断第二终端的呈现状态为离线,保存所述发向第一终端即时 消息报告。
11. 根据权利要求IO所述的消息服务器,其特征在于,还包括 发送模块用于4艮据判断第二终端的呈现状态为在线,向第一终端发送所述保 存的发向第 一终端的即时消息报告。
12. 根据权利要求10或11所述的消息服务器,其特征在于,所述的判断模块还用于判断所述保存的发向第 一终端即时消息报告已经过期, 丟弃所述的即时消息报告或将所述的即时消息报告修改为失败即时消息报告 并发送给所述第一终端。
13. —种消息服务器,其特征在于,包括 接收模块用于接收发向第二终端的即时消息;判断模块用于判断第二终端的呈现状态为离线,保存所述发向第二终端的即 时消息。
14. 根据权利要求13所述的消息服务器,其特征在于,还包括 发送模块用于根据判断第二终端的呈现状态为在线,向第二终端发送发向第 二终端的即时消息。
15. 根据权利要求13或14所述消息服务器,其特征在于,所述判断^f莫块还用于判断所述保存的发向第二终端的即时消息已经过期,生成 失败即时消息报告并发送给所述第 一终端。
16. —种终端,其特征在于包括,消息模块用于根据接收到的第一终端发送来的即时消息中的递送报告请求, 生成发向第 一终端的即时消息报告;判断模块用于判断自身的呈现状态为离线,保存所述发向第一终端的即时消 息报告。
17. 根据权利要求16所述终端,其特征在于所述消息模块还用于根据判断自身的呈现状态为在线,将所述发向第一终端的 即时消息报告发送给所述第 一终端。
18. 根据权利要求16或17所述终端,其特征在于所述判断模块还用于判断所述保存的发向第一终端的即时消息报告已经过期, 丟弃所述保存的发向第一终端的即时消息报告,或将所述保存的发向第一终端 的即时消息^^告修改为失败即时消息报告并发送给所述第 一终端。
全文摘要
本发明提供了一种处理即时消息报告或即时消息的方法和装置,其中方法包括接收第二终端发向第一终端的即时消息报告;获取第二终端的呈现状态;判断第二终端的呈现状态为离线;保存所述发向第一终端的即时消息报告。本发明协调了即时消息报告的递送和呈现状态,避免了即时消息报告暴露用户的真实在线状态,从而保护了用户的隐私,保证用户的业务体验。
文档编号H04L29/06GK101686210SQ20081021652
公开日2010年3月31日 申请日期2008年9月26日 优先权日2008年9月26日
发明者卞永刚, 张永靖, 刚 梁, 牟伦建, 珏 王, 许国军, 成 黄 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1