CN108574622A - 一种基于xmpp的即时消息处理方法及装置 - Google Patents

一种基于xmpp的即时消息处理方法及装置 Download PDF

Info

Publication number
CN108574622A
CN108574622A CN201710142611.3A CN201710142611A CN108574622A CN 108574622 A CN108574622 A CN 108574622A CN 201710142611 A CN201710142611 A CN 201710142611A CN 108574622 A CN108574622 A CN 108574622A
Authority
CN
China
Prior art keywords
extended field
value
group members
client
status 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
Application number
CN201710142611.3A
Other languages
English (en)
Other versions
CN108574622B (zh
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.)
China Mobile Communications Group Co Ltd
China Mobile Hangzhou Information Technology Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Hangzhou Information Technology 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 China Mobile Communications Group Co Ltd, China Mobile Hangzhou Information Technology Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN201710142611.3A priority Critical patent/CN108574622B/zh
Publication of CN108574622A publication Critical patent/CN108574622A/zh
Application granted granted Critical
Publication of CN108574622B publication Critical patent/CN108574622B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/185Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2475Traffic characterised by specific attributes, e.g. priority or QoS for supporting traffic characterised by the type of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/26Special purpose or proprietary protocols or architectures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及通信领域,尤其涉及一种基于XMPP的即时消息处理方法及装置,该方法为,客户端接收到群聊消息时,从群聊消息中解析出XMPP中预设的扩展字段的取值;其中,预设的扩展字段,用于标识群成员状态的变化;客户端将解析出的预设的扩展字段的取值与当前保存的扩展字段的取值进行比较,当确定不同时,确定群成员状态发生了变化;客户端向服务器请求群成员状态信息,并根据服务器返回的群成员状态信息,更新本地保存的群成员状态信息,这样,改变即时消息的推送方式,由服务器被动推送变换为客户端按需拉取,可以有效减少冗余消息的发送,减少服务器的发送压力,降低了网络负载流量,能够有效提高基于XMPP的通信系统的健壮性。

Description

