首页> 中国专利> 一种处理即时消息报告或即时消息的方法和装置

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

摘要

本发明提供了一种处理即时消息报告或即时消息的方法和装置,其中方法包括:接收第二终端发向第一终端的即时消息报告;获取第二终端的呈现状态;判断第二终端的呈现状态为离线;保存所述发向第一终端的即时消息报告。本发明协调了即时消息报告的递送和呈现状态,避免了即时消息报告暴露用户的真实在线状态,从而保护了用户的隐私,保证用户的业务体验。

著录项

  • 公开/公告号CN101686210A

    专利类型发明专利

  • 公开/公告日2010-03-31

    原文格式PDF

  • 申请/专利权人 华为技术有限公司;

    申请/专利号CN200810216525.3

  • 申请日2008-09-26

  • 分类号H04L12/58;H04L29/06;

  • 代理机构

  • 代理人

  • 地址 518129 广东省深圳市龙岗区坂田华为总部办公楼

  • 入库时间 2023-12-17 23:48:38

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2012-11-21

    授权

    授权

  • 2011-03-16

    实质审查的生效 IPC(主分类):H04L12/58 申请日:20080926

    实质审查的生效

  • 2010-03-31

    公开

    公开

说明书

技术领域

本发明涉及通信领域,特别涉及一种处理即时消息报告或即时消息的方法和装置。

背景技术

IP多媒体子系统(IP Multimeida Subsystem/Multimedia Domain)是3GPP/3GPP2中的一个标准,其核心协议是会话初始协议(Session InitiationProtocol)。以SIP和IMS为基础,可以快速提供和部署各种多媒体业务,其中包括即时消息(IM)业务和呈现(Presence)业务。即时消息业务采用SIP MESSAGE或与SIP相配合协议其它协议(如Message Session Relay Protocol[4])等,用于在终端用户间发送接近实时的各种类型的多媒体消息;呈现业务则采用SIP中的订阅/通知机制,用于为用户提供彼此的在线状态等信息。同时,即时消息业务中还提供了即时消息报告的功能,即发送方在发送消息时能够请求接收方反馈是否成功收到所述消息或是否成功阅读所述消息的即时消息报告,接收方则根据请求在消息接收后返回相应的即时消息报告给发送方。

通常,用户能够通过即时消息业务设置、或者呈现信息发布的方式,设置自身的即时消息业务的呈现状态为“隐身”、“离线”或“不可用”等,以避免不必要的打扰或礼貌地“忽略”他人发来的即时消息内容。发明人在发明的过程中发现,在现有技术条件下,如果消息收发双方既使用了呈现业务,又使用了即时消息业务中的递送/阅读报告的即时消息报告功能,则可能出现相互冲突的情形,从而暴露用户的真实呈现状态,泄露用户隐私。

发明内容

本发明提供一种处理即时消息报告的方法,以避免即时消息报告与即时消息接收方的呈现状态相冲突。具体包括:

一种处理即时消息报告的方法,包括:

接收第二终端发向第一终端的即时消息报告;

获取第二终端的呈现状态;

判断第二终端的呈现状态为离线;

保存所述发向第一终端的即时消息报告。

一种处理即时消息的方法,包括:

接收第一终端发向第二终端的即时消息,所述即时消息中包含递送报告请求;

获取第二终端的呈现状态;

判断第二终端的呈现状态为离线;

保存所述第一终端发向第二终端的即时消息。

一种处理即时消息报告的方法,包括:

根据即时消息中的递送报告请求,生成发向第一终端的即时消息报告;

获取第二终端的呈现状态;

判断第二终端的呈现状态为离线;

保存所述发向第一终端的即时消息报告。

一种消息服务器,包括:

接收模块:用于接收发向第一终端的即时消息报告;

判断模块:用于判断第二终端的呈现状态为离线,保存所述发向第一终端即时消息报告。

一种消息服务器,包括:

接收模块:用于接收发向第二终端的即时消息;

判断模块:用于判断第二终端的呈现状态为离线,保存所述发向第二终端的即时消息。

一种终端,包括,

