CN113794622A - 消息处理方法、装置、电子设备及存储介质 - Google Patents
消息处理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113794622A CN113794622A CN202110945508.9A CN202110945508A CN113794622A CN 113794622 A CN113794622 A CN 113794622A CN 202110945508 A CN202110945508 A CN 202110945508A CN 113794622 A CN113794622 A CN 113794622A
- Authority
- CN
- China
- Prior art keywords
- message
- target message
- target
- state
- messages
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
- H04L51/043—Real-time or near real-time messaging, e.g. instant messaging [IM] using or handling presence information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/07—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
- H04L51/10—Multimedia information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Mobile Radio Communication Systems (AREA)
- Communication Control (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
本公开关于一种消息处理方法、装置、电子设备及存储介质,其中,消息处理方法包括:从数据库的重试数据表中依次获取目标消息,其中,目标消息为由于网络原因导致未成功发送的消息,重试数据表用于存储全部处于发送中状态的消息;在满足预设网络要求的情况下,在消息表中查询目标消息的目标消息状态,基于目标消息状态重发目标消息,其中,消息表用于存储全部消息的消息状态。该方法至少可以解决相关技术中消息重发成功率低的问题。
Description
技术领域
本公开涉及即时通信领域,尤其涉及一种消息处理方法、装置、电子设备及存储介质。
背景技术
即时通讯是指两人或多人使用网络实时地传递文字、文件、语音、视频等消息。即时通讯对于消息实时性的要求很高。
相关技术中,当发送端的网络环境较差,或者处于没有网络时,即时通讯应用程序对于消息的处理方式通常是:1,让消息在一段时间内处于等待状态,在时间内如果网络恢复,则自动发送该等待消息,在时间段过后,显示消息发送失败;2,让消息始终处于等待状态,在网络恢复后自动重发该消息,即使重启应用程序依旧无法改变消息等待状态。
而在用户对相关消息对象的操作因当前网络环境为弱网甚至无网而失败时,常在网络环境恢复有网甚至强网时,开启对该相关消息对象的重试操作,因此会对该相关消息对象进行缓存,从而在网络环境恢复后基于此缓存自动重试。然而,在网络环境恢复之前,即时通信产品可能出现重启情形,缓存数据丢失进而不再重试。由此向用户返回操作失败通知,引导用户手动重试。上述相关技术的方案存在自动重试的成功概率低、需要用户手动重试体验差的问题。
发明内容
本公开提供一种消息处理方法、装置、电子设备及存储介质,以至少解决相关技术中消息重发造成的消息自动重发的成功率低的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种消息处理方法,包括从数据库的重试数据表中依次获取目标消息,其中,上述目标消息为网络原因导致未成功发送的消息,上述重试数据表用于存储全部处于发送中状态的消息;在满足预设网络要求的情况下,在消息表中查询上述目标消息的目标消息状态,基于上述目标消息状态重发上述目标消息,其中,上述消息表用于存储全部消息的消息状态。
可选地,上述在消息表中查询上述目标消息的目标消息状态包括:在上述消息表中未查找到上述目标消息的情况下,从上述重试数据表中移除上述目标消息。
可选地,上述基于上述目标消息状态重发上述目标消息包括:在上述目标消息状态中的消息发送状态为发送中状态的情况下,获取上述目标消息的资源上传状态,其中,上述目标消息状态包括上述消息发送状态和上述资源上传状态;基于上述资源上传状态重发上述目标消息,其中,上述资源上传状态用于指示上述目标消息的消息资源上传至服务器的状态。
可选地,上述基于上述资源上传状态重发上述目标消息包括:在上述资源上传状态指示上述目标消息的消息资源未上传至上述服务器的情况下,移除上述重试数据表中的上述目标消息;在上述资源上传状态指示上述目标消息的消息资源已上传至上述服务器的情况下,重发上述目标消息。
可选地,上述基于上述目标消息状态重发上述目标消息包括:获取上述目标消息的属性状态,其中,上述目标消息状态包括上述属性状态,上述属性状态包括重发次数和上述重试数据表中上述目标消息的存储时长;在上述重发次数小于预设次数阈值且上述存储时长小于预设时间阈值的情况下,重发上述目标消息;在上述重发次数大于等于上述预设次数阈值或上述存储时长大于等于上述预设时间阈值的情况下,移除上述重试数据表中的上述目标消息。
可选地,在获取上述目标消息的属性状态之后,上述方法还包括:在上述服务器中查找上述目标消息;在上述服务器中未查找到上述目标消息的情况下,确认重发上述目标消息;在上述服务器中查找到上述目标消息的情况下,移除上述重试数据表中的上述目标消息。
可选地,上述基于上述目标消息状态重发上述目标消息包括:获取上述目标消息的发送类型信息,其中,上述发送类型信息包括:直接发送或者转发;按照上述发送类型信息,重发上述目标消息。
可选地,上述基于上述目标消息状态重发上述目标消息包括:获取指示批量发送的多个目标消息;批量重发上述多个目标消息。
可选地,在基于上述目标消息状态重发上述目标消息之后,上述方法还包括:移除上述重试数据表中的上述目标消息;将上述消息表的上述目标消息的消息发送状态更新为已发送状态。
根据本公开实施例的第二方面,提供一种消息处理装置,包括获取单元,用于从数据库的重试数据表中依次获取目标消息,其中,上述目标消息为由于网络原因导致未成功发送的消息,上述重试数据表用于存储全部处于发送中状态的消息;重发单元,用于在满足预设网络要求的情况下,在消息表中查询上述目标消息的目标消息状态,基于上述目标消息状态重发上述目标消息,其中,上述消息表用于存储全部消息的消息状态。
根据本发明实施例的第三方面,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述消息处理方法。
根据本发明实施例的第四方面,还提供了一种计算机程序产品,包括计算机程序/指令,上述计算机程序/指令被处理器执行时实现上述消息处理方法。
根据本发明实施例的第五方面,还提供了一种电子设备,包括存储器和处理器,上述存储器中存储有计算机程序,上述处理器被设置为通过所述计算机程序执行上述的消息处理方法。
在本申请实施例中,采用重试数据表中记录因网络原因未发送成功的目标消息,在满足消息发送的网络要求的情况下,从消息表中查询目标消息的目标消息状态,根据目标消息状态进行目标消息的重发的方式,通过利用重试数据表记录因网络原因未发送成功的目标消息,而去除非网络原因导致的未成功发送的消息,只对因网络原因为成功发送的消息在满足网络要求的情况下,按照目标消息状态重发目标消息,达到了根据目标消息的消息状态对目标消息进行重发,从而提高目标消息的重发成功率目的,从而实现了提高消息自动重发的成功率的技术效果,进而解决了消息自动重发的成功率低的技术问题。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种消息处理方法的流程图。
图2是根据一示例性实施例示出的一种消息处理方法的流程图。
图3是根据一示例性实施例示出的一种消息处理方法的流程图。
图4是根据一示例性实施例示出的一种消息处理方法的流程图。
图5是根据一示例性实施例示出的一种消息处理装置的框图。
图6是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的一种消息处理方法的流程图,如图1所示,消息处理方法用于即时通讯环境中,包括以下步骤。
在步骤S11中,从数据库的重试数据表中依次获取目标消息,其中,目标消息为网络原因导致未成功发送的消息,重试数据表用于存储全部处于发送中状态的消息;
在步骤S12中,在满足预设网络要求的情况下,在消息表中查询目标消息的目标消息状态,基于目标消息状态重发目标消息,其中,消息表用于存储全部消息的消息状态。
可选地,即时通讯环境中消息的发送流程不限于如图2所示。S21,创建待发送消息。待发送消息可以是在目标终端中运行的目标客户端的消息输入界面中输入的消息。目标客户端可以是具备即时通讯功能的客户端,不限于是视频客户端、即时通信客户端、浏览器客户端、教育客户端等。可以包括但不限于以下至少之一:手机(如Android手机、IOS手机等)、笔记本电脑、平板电脑、掌上电脑、MID(Mobile Internet Devices,移动互联网设备)、PAD、台式电脑、智能电视等。消息输入界面是支持即时通讯功能的输入界面,例如,包含消息输入控件的界面。消息可以但不限于是:文字,图片,表情,音频,视频以及以上任意形式的结合。
S22,消息预处理。对待发送的消息进行预处理,例如音频和视频的转码,图片压缩等。在预处理完成后,执行S23,资源上传。将预处理完成的资源上传至服务器。这里是目标终端与服务器之间基于待发送消息的资源交互。在资源上传完成的情况下,执行S24,发送。通过服务器将待发送消息发送给接收终端,进行目标终端与接收终端之间的消息交互。发送消息之后,执行S25,确认发送结果。消息发送结果分为发送成功和发送失败。
可选地,发送失败原因不限于包括网络原因和非网络原因。非网络原因不限于是权限策略原因,例如没有与接收终端中登录的账号进行消息交互的权限,所发送的消息不符合发送要求等。
可选地,消息发送失败原因的确认不限于是在消息发送失败的情况下返回的错误码确定。以错误码是数字码为例,在数字小于0零的情况下,确定是网络原因导致的发送失败,在数字介于100至200之间,确定是消息权限导致的发送失败。
可选地,消息发送结果显示在消息显示界面中。在消息发送失败的情况下,显示失败标志,例如感叹号。
可选地,目标消息的获取可以但不限于通过重试数据表获取。重试数据表用于记录因网络原因未发送成功的消息。重试数据表的结构不限于如表1所示:
表1
字段名称 | 字段类型 | 字段说明 |
retryKey | TEXT(字符串) | 消息标识 |
retryCount | INT(整型) | 消息发送次数 |
createTimestamp | INT(整型) | 消息发送时间 |
需要说明的是,上述表格中的消息发送时间可以是消息首次发送的时间。
可选地,重试数据表的应用可以但不限于如图3所示。在S21创建待发送消息之后,执行S31,将待发送消息保存至重试数据表中。在S25确认发送结果之后,在发送结果指示消息发送成功或者非网络原因导致的发送失败的情况下,执行S32,将重试数据表中记录的待发送消息移除。在发送结果指示消息网络原因导致的发送失败的情况下,执行S33,保留重试数据表中的待发送消息。
可选地,重试数据表中记录的消息为目标消息。重试数据表保存在目标终端中,以避免因目标客户端的重启导致重试数据表中数据的丢失。
可选地,预设网络要求不限于是客户端所在的终端设备的网络强度超过预设网络强度阈值。在终端设备的实时网络强度超度预设网络强度阈值的情况下,确定满足预设网络要求。网络强度的监控可以但不限于是通过目标终端或目标客户端的网络测速功能确定。预定网络强度是与消息类型和消息数据量无关,可以满足消息成功发送的网络强度。
在本申请实施例中,采用重试数据表中记录因网络原因未发送成功的目标消息,在满足消息发送的网络要求的情况下,从消息表中查询目标消息的目标消息状态,根据目标消息状态进行目标消息的重发的方式,通过利用重试数据表记录因网络原因未发送成功的目标消息,而去除非网络原因导致的未成功发送的消息,只对因网络原因为成功发送的消息在满足网络要求的情况下,按照目标消息状态重发目标消息,达到了根据目标消息的消息状态对目标消息进行重发,从而提高目标消息的重发成功率目的,从而实现了提高消息自动重发的成功率的技术效果,进而解决了消息自动重发的成功率低的技术问题。
作为一种可选的实施方式,在消息表中查询目标消息的目标消息状态包括:在消息表中未查找到目标消息的情况下,从重试数据表中移除目标消息。
可选地,目标消息的消息状态可以但不限于通过查询消息表获取。消息表是用于记录消息状态的数据表。消息的属性消息不限于包括:消息数据,消息标识,消息发送状态,资源上传状态,属性状态,发送类型信息。
可选地,查询消息表获取目标消息的目标消息状态可以但不限于是获取重试数据表中目标消息的消息标识,根据目标消息的消息标识在消息表中查找目标消息的目标消息状态。
可选地,在消息表中未查找到与目标消息的消息标识匹配的消息的情况下,确定目标消息未存在在消息中,不限于是目标消息已经被删除。在目标消息已经被删除的情况下,不对目标消息执行重发,并删除重试数据表中目标消息的消息标识。
通过在消息表中查询目标消息是否存在,对目标消息进行确认,将消息表中被删除的消息从目标消息中剔除,确保重试数据表中记录的消息是当前因网络原因未成功发送的消息,避免重试数据表中记录的消息不准确以及未及时移除,而重发目标消息导致的重发失败,同时造成网络资源的浪费。
作为一种可选的实施方式,基于目标消息状态重发目标消息,包括:
在目标消息状态中的消息发送状态为发送中状态的情况下,获取目标消息的资源上传状态,其中,目标消息状态包括消息发送状态和资源上传状态;
基于资源上传状态重发目标消息,其中,资源上传状态用于指示目标消息的消息资源上传至服务器的状态。
可选地,目标消息的消息发送状态可以但不限于通过查询消息表获取。获取重试数据表中目标消息的消息标识,根据目标消息的消息标识在消息表中查找目标消息的消息发送状态。
可选地,消息发送状态可以但不限于包括:发送中,已发送。发送中表征目标消息未被成功发送,已发送表征目标消息被成功发送。
可选地,每次对目标消息执行发送操作(包括重发操作)之后,更新目标消息的消息发送状态。在当前目标消息的发送次数计数不为1,也就是目标消息处于重发流程或再次重发流程中,获取目标消息更新后的消息发送状态。在目标消息的更新后的消息发送状态为发送中的情况下,确定目标消息处于未成功发送的状态。
可选地,目标消息的资源上传状态可以但不限于通过查询消息表获取。获取重试数据表中目标消息的消息标识,根据目标消息的消息标识在消息表中查找目标消息的资源上传状态。
可选地,目标消息的资源上传状态可以但不限于与目标消息的消息类型相关。消息类型不限于包括文字类型,图片类型,媒体数据类型。媒体数据类型包括音频数据,视频数据等。在消息类型是文字类型的情况下,默认目标消息的资源上传状态是已上传至服务器的状态。
可选地,在消息类型是图片类型或媒体数据类型的情况下,通过确定目标消息是否上传至服务器确定目标消息的资源上传状态。在目标消息已经上传至服务器的情况下,确定目标消息的资源上传状态是已上传状态。在目标消息未上传至服务器的情况下,确定目标消息的资源上传状态是未上传状态。
可选地,目标消息的消息资源上传至服务器的情况下,更新消息表中资源上传状态值已上传状态。
通过获取目标消息更新后的消息发送状态,确定当前目标消息的最新的消息发送状态,避免因重试数据表更新不及时导致目标消息的消息发送状态的不准确,通过进一步保证目标消息是因网络原因,当前真正未成功发送的消息,提高消息重发的成功率。同时,获取目标消息的资源上传状态,基于消息重新发送是否需要将消息资源上传至服务器进行消息重发的判断,从而避免由于消息重发需要上传消息资源而占用的网络资源较多,会对首次发送的消息造成影响,从而影响正常消息的发送,导致的消息发送失败率增加的情况。同时避免重发消息由于消息资源上传导致的消息自动重发失败。
作为一种可选的实施方式,基于资源上传状态重发目标消息包括:在资源上传状态指示目标消息的消息资源未上传至服务器的情况下,移除重试数据表中的目标消息;在资源上传状态指示目标消息的消息资源已上传至服务器的情况下,重发目标消息。
可选地,在目标消息的消息资源未上传至服务器的情况下,如果重发目标消息,则需要将目标消息的消息资源上传至服务器。在目标消息的消息类型图片类型或媒体数据类型的情况下,消息资源的上传至服务器需要耗费较多的网络资源,消息资源的上传成功率不能保证,因此,会存在因目标消息因消息资源上传不成功而导致目标消息重发的失败。
通过对目标消息的消息资源上传状态进行确认,在消息资源上传状态指示已上传的情况下重发目标消息,保证了目标消息可以重发成功,从而提高目标消息的重发成功率。
作为一种可选的实施方式,在基于目标消息状态重发目标消息,包括:
获取目标消息的属性状态,其中,目标消息状态包括属性状态,属性状态包括重发次数和重试数据表中目标消息的存储时长;
在重发次数小于预设次数阈值且存储时长小于预设时间阈值的情况下,重发目标消息。
可选地,存储时长可以但不限于通过获取目标消息的发送时间计算得到。计算当前时间和发送时间的时间差作为目标消息的存储时长。
可选地,重发次数可以但不限于通过获取目标消息的发送次数获取。将发送次数减一作为目标消息的重发次数。
可选地,目标消息的发送时间和发送次数可以但不限于通过查询消息表获取。获取重试数据表中目标消息的消息标识,根据目标消息的消息标识在消息表中查找目标消息的发送时间和发送次数。消息表中记录的发送时间是目标消息首次发送的时间,发送次数是目标消息的全部发送次数。
可选地,在目标消息的存储时长小于预设时间阈值的情况下,重发目标消息。在目标消息的重发次数小于预定次数阈值的情况下,重发目标消息。在目标消息的存储时长未超过预设时间阈值且重发次数小于预设次数阈值的情况下,重发目标消息。
通过确定目标消息的存储时长和重发次数,以衡量目标消息的时效,将存储时长和重发次数超过预设标准的消息视为失去时效的消息,取消对失去时效的消息的重发,只重发具备时效性的目标消息,从而避免重发失去时效的消息所占用的网络资源,而导致消息重发的失败,从而提高消息重发的成功率。
作为一种可选的实施方式,在获取目标消息的属性状态之后,还包括:
在服务器中查找目标消息;
在服务器中未查找到目标消息的情况下,确认重发目标消息;
在服务器中查找到目标消息的情况下,移除重试数据表中的目标消息。
可选地,通过查找目标消息在服务器的存在状态,确认是否重发目标消息。在目标消息状态指示重发目标消息的情况下,在服务器中查找目标消息,用于指示目标消息是否已经通过服务器发送。已经通过服务器发送的消息均可以在服务器中查询到,服务器中存储有服务器已经发送的消息。在服务器已发送目标消息的情况下,可以在服务器中查找到目标消息,则目标消息是已经通过服务器成功发送,重试数据表中未及时移除,此时,移除重试数据表中的目标消息。在服务器未发送目标消息的情况下,服务器中没有保存目标消息,则目标消息当前仍处于未成功发送的状态,则重发目标消息。
通过在服务器中对目标消息进行查找,确认目标消息是否已经成功发送,既能避免因目标消息成功发送而重试数据表还未更新这段时间内目标消息的再次发送,又能避免因为目标终端的网络强度弱未接收到消息成功发送的反馈而造成的目标消息的再次发送,在对目标消息本身的属性信息进行筛选后,在重发之前,通过查询服务器对目标消息的状态再次进行确认,避免目标消息重复发送造成的网络资源的浪费,从而避免因网络资源占用而导致其他消息的重发失败,提高消息的重发成功率。
作为一种可选的实施方式,基于目标消息状态重发目标消息,包括:
获取目标消息的发送类型信息,其中,发送类型信息包括:直接发送或者转发;
根据发送类型信息,重发目标消息。
可选地,目标消息的发送类型信息可以但不限于通过查询消息表获取。获取重试数据表中目标消息的消息标识,根据目标消息的消息标识在消息表中查找目标消息的发送类型信息。发送类型信息用于指示消息的发送方式。消息的发送方式因消息查看权限可以分为:直接发送和转发。直接发送表示对于消息的发送形式不做限制,消息均可以被查看。转发表示消息因权限限制不能通过直接发送的形式被查看,只能通过转发的发送形式才可以被查看。
在重发消息时,确定消息的发送类型信息,按照发送类型信息指示的发送方式重发目标消息,避免了因发送形式不满足发送要求而导致的消息发送失败,提高消息重发成功率,从而避免消息多次重发造成的网络资源浪费,提高网络资源有效利用率。
作为一种可选的实施方式,重发目标消息,包括:
获取用于批量发送的多个目标消息;
批量重发多个目标消息。
可选地,批量重发是基于目标消息的发送时间建立目标消息的发送次序,按照发送次序发送多个目标消息。
通过批量重发可以保证目标消息的发送次序,避免单独重发目标消息导致的消息次序错乱,从而在重发消息的过程中,保证消息发送次序。
作为一种可选的实施方式,在基于目标消息状态重发目标消息之后,还包括:
移除重试数据表中的目标消息;
将消息表的目标消息的消息发送状态更新为已发送状态。
可选地,在重发目标消息且目标消息重发成功的情况下,移除重试数据表中的目标消息,同时更新消息表中,目标消息的消息发送状态,将消息发送状态由发送中更新为已发送。
可选地,目标消息的重发流程可以但不限于如图4所示。以长连接恢复作为网络强度达到预定网络要求为例,重发目标消息首先执行S401,确认长链接恢复。在长链接恢复的情况下,执行S402,获取重试数据表。在获取到重试数据表的情况下,执行S403,判断重试数据表是否存储数据。在判断为是,即重试数据表当前存储有数据的情况下,确定当前存在因网络原因未成功发送的消息。执行S404,在消息表中查询目标消息。根据重试数据表中的消息标识,在消息表中进行查询。执行S405,判断是否查询到目标消息。在判断为是,即在消息表中根据消息标识查询到目标消息的情况下,执行S406,判断消息发送状态是否为发送中。在判断为是,即目标消息的消息发送状态为发送中的情况下,执行S407,判断资源上传状态是否为已上传。在判断为是,即目标消息的资源上传状态为已上传,目标消息对应的消息资源已经上传至服务器中,执行S408,判断重发次数是否小于次数阈值。在判断为是,即目标消息的重发次数小于次数阈值的情况下,执行S409,判断存储时长是否小于时间阈值。在判断为是,即目标消息的首次发送时间与当前时间确定的存储时长小于预设时间阈值,则执行S410,判断服务器中是否未存在目标消息。在判断为是,即服务器当前未存储目标消息,目标消息为真正未发送成功的消息的情况下,执行S411,重发目标消息。在重发目标消息之后,执行S412,判断是否重发成功。在目标消息重发成功的情况下,执行S413,移除重试数据表中目标消息对应的数据。更新重试数据表,以保证重试数据表中存储的是未成功发送的消息。在目标消息重发不成功的情况下,执行S414,目标消息的发送次数+1。在消息表中将目标消息的发送次数更新,在原有发送次数+1,更新消息表。
图5是根据一示例性实施例示出的一种消息处理装置框图。参照图5,该装置包括获取单元501和重发单元502。
获取单元501,用于从数据库中的重试数据表中依次获取目标消息,其中,目标消息为由于网络原因导致未成功发送的消息,重试数据表用于存储全部处于发送中状态的消息;
重发单元502,用于在满足预设网络要求的情况下,在消息表中查询目标消息的目标消息状态,基于目标消息状态重发目标消息,其中,消息表用于存储全部消息的消息状态。
可选地,上述重发单元502包括:第一移除模块,用于在消息表中未查找到目标消息的情况下,从重试数据表中移除目标消息。
可选地,上述重发单元502包括:
第一获取模块,用于在目标消息状态中的消息发送状态为发送中状态的情况下,获取目标消息的资源上传状态,其中,目标消息状态包括消息发送状态和资源上传状态;
重发模块,用于基于资源上传状态重发目标消息,其中,资源上传状态用于指示目标消息的消息资源上传至服务器的状态。
可选地,上述重发模块包括:
第二移除模块,用于在资源上传状态指示目标消息的消息资源未上传至服务器的情况下,移除重试数据表中的目标消息;
第一重发模块,用于在资源上传状态指示目标消息的消息资源已上传至服务器的情况下,重发目标消息。
可选地,上述重发单元502包括:
第二获取模块,用于获取目标消息的属性状态,其中,目标消息状态包括属性状态,属性状态包括重发次数和重试数据表中目标消息的存储时长;
第二重发模块,用于在重发次数小于预设次数阈值且存储时长小于预设时间阈值的情况下,重发目标消息;
第三移除模块,用于在重发次数大于等于预设次数阈值或存储时间大于等于预设时间阈值的情况下,移除重试数据表中的目标消息。
可选地,上述消息处理装置还包括查询单元,用于在获取目标消息的属性状态之后,包括:
查找模块,用于在服务器中查找目标消息;
确认模块,用于在服务器中未查找到目标消息的情况下,确认重发目标消息;
第四移除模块,用于在服务器中查找到目标消息的情况下,移除重试数据表中的目标消息。
可选地,上述重发单元502包括:
第三获取模块,用于获取目标消息的发送类型信息,其中,发送类型信息包括:直接发送或者转发;
第三重发模块,用于按照发送类型信息,重发目标消息。
可选地,上述重发单元502包括:
第四获取模块,用于获取指示批量发送的多个目标消息;
批量模块,用于批量重发多个目标消息。
可选地,上述消息处理装置包括更新单元,用于在基于目标消息状态重发目标消息之后,包括:
第五移除模块,用于移除重试数据表中的目标消息;
更新模块,用于将消息表的目标消息的消息发送状态更新为已发送状态。
在本申请实施例中,采用重试数据表中记录因网络原因未发送成功的目标消息,在满足消息发送的网络要求的情况下,从消息表中查询目标消息的目标消息状态,根据目标消息状态进行目标消息的重发的方式,通过利用重试数据表记录因网络原因未发送成功的目标消息,而去除非网络原因导致的未成功发送的消息,只对因网络原因为成功发送的消息在满足网络要求的情况下,按照目标消息状态重发目标消息,达到了根据目标消息的消息状态对目标消息进行重发,从而提高目标消息的重发成功率目的,从而实现了提高消息自动重发的成功率的技术效果,进而解决了消息自动重发的成功率低的技术问题。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图6是根据一示例性实施例示出的一种用于实施上述消息处理方法的电子设备。该电子设备包括存储器602和处理器604,该存储器602中存储有计算机程序,该处理器604被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述电子设备可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,从数据库的重试数据表中依次获取目标消息,其中,目标消息为由于网络原因导致未成功发送的消息,重试数据表用于存储全部处于发送中状态的消息;
S2,在满足预设网络要求的情况下,在消息表中查询目标消息的目标消息状态,基于目标消息状态重发目标消息,其中,消息表用于存储全部消息的消息状态。
可选地,本领域普通技术人员可以理解,图6所示的结构仅为示意,电子设备也可以是智能手机(如Android手机、IOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图6其并不对上述电子设备的结构造成限定。例如,电子设备还可包括比图6中所示更多或者更少的组件(如网络接口等),或者具有与图6所示不同的配置。
其中,存储器602可用于存储软件程序以及模块,如本发明实施例中的消息处理方法和装置对应的程序指令/模块,处理器604通过运行存储在存储器602内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的消息处理方法。存储器602可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器602可进一步包括相对于处理器604远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器602具体可以但不限于用于存储目标消息等信息。作为一种示例,如图6所示,上述存储器602中可以但不限于包括上述消息处理装置中的获取单元502和重发单元504。此外,还可以包括但不限于上述消息处理装置中的其他模块单元,本示例中不再赘述。
可选地,上述的传输装置606用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置606包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置606为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
此外,上述电子设备还包括:显示器608,用于显示上述目标消息;和连接总线610,用于连接上述电子设备中的各个模块部件。
在其他实施例中,上述终端设备或者服务器可以是一个分布式系统中的一个节点,其中,该分布式系统可以为区块链系统,该区块链系统可以是由该多个节点通过网络通信的形式连接形成的分布式系统。其中,节点之间可以组成点对点(P2P,Peer To Peer)网络,任意形式的计算设备,比如服务器、终端等电子设备都可以通过加入该点对点网络而成为该区块链系统中的一个节点。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述消息处理方面的各种可选实现方式中提供的方法。其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述计算机可读的存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,从数据库的重试数据表中依次获取目标消息,其中,目标消息为由于网络原因导致未成功发送的消息,重试数据表用于存储全部处于发送中状态的消息;
S2,在满足预设网络要求的情况下,在消息表中查询目标消息的目标消息状态,基于目标消息状态重发目标消息,其中,消息表用于存储全部消息的消息状态。
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种消息处理方法,其特征在于,包括:
从数据库的重试数据表中依次获取目标消息,其中,所述目标消息为网络原因导致未成功发送的消息,所述重试数据表用于存储全部处于发送中状态的消息;
在满足预设网络要求的情况下,在消息表中查询所述目标消息的目标消息状态,基于所述目标消息状态重发所述目标消息,其中,所述消息表用于存储全部消息的消息状态。
2.根据权利要求1所述的方法,其特征在于,所述在消息表中查询所述目标消息的目标消息状态包括:在所述消息表中未查找到所述目标消息的情况下,从所述重试数据表中移除所述目标消息。
3.根据权利要求1所述的方法,其特征在于,所述基于所述目标消息状态重发所述目标消息包括:
在所述目标消息状态中的消息发送状态为发送中状态的情况下,获取所述目标消息的资源上传状态,其中,所述目标消息状态包括所述消息发送状态和所述资源上传状态;
基于所述资源上传状态重发所述目标消息,其中,所述资源上传状态用于指示所述目标消息的消息资源上传至服务器的状态。
4.根据权利要求3所述的方法,其特征在于,所述基于所述资源上传状态重发所述目标消息包括:
在所述资源上传状态指示所述目标消息的消息资源未上传至所述服务器的情况下,移除所述重试数据表中的所述目标消息;
在所述资源上传状态指示所述目标消息的消息资源已上传至所述服务器的情况下,重发所述目标消息。
5.根据权利要求3所述的方法,其特征在于,所述基于所述目标消息状态重发所述目标消息包括:
获取所述目标消息的属性状态,其中,所述目标消息状态包括所述属性状态,所述属性状态包括重发次数和所述重试数据表中所述目标消息的存储时长;
在所述重发次数小于预设次数阈值且所述存储时长小于预设时间阈值的情况下,重发所述目标消息;
在所述重发次数大于等于所述预设次数阈值或所述存储时长大于等于所述预设时间阈值的情况下,移除所述重试数据表中的所述目标消息。
6.根据权利要求5所述的方法,其特征在于,在获取所述目标消息的属性状态之后,所述方法还包括:
在所述服务器中查找所述目标消息;
在所述服务器中未查找到所述目标消息的情况下,确认重发所述目标消息;
在所述服务器中查找到所述目标消息的情况下,移除所述重试数据表中的所述目标消息。
7.根据权利要求6所述的方法,其特征在于,所述基于所述目标消息状态重发所述目标消息包括:
获取所述目标消息的发送类型信息,其中,所述发送类型信息包括:直接发送或者转发;
按照所述发送类型信息,重发所述目标消息。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的程序,所述程序运行时执行所述权利要求1至7任一项中所述的方法。
9.一种计算机程序产品,包括计算机程序/指令,其特征在于,所述计算机程序/指令被处理器执行时实现权利要求1至7任一项所述的方法。
10.一种电子设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至7任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110945508.9A CN113794622B (zh) | 2021-08-17 | 2021-08-17 | 消息处理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110945508.9A CN113794622B (zh) | 2021-08-17 | 2021-08-17 | 消息处理方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113794622A true CN113794622A (zh) | 2021-12-14 |
CN113794622B CN113794622B (zh) | 2023-03-24 |
Family
ID=78876151
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110945508.9A Active CN113794622B (zh) | 2021-08-17 | 2021-08-17 | 消息处理方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113794622B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114301860A (zh) * | 2021-12-20 | 2022-04-08 | 北京达佳互联信息技术有限公司 | 消息发送方法、装置、设备及存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003174470A (ja) * | 2001-09-28 | 2003-06-20 | Mitsubishi Electric Corp | データパケット送信装置、データパケット受信装置、データパケット伝送システムおよびデータパケット再送制御方法 |
CN105025066A (zh) * | 2014-04-30 | 2015-11-04 | 北京新媒传信科技有限公司 | 富文本动态消息发布方法、客户端、服务器和系统 |
CN106469558A (zh) * | 2015-08-21 | 2017-03-01 | 中兴通讯股份有限公司 | 语音识别方法及设备 |
US20170171295A1 (en) * | 2015-12-09 | 2017-06-15 | Synology Incorporated | File upload and download methods and associated server |
CN107528677A (zh) * | 2017-10-11 | 2017-12-29 | 杭州若联科技有限公司 | 信息发送失败缓冲方法以及装置 |
CN107864084A (zh) * | 2016-09-22 | 2018-03-30 | 腾讯科技(深圳)有限公司 | 数据包的传输方法和装置 |
CN109474688A (zh) * | 2018-11-27 | 2019-03-15 | 北京微播视界科技有限公司 | 即时通信网络请求消息的发送方法、装置、设备和介质 |
CN109660451A (zh) * | 2018-12-25 | 2019-04-19 | 北京云中融信网络科技有限公司 | 一种发送消息的方法、装置及消息收发系统 |
CN110704121A (zh) * | 2018-06-25 | 2020-01-17 | 北京嘀嘀无限科技发展有限公司 | 一种操作重试的方法、系统及计算机装置 |
CN111258776A (zh) * | 2020-01-09 | 2020-06-09 | 上海钧正网络科技有限公司 | 一种服务远程调用的容灾方法及设备 |
-
2021
- 2021-08-17 CN CN202110945508.9A patent/CN113794622B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003174470A (ja) * | 2001-09-28 | 2003-06-20 | Mitsubishi Electric Corp | データパケット送信装置、データパケット受信装置、データパケット伝送システムおよびデータパケット再送制御方法 |
CN105025066A (zh) * | 2014-04-30 | 2015-11-04 | 北京新媒传信科技有限公司 | 富文本动态消息发布方法、客户端、服务器和系统 |
CN106469558A (zh) * | 2015-08-21 | 2017-03-01 | 中兴通讯股份有限公司 | 语音识别方法及设备 |
US20170171295A1 (en) * | 2015-12-09 | 2017-06-15 | Synology Incorporated | File upload and download methods and associated server |
CN107864084A (zh) * | 2016-09-22 | 2018-03-30 | 腾讯科技(深圳)有限公司 | 数据包的传输方法和装置 |
CN107528677A (zh) * | 2017-10-11 | 2017-12-29 | 杭州若联科技有限公司 | 信息发送失败缓冲方法以及装置 |
CN110704121A (zh) * | 2018-06-25 | 2020-01-17 | 北京嘀嘀无限科技发展有限公司 | 一种操作重试的方法、系统及计算机装置 |
CN109474688A (zh) * | 2018-11-27 | 2019-03-15 | 北京微播视界科技有限公司 | 即时通信网络请求消息的发送方法、装置、设备和介质 |
CN109660451A (zh) * | 2018-12-25 | 2019-04-19 | 北京云中融信网络科技有限公司 | 一种发送消息的方法、装置及消息收发系统 |
CN111258776A (zh) * | 2020-01-09 | 2020-06-09 | 上海钧正网络科技有限公司 | 一种服务远程调用的容灾方法及设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114301860A (zh) * | 2021-12-20 | 2022-04-08 | 北京达佳互联信息技术有限公司 | 消息发送方法、装置、设备及存储介质 |
CN114301860B (zh) * | 2021-12-20 | 2023-09-26 | 北京达佳互联信息技术有限公司 | 消息发送方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113794622B (zh) | 2023-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109474688B (zh) | 即时通信网络请求消息的发送方法、装置、设备和介质 | |
CN109451032B (zh) | 一种消息传递系统 | |
US9753794B2 (en) | Method and apparatus for controlling sending of heartbeat signal | |
US10764228B1 (en) | Automated message recall from a sender's device | |
EP1655915A1 (en) | Method for managing duplicated arrival notification messages in multimedia messaging services | |
CN109547524B (zh) | 基于物联网的用户行为存储方法、装置、设备及存储介质 | |
KR20070059459A (ko) | 멀티미디어 메시징 자동 응답 서비스 방법 및 시스템 | |
CN111447248A (zh) | 一种文件传输的方法及装置 | |
CN110391974A (zh) | 一种消息同步方法、服务端、终端及系统 | |
CN102890631A (zh) | 基于持久化消息队列传输消息的方法及消息传输装置 | |
CN112887196B (zh) | 消息发送方法、系统、装置、设备及可读存储介质 | |
CN113391979A (zh) | 监控数据展示的处理方法、设备、系统及存储介质 | |
CN113794622B (zh) | 消息处理方法、装置、电子设备及存储介质 | |
US20150382166A1 (en) | Transmission of a multimedia message doubled with the transmission of a text message | |
CN109286671A (zh) | 物联网环境下订阅通知处理方法、装置、存储介质及设备 | |
JP2005530258A (ja) | クライアント・デバイスをサーバからリフレッシュする間に再同期化するためのシステムおよび方法 | |
WO2021087892A1 (zh) | 资源的订阅方法、设备及存储介质 | |
CN107786607B (zh) | 一种消息重传方法、消息重传服务器及用户设备 | |
CN110798349B (zh) | 一种配置分发、接收方法、设备及计算机可读存储介质 | |
CN112328560A (zh) | 一种文件调度方法和系统 | |
CN108696855B (zh) | 一种信息管理方法、会话管理功能和移动性管理功能 | |
CN111064674B (zh) | 数据的传输方法及装置、系统 | |
CN112468386B (zh) | 一种重复消息的处理方法及终端 | |
CN113810266B (zh) | 针对消息对象的重试操作方法、装置、设备及存储介质 | |
CN110233744B (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 |