一种基于XMPP的即时消息处理方法及装置
技术领域
本发明涉及通信领域,尤其涉及一种基于XMPP的即时消息处理方法及装置。
背景技术
可扩展通讯和表示协议(Extensible Messaging and Presence Protocol,XMPP)是一种以可扩展标记语言(Extensible Markup Language,XML)为基础的开放式即时通讯协议,可用于服务类实时通讯、表示和需求响应服务中的XML数据元流式传输,凭借其巨大的灵活性和开放性在即时通讯市场上占有了很大的份额。
即时消息(Instant Messaging,IM)以其快速高效等的特点,广泛应用于人们的生活、工作中。现有的IM工具,例如有QQ、飞秋、微信等,都具有群聊或讨论组等功能,当群聊或讨论组中成员发生变化时,现有技术中,大部分IM工具都是通过XMPP协议扩展,服务器进行群成员变化的广播通知,例如,增加、删除或修改群成员等。
但是,现有技术中,基于XMPP的即时消息的推送,每当群成员状态发生变化,服务器会向群中所有成员推送消息,这会带来大量冗余消息,消耗客户端性能、流量,增加服务器并发数量要求和部署成本。例如,如果是300人的群,每次(1s)有成员变化,均需要通过XMPP服务,推送300个更新到客户端,如果在群建立初期,更新会更加频繁,每秒都会产生成员变化,给服务器带来发送压力。
发明内容
本发明实施例提供一种基于XMPP的即时消息处理方法及装置,以解决现有技术中基于XMPP的即时消息的发送会带来大量冗余消息的问题。
本发明实施例提供的具体技术方案如下:
一种基于XMPP的即时消息处理方法,包括:
客户端接收到群聊消息时,从所述群聊消息中解析出XMPP中预设的扩展字段的取值;其中,所述预设的扩展字段,用于标识群成员状态的变化;
客户端将解析出的预设的扩展字段的取值与当前保存的扩展字段的取值进行比较,当确定不同时,确定群成员状态发生了变化;
客户端向服务器请求群成员状态信息,并根据服务器返回的群成员状态信息,更新本地保存的群成员状态信息。
本发明实施例中,客户端接收到群聊消息时,从所述群聊消息中解析出XMPP中预设的扩展字段的取值;其中,所述预设的扩展字段,用于标识群成员状态的变化;客户端将解析出的预设的扩展字段的取值与当前保存的扩展字段的取值进行比较,当确定不同时,确定群成员状态发生了变化;客户端向服务器请求群成员状态信息,并根据服务器返回的群成员状态信息,更新本地保存的群成员状态信息,这样,改变即时消息的推送方式,由服务器被动推送变换为客户端按需拉取,更加灵活,可以有效减少冗余消息的发送,减少了服务器的发送压力,也降低了网络负载流量,能够有效提高基于XMPP的通信系统的健壮性。
较佳的,客户端向服务器请求群成员状态信息之前,进一步包括:
确定所述客户端对应的用户在线。
较佳的,所示预设的扩展字段的取值,是服务器确定群成员状态变化时,采用预设的更新方式,进行更新的。
较佳的,客户端将解析出的预设的扩展字段的取值与当前保存的扩展字段的取值进行比较,当确定不同时,进一步包括:
客户端将当前保存的扩展字段的取值更新为解析出的预设的扩展字段的取值。
一种基于XMPP的即时消息处理方法,包括:
服务器确定向客户端发送群聊消息时,通过所述群聊消息,将可扩展通讯和表示协议XMPP中预设的扩展字段的取值发送给客户端;其中,所述预设的扩展字段,用于标识群成员状态的变化;
服务器接收客户端发送的群成员状态信息请求;其中,所述群成员状态信息请求,是客户端确定所述预设的扩展字段的取值与当前保存的扩展字段的取值不同后发送的;
服务器向客户端返回群成员状态信息,以使客户端根据所述群成员状态信息,更新本地保存的群成员状态信息。
本发明实施例中,服务器确定向客户端发送群聊消息时,通过所述群聊消息,将XMPP中预设的扩展字段的取值发送给客户端;其中,所述预设的扩展字段,用于标识群成员状态的变化;服务器接收客户端发送的群成员状态信息请求;其中,所述群成员状态信息请求,是客户端确定所述预设的扩展字段的取值与当前保存的扩展字段的取值不同后发送的;服务器向客户端返回群成员状态信息,以使客户端根据所述群成员状态信息,更新本地保存的群成员状态信息,这样,改变即时消息的推送方式,由服务器被动推送变换为客户端按需拉取,更加灵活,可以有效减少冗余消息的发送,减少了服务器的发送压力,也降低了网络负载流量,能够有效提高基于XMPP的通信系统的健壮性。
一种基于XMPP的即时消息处理装置,包括:
解析单元,用于接收到群聊消息时,从所述群聊消息中解析出XMPP中预设的扩展字段的取值;其中,所述预设的扩展字段,用于标识群成员状态的变化;
比较单元,用于将解析出的预设的扩展字段的取值与当前保存的扩展字段的取值进行比较,当确定不同时,确定群成员状态发生了变化;
处理单元,用于向服务器请求群成员状态信息,并根据服务器返回的群成员状态信息,更新本地保存的群成员状态信息。
本发明实施例中,客户端接收到群聊消息时,从所述群聊消息中解析出XMPP中预设的扩展字段的取值;其中,所述预设的扩展字段,用于标识群成员状态的变化;客户端将解析出的预设的扩展字段的取值与当前保存的扩展字段的取值进行比较,当确定不同时,确定群成员状态发生了变化;客户端向服务器请求群成员状态信息,并根据服务器返回的群成员状态信息,更新本地保存的群成员状态信息,这样,改变即时消息的推送方式,由服务器被动推送变换为客户端按需拉取,更加灵活,可以有效减少冗余消息的发送,减少了服务器的发送压力,也降低了网络负载流量,能够有效提高基于XMPP的通信系统的健壮性。
较佳的,向服务器请求群成员状态信息之前,进一步包括:
确定单元,用于确定所述装置对应的用户在线。
较佳的,所示预设的扩展字段的取值,是服务器确定群成员状态变化时,采用预设的更新方式,进行更新的。
较佳的,将解析出的预设的扩展字段的取值与当前保存的扩展字段的取值进行比较,当确定不同时,进一步包括:
更新单元,用于将当前保存的扩展字段的取值更新为解析出的预设的扩展字段的取值。
一种基于XMPP的即时消息处理装置,包括:
第一发送单元,用于确定向客户端发送群聊消息时,通过所述群聊消息,将可扩展通讯和表示协议XMPP中预设的扩展字段的取值发送给客户端;其中,所述预设的扩展字段,用于标识群成员状态的变化;
接收单元,用于接收客户端发送的群成员状态信息请求;其中,所述群成员状态信息请求,是客户端确定所述预设的扩展字段的取值与当前保存的扩展字段的取值不同后发送的;
第二发送单元,用于向客户端返回群成员状态信息,以使客户端根据所述群成员状态信息,更新本地保存的群成员状态信息。
本发明实施例中,服务器确定向客户端发送群聊消息时,通过所述群聊消息,将XMPP中预设的扩展字段的取值发送给客户端;其中,所述预设的扩展字段,用于标识群成员状态的变化;服务器接收客户端发送的群成员状态信息请求;其中,所述群成员状态信息请求,是客户端确定所述预设的扩展字段的取值与当前保存的扩展字段的取值不同后发送的;服务器向客户端返回群成员状态信息,以使客户端根据所述群成员状态信息,更新本地保存的群成员状态信息,这样,改变即时消息的推送方式,由服务器被动推送变换为客户端按需拉取,更加灵活,可以有效减少冗余消息的发送,减少了服务器的发送压力,也降低了网络负载流量,能够有效提高基于XMPP的通信系统的健壮性。
附图说明
图1为本发明实施例中,客户端侧的基于XMPP的即时消息处理方法概述流程图;
图2为本发明实施例中,服务器侧的基于XMPP的即时消息处理方法概述流程图;
图3为本发明实施例中,基于XMPP的即时消息处理方法详细流程图;
图4为本发明实施例中,客户端侧的基于XMPP的即时消息处理装置结构示意图;
图5为本发明实施例中,服务器侧的基于XMPP的即时消息处理装置结构示意。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,并不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了解决现有技术中基于XMPP的即时消息的发送会带来大量冗余消息的问题,本发明实施例中,当群成员状态变化时,服务器修改XMPP中预设的扩展字段的取值,并将该扩展字段的取值,通过群聊消息发送给客户端,客户端将接收到的扩展字段的取值与当前保存的扩展字段的取值,进行比较,不相同时,确定群成员状态发生了变化,并根据实际需求,向服务器请求群成员状态信息,进而更新群成员状态。
下面通过具体实施例对本发明方案进行详细描述,当然,本发明并不限于以下实施例。
参阅图1所示,本发明实施例中,客户端侧的基于XMPP的即时消息处理方法的具体流程如下:
步骤100:客户端接收到群聊消息时,从所述群聊消息中解析出XMPP中预设的扩展字段的取值;其中,所述预设的扩展字段,用于标识群成员状态的变化。
目前,即时消息的APP,例如微信、QQ、飞秋等,即时消息的推送大部分都基于XMPP协议,实现XMPP客户端和XMPP服务器之间的IM交互。当群成员状态变化时,包括群成员的增加、退出、在线、离线等状态,服务器均需同时向群中每一个成员的客户端发送即时消息,更新频繁时,会有大量冗余消息,增加了服务器压力,本发明实施例主要针对群组或讨论组中群成员状态变化时,即时消息的推送,改变推送方式,减少冗余消息。
当然本发明实施例的方法,并不仅限于应用于群成员变化的场景,也可以应用到其它即时消息的推送场景中。
也就是说,客户端接收到群聊消息,可以知道预设的扩展字段的取值。
进一步地,客户端会将解析出的扩展字段的取值进行保存,以便后续进行比较判断。
执行步骤100之前,进一步包括:
首先,服务器确定群成员状态变化时,更新XMPP中预设的扩展字段的取值。
其中,上述预设的扩展字段,例如扩展state字段,当然不限于state,用户可以根据实际情况进行自定义其它扩展字段。
具体为:服务器确定群成员状态变化时,采用预设的更新方式,更新上述预设的扩展字段的取值。
其中,预设的更新方式,例如为将扩展字段的取值加1。也就是说,在每次群成员状态发生变化时,依次增加预设的扩展字段的取值,当然,本发明实施例中,并不仅限于该方法,目的是为了区别群成员状态。
然后,服务器将上述预设的扩展字段的取值,通过群聊消息发送给客户端。
具体地,可以在XMPP的群聊消息中扩展state字段,用于标识群成员的状态,本发明实施例中,将预设的扩展字段的取值通过普通的群聊消息携带发送给客户端,不需要专门的定义其它消息,更加简单方便。
当然,若群成员状态无变化,服务器就无需更新扩展字段的取值,仍将当前的扩展字段的取值,通过群聊消息发送给客户端即可,并且,建群初始状态时,可以先设定state的初始值,例如,令state=0,之后当群成员状态变化时,可以根据预设的更新方式,更新state的取值。
步骤110:客户端将解析出的预设的扩展字段的取值与当前保存的扩展字段的取值进行比较,当确定不同时,确定群成员状态发生了变化。
执行步骤110时,具体包括:
首先,客户端将解析出的预设的扩展字段的取值与当前保存的扩展字段的取值进行比较。
本发明实施例中,客户端当前保存的该扩展字段的取值为客户端保存的最新的取值,客户端可以根据扩展字段取值的变化,来确定群成员状态是否发生了变化。
然后,当确定不同时,确定群成员状态发生了变化。
例如,该客户端当前保存的state=2,解析出的state=3,客户端确定state的取值发生了变化,即确定群成员状态发生了变化。
进一步地,客户端更新扩展字段的取值,客户端将当前保存的扩展字段的取值更新为解析出的预设的扩展字段的取值。
这样,客户端通过对扩展字段的取值的比较,当确定不同时,再根据实际需求,决定是否向服务器发送群成员状态信息,减少了无用的网络请求。
步骤120:客户端向服务器请求群成员状态信息,并根据服务器返回的群成员状态信息,更新本地保存的群成员状态信息。
执行步骤120时,具体包括:
首先,客户端向服务器请求群成员状态信息。
进一步地,客户端当确定该客户端对应的用户在线时,向服务器请求群成员状态信息。
并且,客户端确定所述客户端对应用户离线时,不向服务器请求群成员状态信息。
也就是说,客户端可以根据实际需求,决定是否请求群成员状态信息,进而服务器无需被动向所有客户端直接推送即时消息,而是根据客户端的需求进行推送,减少了服务器瞬时发送数据的压力。
然后,客户端接收服务器返回的群成员状态信息。
最后,客户端根据服务器返回的群成员状态信息,更新本地保存群成员状态信息。
例如,某个群组有100个群成员,其中40个群成员在线,另60个群成员不在线。当该群组中有新群成员加入时,不是直接同时向这100个群成员对应的客户端发送即时消息,而是服务器更新state的取值,当确定该群组中有群聊消息时,通过该群聊消息将state的取值发送给这100个群成员的客户端,这100个客户端根据比较结果,确定群成员状态发生了变化,但不是都会同时向服务器请求群成员状态信息,例如,对于不在线的群成员的客户端,可能就不需要立即更新群成员状态,对于需要更新的客户端,才会向服务器发送群成员状态信息请求,服务器只需对发送请求的客户端发送群成员状态信息。
这样,改变即时消息的推送方式,由服务器被动推送变换为客户端按需拉取,更加灵活,可以有效减少冗余消息的发送,减少了服务器的发送压力,也降低了网络负载流量,能够有效提高基于XMPP的通信系统的健壮性。
参阅图2所示,本发明实施例中,服务器侧的基于XMPP的即时消息处理方法的具体流程如下:
步骤200:服务器确定向客户端发送群聊消息时,通过所述群聊消息,将XMPP中预设的扩展字段的取值发送给客户端;其中,所述预设的扩展字段,用于标识群成员状态的变化。
步骤210:服务器接收客户端发送的群成员状态信息请求;其中,所述群成员状态信息请求,是客户端确定所述预设的扩展字段的取值与当前保存的扩展字段的取值不同后发送的。
步骤220:服务器向客户端返回群成员状态信息,以使客户端根据所述群成员状态信息,更新本地保存的群成员状态信息。
值得说明的是,本发明实施例中,服务器侧与终端侧的基于XMPP的即时消息处理方法是一一对应的,这里就不再进行赘述了。
下面采用一个具体的应用场景对上述实施例作出进一步详细说明。具体参阅图3所示,以初始建群开始为例,进行说明,本发明实施例中,基于XMPP的即时消息处理方法的执行过程具体如下:
步骤300:服务器建立群初始状态,令state=0。
步骤301:服务器确定群成员状态发生变化。
步骤302:服务器更新state的取值,令state++。
步骤303:服务器确定产生群聊消息时,将state的取值通过群聊消息发送给客户端,此时state=1。
步骤304:客户端接收到群聊消息时,解析出state的取值,并保存state=1。
步骤305:服务器确定群成员状态发生变化。
步骤306:服务器更新state的取值,令state++。
步骤307:服务器确定产生群聊消息时,将state的取值通过群聊消息发送给客户端,此时state=2。
步骤308:客户端将接收到的state的取值与当前保存的state的取值进行比较,确定不相同,并确定群成员状态发生了变化,以及更新state取值,保存state=2。
步骤309:客户端向服务器请求群成员状态信息。
步骤310:服务器发送最新的群成员状态信息给该客户端。
步骤311:客户端更新本地保存的群成员状态信息。
基于上述实施例,参阅图4所示,本发明实施例中,客户端侧的基于XMPP的即时消息处理装置,具体包括:
解析单元40,用于接收到群聊消息时,从所述群聊消息中解析出XMPP中预设的扩展字段的取值;其中,所述预设的扩展字段,用于标识群成员状态的变化;
比较单元41,用于将解析出的预设的扩展字段的取值与当前保存的扩展字段的取值进行比较,当确定不同时,确定群成员状态发生了变化;
处理单元42,用于向服务器请求群成员状态信息,并根据服务器返回的群成员状态信息,更新本地保存的群成员状态信息。
较佳的,向服务器请求群成员状态信息之前,进一步包括:
确定单元43,用于确定所述装置对应的用户在线。
较佳的,所示预设的扩展字段的取值,是服务器确定群成员状态变化时,采用预设的更新方式,进行更新的。
较佳的,将解析出的预设的扩展字段的取值与当前保存的扩展字段的取值进行比较,当确定不同时,进一步包括:
更新单元44,用于将当前保存的扩展字段的取值更新为解析出的预设的扩展字段的取值。
基于上述实施例,参阅图5所示,本发明实施例中,服务器侧的基于XMPP的即时消息处理装置,具体包括:
第一发送单元50,用于确定向客户端发送群聊消息时,通过所述群聊消息,将XMPP中预设的扩展字段的取值发送给客户端;其中,所述预设的扩展字段,用于标识群成员状态的变化;
接收单元51,用于接收客户端发送的群成员状态信息请求;其中,所述群成员状态信息请求,是客户端确定所述预设的扩展字段的取值与当前保存的扩展字段的取值不同后发送的;
第二发送单元52,用于向客户端返回群成员状态信息,以使客户端根据所述群成员状态信息,更新本地保存的群成员状态信息。
综上所述,本发明实施例中,客户端接收到群聊消息时,从所述群聊消息中解析出XMPP中预设的扩展字段的取值;其中,所述预设的扩展字段,用于标识群成员状态的变化;客户端将解析出的预设的扩展字段的取值与当前保存的预设的扩展字段的取值进行比较,当确定不同时,确定群成员状态发生了变化;客户端向服务器请求群成员状态信息,并根据服务器返回的群成员状态信息,更新群成员状态,这样,改变即时消息的推送方式,由服务器被动推送变换为客户端按需拉取,更加灵活,可以有效减少冗余消息的发送,减少了服务器的发送压力,也降低了网络负载流量,能够有效提高基于XMPP的通信系统的健壮性。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.一种基于XMPP的即时消息处理方法,其特征在于,包括:
客户端接收到群聊消息时,从所述群聊消息中解析出可扩展通讯和表示协议XMPP中预设的扩展字段的取值;其中,所述预设的扩展字段,用于标识群成员状态的变化;
客户端将解析出的预设的扩展字段的取值与当前保存的扩展字段的取值进行比较,当确定不同时,确定群成员状态发生了变化;
客户端向服务器请求群成员状态信息,并根据服务器返回的群成员状态信息,更新本地保存的群成员状态信息。
2.如权利要求1所述的方法,其特征在于,客户端向服务器请求群成员状态信息之前,进一步包括:
确定所述客户端对应的用户在线。
3.如权利要求1或2所述的方法,其特征在于,所示预设的扩展字段的取值,是服务器确定群成员状态变化时,采用预设的更新方式,进行更新的。
4.如权利要求1或2所述的方法,其特征在于,客户端将解析出的预设的扩展字段的取值与当前保存的扩展字段的取值进行比较,当确定不同时,进一步包括:
客户端将当前保存的扩展字段的取值更新为解析出的预设的扩展字段的取值。
5.一种基于XMPP的即时消息处理方法,其特征在于,包括:
服务器确定向客户端发送群聊消息时,通过所述群聊消息,将可扩展通讯和表示协议XMPP中预设的扩展字段的取值发送给客户端;其中,所述预设的扩展字段,用于标识群成员状态的变化;
服务器接收客户端发送的群成员状态信息请求;其中,所述群成员状态信息请求,是客户端确定所述预设的扩展字段的取值与当前保存的扩展字段的取值不同后发送的;
服务器向客户端返回群成员状态信息,以使客户端根据所述群成员状态信息,更新本地保存的群成员状态信息。
6.一种基于XMPP的即时消息处理装置,其特征在于,包括:
解析单元,用于接收到群聊消息时,从所述群聊消息中解析出可扩展通讯和表示协议XMPP中预设的扩展字段的取值;其中,所述预设的扩展字段,用于标识群成员状态的变化;
比较单元,用于将解析出的预设的扩展字段的取值与当前保存的扩展字段的取值进行比较,当确定不同时,确定群成员状态发生了变化;
处理单元,用于向服务器请求群成员状态信息,并根据服务器返回的群成员状态信息,更新本地保存的群成员状态信息。
7.如权利要求6所述的装置,其特征在于,向服务器请求群成员状态信息之前,进一步包括:
确定单元,用于确定所述装置对应的用户在线。
8.如权利要求6或7所述的装置,其特征在于,所示预设的扩展字段的取值,是服务器确定群成员状态变化时,采用预设的更新方式,进行更新的。
9.如权利要求6或7所述的装置,其特征在于,将解析出的预设的扩展字段的取值与当前保存的扩展字段的取值进行比较,当确定不同时,进一步包括:
更新单元,用于将当前保存的扩展字段的取值更新为解析出的预设的扩展字段的取值。
10.一种基于XMPP的即时消息处理装置,其特征在于,包括:
第一发送单元,用于确定向客户端发送群聊消息时,通过所述群聊消息,将可扩展通讯和表示协议XMPP中预设的扩展字段的取值发送给客户端;其中,所述预设的扩展字段,用于标识群成员状态的变化;
接收单元,用于接收客户端发送的群成员状态信息请求;其中,所述群成员状态信息请求,是客户端确定所述预设的扩展字段的取值与当前保存的扩展字段的取值不同后发送的;
第二发送单元,用于向客户端返回群成员状态信息,以使客户端根据所述群成员状态信息,更新本地保存的群成员状态信息。
CN201710142611.3A 2017-03-10 2017-03-10 一种基于xmpp的即时消息处理方法及装置 Active CN108574622B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710142611.3A CN108574622B (zh) 2017-03-10 2017-03-10 一种基于xmpp的即时消息处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710142611.3A CN108574622B (zh) 2017-03-10 2017-03-10 一种基于xmpp的即时消息处理方法及装置