消息模块:用于根据接收到的第一终端发送来的即时消息中的递送报告请求,生成发向第一终端的即时消息报告;

判断模块:用于判断自身的呈现状态为离线,保存所述发向第一终端的即时消息报告。

本发明协调了即时消息报告的递送和呈现状态,避免了即时消息报告暴露用户的真实在线状态,从而保护了用户的隐私,保证用户的业务体验。

附图说明

图1为本发明实施例一种处理即时消息报告方法的流程图;

图2为本发明实施例一种处理即时消息方法的流程图;

图3为本发明实施例一种处理即时消息报告方法的流程图;

图4为本发明实施例一种消息服务器的结构图;

图5为本发明一种终端的结构图;

具体实施方式

为了使本技术领域的人员更好地理解本发明,下面结合附图对本发明作进一步的详细说明。

附图1为本发明由消息服务器处理即时消息报告方法的实施例,其中,

步骤101:第二终端向消息服务器发送业务注册消息,消息服务器将可以向第二终端提供业务服务,例如:转发第一终端向第二终端发送的即时消息,保存第二终端向第一终端发送的即时消息报告,在本发明的一个实施例中消息服务器还可以在自身存储的信息中存储终端的呈现状态,例如:终端为“隐身”、“在线”、“离线”、“请勿打扰”等。

步骤102:第二终端向呈现服务器发送其自身的呈现状态,所述呈现状态可以包括隐身、离线、在线、请勿打扰等,以上所述“隐身”、“离线”、“请勿打扰”等呈现状态,包括:用户设置的第二终端处于无法或不愿意收发即时消息的状态,其具体表达方式可以是采用其它类似的描述,如:关闭、不可达等,在本发明中实施例中统一用“离线”表示;以上所述“在线”,包括:用户设置的第二终端处于可以或愿意收发即时消息的状态,其具体表达方式可以是采用其它类似的描述,如:打开、可达、已连接等,本发明实施例中统一用“在线”表示。

还可以在呈现状态中进一步设置仅对部分用户的呈现状态,例如对本实施例中第一终端的呈现状态为离线等,对其他终端的呈现状态为在线等。本步骤中第二终端向呈现服务器发送的呈现状态为离线。

步骤102a,102b:步骤102中第二终端向呈现服务器发送其自身的呈现状态,也可以通过步骤102a,102b实现,其中步骤102a为第二终端向消息服务器发送呈现状态设置消息,请求消息服务器在呈现服务器中设置其呈现状态为离线。步骤102b中,消息服务器通知呈现服务器第二终端的呈现状态为离线。在本发明的另一个实施例中,消息服务器此时还可以保存所述第二终端的呈现状态。

步骤103:第一终端向呈现服务器订阅第二终端的呈现状态,可以通过SIP协议实现,例如通过发送SIP SUBSCRIBE请求向呈现服务器订阅第二终端的呈现状态。

步骤104:呈现服务器向第一终端反馈第二终端的呈现状态,可以通过SIP协议实现,例如通过向第一终端发送SIPNOTIFY请求向第一终端反馈第二终端的呈现状态。由于在步骤102中第二终端设置的呈现状态为离线,表示第二终端处于无法或不愿意收发即时消息的状态。呈现服务器向第一终端反馈的第二终端的呈现状态应该为离线,表示第二终端目前处于不可以收到来自第一终端即时消息的状态。

步骤105:第一终端通过消息服务器向第二终端发送即时消息,该即时消息首先到达消息服务器。并且在该即时消息中携带有递送报告请求,请求第二终端在收到所述即时消息后反馈即时消息报告,例如:反馈其是否收到所述的即时消息,是否阅读所述的即时消息等。

步骤106:消息服务器直接向第二终端转发所述即时消息。

步骤107:第二终端收到所述即时消息后根据消息中的递送报告请求,向消息服务器反馈成功收到即时消息的即时消息报告。