Publications (2)

Publication Number Publication Date
CN108574622A true CN108574622A (zh) 2018-09-25
CN108574622B CN108574622B (zh) 2020-12-22

Family

ID=63577252

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710142611.3A Active CN108574622B (zh) 2017-03-10 2017-03-10 一种基于xmpp的即时消息处理方法及装置

Country Status (1)

Country Link
CN (1) CN108574622B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113268177A (zh) * 2020-02-14 2021-08-17 钉钉控股(开曼)有限公司 消息状态的确定方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101090371A (zh) * 2006-06-14 2007-12-19 阿里巴巴公司 一种即时通讯系统中用户信息管理的方法及系统
CN101141334A (zh) * 2006-09-06 2008-03-12 腾讯科技(深圳)有限公司 一种在即时通讯群组中公告信息的系统及实现方法
CN101146051A (zh) * 2007-11-07 2008-03-19 腾讯科技(深圳)有限公司 一种企业级即时通信互联系统及其实现企业互联的方法
CN102299810A (zh) * 2011-09-29 2011-12-28 北京新媒传信科技有限公司 群组变更事件的通知方法和系统
US20160248823A1 (en) * 2015-02-24 2016-08-25 Investcloud Inc Messaging protocol

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101090371A (zh) * 2006-06-14 2007-12-19 阿里巴巴公司 一种即时通讯系统中用户信息管理的方法及系统
CN101141334A (zh) * 2006-09-06 2008-03-12 腾讯科技(深圳)有限公司 一种在即时通讯群组中公告信息的系统及实现方法
CN101146051A (zh) * 2007-11-07 2008-03-19 腾讯科技(深圳)有限公司 一种企业级即时通信互联系统及其实现企业互联的方法
CN102299810A (zh) * 2011-09-29 2011-12-28 北京新媒传信科技有限公司 群组变更事件的通知方法和系统
US20160248823A1 (en) * 2015-02-24 2016-08-25 Investcloud Inc Messaging protocol

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113268177A (zh) * 2020-02-14 2021-08-17 钉钉控股(开曼)有限公司 消息状态的确定方法及装置