步骤108:消息服务器在收到所述的即时消息报告后判断第二终端当前的呈现状态,该步骤中消息服务器可以从呈现服务器获取第二终端的呈现状态,比如:通过SIP SUBSCRIBE请求订阅,或通过HTTP GET请求获取所述第二终端的呈现状态。在本发明的另一个实施例中也可以根据自身储存的第二终端的呈现状态进行判断。此时对应于以上第二终端设置的呈现状态为离线,其判断的结果也为离线。根据判断的结果,消息服务器将不会向第一终端发送所述的即时消息报告,消息服务器还可以进一步缓存保存所述的即时消息报告,以便在第二终端呈现状态更新为在线时,向所述第一终端发送。在本发明的另一个实施例中,该步骤中消息服务器还可以进一步判断保存的即时消息报告是否过期,如果已经过期,可以将所述的即时消息报告丢弃也可以将所述的即时消息报告修改为表示发送或阅读失败的失败即时消息报告,并将此失败即时消息报告发送给第一终端。

步骤109:第二终端直接请求呈现服务器更新其呈现状态为在线。

步骤109a,109b:步骤109中第二终端直接请求呈现服务器更新其呈现状态也可以通过步骤109a,109b完成,其中步骤109a为第二终端向消息服务器发送呈现状态更新消息,请求其在呈现服务器中更新所述第二终端的呈现状态为在线。步骤109b中,消息服务器通知呈现服务器第二终端的呈现状态更新为“在线”。在本发明的另外一个实施例中此时消息服务器中原先存储的第二终端的呈现状态也更新为“在线”。

步骤110:由于第一终端在步骤103中订阅了第二终端的呈现状态,呈现服务器向第一终端反馈第二终端的呈现状态,对应于步骤109中第二终端更新的呈现状态为在线,本步骤中呈现服务器向第一终端反馈的第二终端的呈现状态也为在线。

步骤111:消息服务器判断第二终端的呈现状态,该判断可以是呈现服务器定期向消息服务器反馈第二终端的呈现状态,也可以是由消息服务器定期从呈现服务器获取第二终端的呈现状态,比如:消息服务器通过SIP SUBSCRIBE请求向呈现服务器订阅了第二终端的呈现状态,呈现服务器会将第二终端的呈现状态定期反馈给消息服务器。又比如:消息服务器通过HTTP GET请求从呈现服务器主动获取所述第二终端的呈现状态。在本发明的另一个实施例中也可以根据自身储存的信息中的第二终端的呈现状态进行判断。此时对应于以上第二终端更新后的呈现状态为在线,其判断的结果也为在线。由于其判断的结果为在线,消息服务器进一步将上述保存的即时消息报告发送给第一终端。

附图2为本发明由消息服务器处理即时消息的方法的实施例,其中:

步骤201:第二终端向消息服务器发送业务注册消息。其具体过程与上述步骤101中的描述相同。

步骤202:第二终端向呈现服务器发送其自身的呈现状态,也可以通过步骤202a,202b实现,其具体过程与上述步骤102中的描述相同。

步骤203:第一终端向呈现服务器订阅第二终端的呈现状态,其具体过程与上述步骤103中的描述相同。

步骤204:呈现服务器向第一终端反馈第二终端的呈现状态,其具体过程与上述步骤104中的描述相同。

步骤205:第一终端通过消息服务器向第二终端发送即时消息,该即时消息首先到达消息服务器。并且在即时消息中携带有递送报告请求,请求第二终端在收到所述即时消息后反馈即时消息报告,例如:反馈其是否收到所述的即时消息,是否阅读所述的即时消息等。

步骤206:消息服务器收到上述第一终端向第二终端发送的携带有递送报告请求的即时消息。消息服务器可以首先判断第二终端的呈现状态,该判断可以是呈现服务器定期向消息服务器反馈第二终端的呈现状态,也可以是由消息服务器从呈现服务器获取第二终端的呈现状态,比如:消息服务器通过SIPSUBSCRIBE请求向呈现服务器订阅了第二终端的呈现状态,呈现服务器会将第二终端的呈现状态定期反馈给消息服务器。又比如:消息服务器通过HTTP GET请求从呈现服务器主动获取所述第二终端的呈现状态。在本发明的另一个实施例中也可以根据自身储存的信息中的第二终端的呈现状态进行判断。若第二终端的呈现状态为离线则先保存所述即时消息,等到第二终端的呈现状态更新为在线时再向第二终端发送所述的即时消息。在本发明的另一个实施例中,该步骤中消息服务器还可以进一步判断保存的即时消息是否过期,如果已经过期,可以将所述的即时消息丢弃,还可以进一步生成表示发送或阅读失败的失败即时消息报告,并将此失败即时消息报告发送给第一终端。

步骤207:第二终端直接请求呈现服务器更新其呈现状态为在线。

步骤207a,步骤207b:步骤207中第二终端直接请求呈现服务器更新其呈现状态也可以通过步骤207a,207b完成,其具体过程与步骤109a,109b中的描述相同。

步骤208:由于第一终端在步骤203中订阅了第二终端的呈现状态,呈现服务器向第一终端反馈第二终端的呈现状态,对应于步骤207中第二终端更新的呈现状态为在线,本步骤中呈现服务器向第一终端反馈的第二终端的呈现状态也为在线。

步骤209:消息服务器判断第二终端的呈现状态,该判断可以是呈现服务器定期向消息服务器反馈第二终端的呈现状态,也可以是由消息服务器定期从呈现服务器获取第二终端的呈现状态,比如:消息服务器通过SIP SUBSCRIBE请求向呈现服务器订阅了第二终端的呈现状态,呈现服务器会将第二终端的呈现状态定期反馈给消息服务器。又比如:消息服务器通过HTTP GET请求从呈现服务器主动获取所述第二终端的呈现状态。在本发明的另一个实施例中也可以根据自身储存的信息中的第二终端的呈现状态进行判断。此时对应于以上第二终端更新后的呈现状态为在线,其判断的结果也为在线。消息服务器进一步将上述保存的即时消息发送给第二终端。

步骤210:第二终端收到消息服务器转发的由第一终端发来的上述即时消息,分析出即时消息中携带有递送报告请求,请求第二终端在收到所述即时消息后反馈即时消息报告。第二终端生成即时消息报告并通过消息服务器转发给第一终端,告知第一终端其已经收到第一终端向其发送的即时消息或已经阅读第一终端向其发送的即时消息。

以上附图2提供的实施例通过消息服务器对即时消息的处理,实现了第二终端向第一终端发送的即时消息报告同第二终端的呈现状态相一致。

附图3为本发明由第二终端处理即时消息报告方法的实施例,其中:

步骤301:第二终端向消息服务器发送业务注册消息。其具体过程与上述步骤101中的描述相同。

步骤302:第二终端向呈现服务器发送其自身的呈现状态,也可以通过步骤302a,302b实现,其具体过程与上述步骤102中的描述相同。

步骤303:第一终端向呈现服务器订阅第二终端的呈现状态,其具体过程与上述步骤103中的描述相同。

步骤304:呈现服务器向第一终端反馈第二终端的呈现状态,其具体过程与上述步骤104中的描述相同。

步骤305:第一终端通过消息服务器向第二终端发送即时消息,该即时消息首先到达消息服务器。并且在即时消息中携带有递送报告请求,请求第二终端在收到所述即时消息后反馈即时消息报告,例如:反馈其是否收到所述的即时消息,是否阅读所述的即时消息等。

步骤306:消息服务器向第二终端转发所述即时消息。

步骤307:第二终端在收到所述的即时消息后,解析出即时消息中携带有递送报告请求,请求第二终端在收到所述即时消息后反馈即时消息报告,告知第一终端其是否收到或阅读所述的即时消息。第二终端根据上述请求生成并保存即时消息报告。本步骤中也可以先保存所述的即时消息,生成即时消息报告可以在步骤308中第二终端的呈现状态更新为“在线”以后执行。第二终端进一步判断其自身当前的呈现状态。本步骤中第二终端可以从呈现服务器获取第二终端的呈现状态,对于大多数情况来说第二终端的呈现状态对其自身来说是已知的,也可以通过第二终端其自身存储信息中得到第二终端的呈现状态。此时对应于以上第二终端设置的呈现状态为离线,其判断的结果也为离线,第二终端将不向第一终端反馈所述即时消息报告,进一步保存所述即时消息报告。在本发明另一个实施例中,本步骤中第二终端还可以进一步判断保存的即时消息报告是否过期,如果已经过期,则丢弃所述的即时消息报告,或进一步将所述生成的即时消息报告更改为表示递送或阅读失败的失败即时消息报告,并发送给第一终端。

步骤308:第二终端请求呈现服务器更新其呈现状态为在线。在本发明的另一个实施例中第二终端自身存储信息中的呈现状态也同时更新为在线。

步骤308a,308b:步骤308中第二终端请求呈现服务器更新其呈现状态也可以通过步骤308a,308b完成,其中步骤308a为第二终端向消息服务器发送呈现状态更新消息,请求其在呈现服务器中更新所述第二终端的呈现状态为在线。步骤308b中,消息服务器通知呈现服务器第二终端的呈现状态更新为在线。在本发明的另外一个实施例中此时消息服务器中原先存储的第二终端的呈现状态也更新为在线。

步骤309:呈现服务器向第一终端反馈第二终端的呈现状态更新为在线。

步骤310:第二终端呈现状态更新为在线后,若在步骤307中,第二终端生成并保存了所述即时消息报告,此时第二终端将该即时消息报告通过消息服务器反馈到所述第一终端;若在步骤307中,第二终端未生成或未保存所述即时消息报告,则生成相应的即时消息报告,并通过消息服务器反馈到所述第一终端。

图4为本发明实施例提供的一种消息服务器400的结构图,用于实施本发明所述即时消息报告和/或即时消息的处理方法,具体包括:接收模块401,判断模块402,其中:

接收模块401:用于接收由第二终端发向第一终端的即时消息报告;在本发明的另一个实施例中该模块可以用于接收由第一终端发向第二终端的即时消息;

判断模块402:用于判断第二终端的呈现状态,第二终端的呈现状态为离线,保存所述由第二终端发向第一终端即时消息报告。该模块还可以进一步用于判断保存的由第二终端发向第一终端即时消息报告已经过期,丢弃所述的即时报告或将所述的即时消息报告修改为表示递送或阅读失败的失败即时消息报告并发送给所述第一终端。在本发明的另一个实施例中该模块可以用于判断第二终端的呈现状态为离线,保存由第一终端发向第二终端的即时消息,该模块还可以进一步用于判断所述保存的由第一终端发向第二终端的即时消息已经过期,生成失败即时消息报告并发送给所述第一终端。

在本发明另外的实施例中,消息服务器400还可以包括,发送模块403。

发送模块403:用于根据第二终端的呈现状态,将第二终端向第一终端反馈的即时消息报告发送给第一终端,例如当第二终端的呈现状态为在线时将第二终端向第一终端反馈的即时消息报告发送给第一终端;在本发明的另一个实施例中,该模块还可以用于根据第二终端的呈现状态,将即时消息发送给第二终端,例如第二终端的呈现状态为“在线”时,将第一终端向第二终端发送的即时消息转发给第二终端。

图5为本发明一种终端500的结构图,用于实施本发明所述即时消息报告的处理方法,具体包括:消息模块501,判断模块502。其中:

消息模块501:用于接收即时消息接收第一终端发送来的即时消息,该即时消息中携带递送报告请求,该模块根据此递送报告请求生成发向第一终端的即时消息报告;在本发明另一个实施例中,该模块还用于根据判断自身的呈现状态为在线,将所述发向第一终端的即时消息报告发送给所述第一终端。例如自身的呈现状态为“在线”时向第一客户端发送即时消息报告;

判断模块502:用于判断自身的呈现状态为离线,保存消息模块501生成的发向第一终端的即时消息报告。在本发明另外一个实施例中该模块还用于判断保存的发向第一终端的即时消息报告已经过期,丢弃所述保存的发向第一终端的即时消息报告,或将所述保存的发向第一终端的即时消息报告修改为表示发送或阅读失败的失败即时消息报告并发送给所述第一终端。

通过以上实施例的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得移动设备(可以是手机,个人计算机,媒体播放器等)执行本发明各个实施例所述的方法。这里所称的存储介质,如:ROM/RAM、磁盘、光盘等。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号