Also Published As

Publication number Publication date
CN108574622B (zh) 2020-12-22

Similar Documents

Publication Publication Date Title
US10834031B2 (en) Information exchange method, client, and apparatus
CN110391974A (zh) 一种消息同步方法、服务端、终端及系统
US9009245B2 (en) Messenger client and method for updating messages in messenger client
CN112583931A (zh) 消息处理方法、消息中间件、电子设备和存储介质
CN109151056B (zh) 基于Canal的消息推送方法和系统
CN109766201A (zh) 任务分发方法、服务器、客户端和系统
CN113256095B (zh) 可拖拽配置的敏捷流程服务构建方法、系统、设备及介质
CN110198335A (zh) 消息同步方法及装置、电子设备及存储介质
CN109792403A (zh) 联网消息传递系统中的时移通信
CN112382294A (zh) 语音识别方法、装置、电子设备和存储介质
CN111782229A (zh) 一种小程序启动方法、装置及电子设备
CN106411713B (zh) 一种状态通知方法及服务器
CN106657172A (zh) 一种信息推送的实现方法及装置
CN113779422A (zh) 关系链标签的实现方法、装置、电子设备及存储介质
CN108574622A (zh) 一种基于xmpp的即时消息处理方法及装置
CN111194540A (zh) 多主题对话的通信控制装置和方法、及计算机处理设备
KR101950001B1 (ko) 게임 어플리케이션 이외의 어플리케이션을 통한 제어에 기초하여 게임 서비스를 제공하는 서버 및 방법
CN108600004B (zh) 一种视频服务器配置管理方法及系统
CN115865974A (zh) 边缘设备、云端设备、边缘计算系统及方法和存储介质
CN113079382B (zh) 消息传输方法、装置、设备、系统和存储介质
CN113742004B (zh) 一种基于flink框架的数据处理方法和装置
CN114218300A (zh) 数据处理方法和装置、系统、电子设备、计算机可读介质
CN105933352B (zh) 基于客户端的服务器之间数据同步方法、客户端及系统
CN114553548A (zh) 通信方法、装置、设备及存储介质
CN114546444A (zh) 车辆升级方法、装置、电子设备、介质及自动驾驶车辆

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant