CN110417644A - 即时通讯的消息发送方法及装置 - Google Patents
即时通讯的消息发送方法及装置 Download PDFInfo
- Publication number
- CN110417644A CN110417644A CN201910689088.5A CN201910689088A CN110417644A CN 110417644 A CN110417644 A CN 110417644A CN 201910689088 A CN201910689088 A CN 201910689088A CN 110417644 A CN110417644 A CN 110417644A
- Authority
- CN
- China
- Prior art keywords
- message
- instant messaging
- version number
- instant
- package
- 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
Links
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]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种即时通讯的消息发送方法及装置,方法包括:接收当前即时通讯中的一方发送的用于构成一条即时消息的多个消息包,其中,各个所述消息包分别对应预先设置的唯一的版本号;根据多个所述消息包各自对应的版本号确定所述即时消息中是否有消息包丢失,若是,则根据各个所述消息包各自对应的版本号确定丢失的消息包对应的目标版本号;向所述当前即时通讯中的一方发送包括目标版本号的丢包提示信息,以使所述当前即时通讯中的一方根据所述丢包提示信息中的目标版本号重新发送该目标版本号对应的消息包,本发明能够有效提高即时通讯的稳定性和准确性。
Description
技术领域
本发明涉及通信技术领域,具体涉及一种即时通讯的消息发送方法及装置。
背景技术
即时通讯(Instant messaging,简称IM)是一个终端服务,允许两人或多人使用网路即时的传递文字讯息、档案、语音与视频交流。即时通讯根据装载的对象又可分为手机即时通讯和PC即时通讯。
即时通讯一定逃避不了的话题就是投递可靠性。虽然当前的网络带宽比之前已经改良许多,在一定程度上增加了即时通讯的可靠性。
但是,由于即时通讯需要处理的数据量异常庞大,导致经常出现即时消息的丢失和遗漏的问题。
发明内容
针对现有技术中的问题,本发明提供一种即时通讯的消息发送方法及装置,能够提高即时通讯的稳定性和准确性。
为解决上述技术问题,本发明提供以下技术方案:
第一方面,本发明提供一种即时通讯的消息发送方法,包括:
接收当前即时通讯中的一方发送的用于构成一条即时消息的多个消息包,其中,各个所述消息包分别对应预先设置的唯一的版本号;
根据多个所述消息包各自对应的版本号确定所述即时消息中是否有消息包丢失,若是,则根据各个所述消息包各自对应的版本号确定丢失的消息包对应的目标版本号;
向所述当前即时通讯中的一方发送包括目标版本号的丢包提示信息,以使所述当前即时通讯中的一方根据所述丢包提示信息中的目标版本号重新发送该目标版本号对应的消息包。
其中,各个所述消息包各自对应的所述版本号是由即时通讯中的一方在发送的用于构成一条即时消息的多个消息包之前,添加至对应的各个所述消息包。
进一步的,还包括:接收即时通讯中的一方重新发送的目标版本号对应的消息包,并向即时通讯中的一方发送回执消息。
其中,所述回执消息的数据结构为:即时消息的编号和接收时间。
进一步的,还包括:在即时通讯时通过心跳机制的方式检测即时通讯中的双方之间的长链接。
进一步的,还包括:
读取发送即时消息的即时通讯中一方的发送时间,以所述发送时间作为该即时消息的接收时间。
其中,所述根据多个所述消息包各自对应的版本号确定所述即时消息中是否有消息包丢失,包括:
基于预设的排序方式对多个所述版本号进行排序;
将多个所述版本号排序后的序列与预设的序列进行对比,若多个所述版本号排序后的序列中元素丢失,则确定有消息包的丢失。
其中,所述消息包的数据结构包括:即时消息编号、消息发送者、消息接收者、消息内容和版本号。
第二方面,本发明提供一种即时通讯的消息发送装置,包括:
接收单元,用于接收当前即时通讯中的一方发送的用于构成一条即时消息的多个消息包,其中,各个所述消息包分别对应预先设置的唯一的版本号;
识别单元,用于根据多个所述消息包各自对应的版本号确定所述即时消息中是否有消息包丢失,若是,则根据各个所述消息包各自对应的版本号确定丢失的消息包对应的目标版本号;
反馈单元,用于向所述当前即时通讯中的一方发送包括目标版本号的丢包提示信息,以使所述当前即时通讯中的一方根据所述丢包提示信息中的目标版本号重新发送该目标版本号对应的消息包。
其中,各个所述消息包各自对应的所述版本号是由即时通讯中的一方在发送的用于构成一条即时消息的多个消息包之前,添加至对应的各个所述消息包。
进一步的,还包括:
回执单元,用于接收即时通讯中的一方重新发送的目标版本号对应的消息包,并向即时通讯中的一方发送回执消息。
其中,所述回执消息的数据结构为:即时消息的编号和接收时间。
进一步的,还包括:
检测单元,用于在即时通讯时通过心跳机制的方式检测即时通讯中的双方之间的长链接。
进一步的,还包括:
读取单元,用于读取发送即时消息的即时通讯中一方的发送时间,以所述发送时间作为该即时消息的接收时间。
其中,所述识别单元包括:
排序子单元,用于基于预设的排序方式对多个所述版本号进行排序;
对比子单元,用于将多个所述版本号排序后的序列与预设的序列进行对比,若多个所述版本号排序后的序列中元素丢失,则确定有消息包的丢失。
其中,所述消息包的数据结构包括:即时消息编号、消息发送者、消息接收者、消息内容和版本号。
第三方面,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述的即时通讯的消息发送方法的步骤。
第四方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的即时通讯的消息发送方法的步骤。
由上述技术方案可知,本发明提供一种即时通讯的消息发送方法及装置,通过接收当前即时通讯中的一方发送的用于构成一条即时消息的多个消息包,其中,各个所述消息包分别对应预先设置的唯一的版本号;根据多个所述消息包各自对应的版本号确定所述即时消息中是否有消息包丢失,若是,则根据各个所述消息包各自对应的版本号确定丢失的消息包对应的目标版本号;向所述当前即时通讯中的一方发送包括目标版本号的丢包提示信息,以使所述当前即时通讯中的一方根据所述丢包提示信息中的目标版本号重新发送该目标版本号对应的消息包,能够提高即时通讯的稳定性和准确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中的即时通讯的消息发送方法的第一种流程示意图。
图2为本发明实施例中的即时通讯的消息发送方法的第二种流程示意图。
图3为本发明实施例中的即时通讯的消息发送方法的第三种流程示意图。
图4为本发明实施例中的即时通讯的消息发送方法的第四种流程示意图。
图5为本发明实施例中的即时通讯的消息发送方法方法中步骤S102的流程示意图。
图6为本发明实施例中的即时通讯的消息发送装置的结构示意图。
图7为本发明实施例中的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供一种即时通讯的消息发送方法的实施例,参见图1,所述即时通讯的消息发送方法具体包含有如下内容:
S101:接收当前即时通讯中的一方发送的用于构成一条即时消息的多个消息包,其中,各个所述消息包分别对应预先设置的唯一的版本号;
可以理解的是,即时通讯是一个终端服务,允许两人或多人使用网路即时的传递文字讯息、档案、语音与视频交流。在本实施例中以两个人使用网路进行即时通讯为例进行说明。
在本步骤中,进行即时通讯的一方向另一方发送即时消息,该即时消息被分割为多个消息包进行传输,各个消息包在传输过程中,由时通讯中的发送即时消息的一方在发送多个消息包之前,对各个消息包添加各自对应的版本号,即,各个消息包各自对应的版本号是由即时通讯中的一方在发送的用于构成一条即时消息的多个消息包之前,添加至对应的各个所述消息包。
需要说明的是,各个消息包分别对应预先设置的唯一的版本号。
进一步的,在本实施例中,消息包的数据结构包括:即时消息编号、消息发送者、消息接收者、消息内容和版本号。
S102:根据多个所述消息包各自对应的版本号确定所述即时消息中是否有消息包丢失,若是,则根据各个所述消息包各自对应的版本号确定丢失的消息包对应的目标版本号;
在本步骤中,即时通讯中的发送即时消息的一方对各个消息包添加了版本号,即时通讯中接收即时消息的另一方就可以根据版本号确定是否发生版本号的丢失,版本号丢失则表明该丢失的版本号对应的消息包发生了丢失。
再具体实施是,可以将接收的版本号与即时通讯中接收即时消息的另一方自身存储的版本号进行对比,则可以确定是否发生版本号的丢失。
S103:向所述当前即时通讯中的一方发送包括目标版本号的丢包提示信息,以使所述当前即时通讯中的一方根据所述丢包提示信息中的目标版本号重新发送该目标版本号对应的消息包。
在本步骤中,根据步骤S102确定有消息包的丢失以及丢失的消息包对应的版本号,将该丢失的消息包对应的版本号设为目标版本号,并向进行即时通讯中发送即时消息的一方进行反馈,即向当前即时通讯中的一方发送包括目标版本号的丢包提示信息,以使得当前即时通讯中的一方根据所述丢包提示信息中的目标版本号重新发送该目标版本号对应的消息包,以此实现丢失消息包的找回,确定即时通讯中即时消息的准确性,进而提高即时通讯的稳定性和准确性。
从上述描述可知,本发明实施例提供的一种即时通讯的消息发送方法,通过接收当前即时通讯中的一方发送的用于构成一条即时消息的多个消息包,其中,各个所述消息包分别对应预先设置的唯一的版本号;根据多个所述消息包各自对应的版本号确定所述即时消息中是否有消息包丢失,若是,则根据各个所述消息包各自对应的版本号确定丢失的消息包对应的目标版本号;向所述当前即时通讯中的一方发送包括目标版本号的丢包提示信息,以使所述当前即时通讯中的一方根据所述丢包提示信息中的目标版本号重新发送该目标版本号对应的消息包,能够提高即时通讯的稳定性和准确性。
在上述实施例的基础上,参见图2,该即时通讯的消息发送方法的实施例还包括:
S104:接收即时通讯中的一方重新发送的目标版本号对应的消息包,并向即时通讯中的一方发送回执消息。
在本步骤中,当已经接收到即时通讯中发送即时消息的一方重新发送的目标版本号对应的消息包时,通过向即时通讯中发送即时消息的一方发送回执消息,能够使得即时通讯中发送即时消息的一方停止继续发送消息包,降低网络的数据流通,提高即时通讯的准确性和效率。
其中,在本实施例中,该回执消息的数据结构为:即时消息的编号和接收时间。
在上述实施例的基础上,参见图3,该即时通讯的消息发送方法的实施例还包括:
S105:在即时通讯时通过心跳机制的方式检测即时通讯中的双方之间的长链接。
可以理解的是,心跳机制是定时发送一个自定义的结构体(心跳包),让自身通信的对方知道自己还活着,以确保连接的有效性的机制。长连接是指在一个连接上可以连续发送多个数据包,在连接保持期间,如果没有数据包发送,需要双方发链路检测包。
在本步骤中,通过心跳机制来检测即时通讯中的双方之间的长链接,使得即时通讯中的双方之间能够持续进行通讯,避免即时通讯的双方重新建立通信的长链接,进而提高即时通讯的效率和消息收发速度,避免长时间的等待。
需要说明的是,若监测到在即时通讯的双方之中任意一方或两方结束即时通讯时,可以结束相应的心跳机制来结束检测即时通讯中的双方之间的长链接。
在上述实施例的基础上,参见图4,该即时通讯的消息发送方法的实施例还包括:
S106:读取发送即时消息的即时通讯中一方的发送时间,以所述发送时间作为该即时消息的接收时间。
在本步骤中,在进行即时通讯的双方或多方之间,接收及时消息时,是以发出该即时消息一方的发送时间作为该即时消息的接收时间。可以避免发送即时消息的一方在离线时发出的消息能够在恢复通信时准确的显示在接收即时消息一方,保障即时消息顺序的一致性,进而提高即时通讯的即时消息的完整性和顺序准确性。
在本发明的一实施例中,所述即时通讯的消息发送方法中的步骤S102中根据多个所述消息包各自对应的版本号确定所述即时消息中是否有消息包丢失,参见图5,具体包含有如下内容:
S201:基于预设的排序方式对多个所述版本号进行排序;
在本步骤中,在接收到多个消息包并确定多个消息包各自对应的版本号,将多个版本号按照预设的排序方式进行排序,形成一个序列。
需要说明的是,该预设的排序方式可以是按照版本号从小到大进行排列,也可以按版本号从大到小进行排列,也可以按照用户特定的排列方式进行排序。本发明实施例不对排序方式进行限制。
S202:将多个所述版本号排序后的序列与预设的序列进行对比,若多个所述版本号排序后的序列中元素丢失,则确定有消息包的丢失。
需要说明的是,预设的序列是预先存储的序列,该预存储的序列是未发生消息包丢失的所有消息包按照步骤S201中预设的排序方式进行排列得的序列。
在本步骤中,将多个版本号排序后的序列与即时通讯的即时消息接收方预存储的序列进行对比,即,将多个版本号排序后的序列中每个元素置于预存储的序列中相同的位置上,若预存储的序列中存在空缺的元素位置,则该空缺的元素位置即为丢失的元素,即该丢失元素的所对应的版本号为丢失的消息包对应的版本号。
本发明实施例提供一种能够实现所述即时通讯的消息发送方法中全部内容的即时通讯的消息发送装置的具体实施方式,参见图6,所述即时通讯的消息发送装置具体包括如下内容:
接收单元10,用于接收当前即时通讯中的一方发送的用于构成一条即时消息的多个消息包,其中,各个所述消息包分别对应预先设置的唯一的版本号;
识别单元20,用于根据多个所述消息包各自对应的版本号确定所述即时消息中是否有消息包丢失,若是,则根据各个所述消息包各自对应的版本号确定丢失的消息包对应的目标版本号;
反馈单元30,用于向所述当前即时通讯中的一方发送包括目标版本号的丢包提示信息,以使所述当前即时通讯中的一方根据所述丢包提示信息中的目标版本号重新发送该目标版本号对应的消息包。
其中,各个所述消息包各自对应的所述版本号是由即时通讯中的一方在发送的用于构成一条即时消息的多个消息包之前,添加至对应的各个所述消息包。
进一步的,还包括:
回执单元,用于接收即时通讯中的一方重新发送的目标版本号对应的消息包,并向即时通讯中的一方发送回执消息。
其中,所述回执消息的数据结构为:即时消息的编号和接收时间。
进一步的,还包括:
检测单元,用于在即时通讯时通过心跳机制的方式检测即时通讯中的双方之间的长链接。
进一步的,还包括:
读取单元,用于读取发送即时消息的即时通讯中一方的发送时间,以所述发送时间作为该即时消息的接收时间。
其中,所述识别单元包括:
排序子单元,用于基于预设的排序方式对多个所述版本号进行排序;
对比子单元,用于将多个所述版本号排序后的序列与预设的序列进行对比,若多个所述版本号排序后的序列中元素丢失,则确定有消息包的丢失。
其中,所述消息包的数据结构包括:即时消息编号、消息发送者、消息接收者、消息内容和版本号。
本发明提供的即时通讯的消息发送装置的实施例具体可以用于执行上述实施例中的即时通讯的消息发送方法的实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。
从上述描述可知,本发明实施例提供的即时通讯的消息发送装置,通过接收当前即时通讯中的一方发送的用于构成一条即时消息的多个消息包,其中,各个所述消息包分别对应预先设置的唯一的版本号;根据多个所述消息包各自对应的版本号确定所述即时消息中是否有消息包丢失,若是,则根据各个所述消息包各自对应的版本号确定丢失的消息包对应的目标版本号;向所述当前即时通讯中的一方发送包括目标版本号的丢包提示信息,以使所述当前即时通讯中的一方根据所述丢包提示信息中的目标版本号重新发送该目标版本号对应的消息包,能够提高即时通讯的稳定性和准确性。
本申请提供一种用于实现所述即时通讯的消息发送方法中的全部或部分内容的电子设备的实施例所述电子设备具体包含有如下内容:
处理器(processor)、存储器(memory)、通信接口(Communications Interface)和总线;其中,所述处理器、存储器、通信接口通过所述总线完成相互间的通信;所述通信接口用于实现相关设备之间的信息传输;该电子设备可以是台式计算机、平板电脑及移动终端等,本实施例不限于此。在本实施例中,该电子设备可以参照实施例用于实现所述即时通讯的消息发送方法的实施例及用于实现所述即时通讯的消息发送装置的实施例进行实施,其内容被合并于此,重复之处不再赘述。
图7为本申请实施例的电子设备9600的系统构成的示意框图。如图7所示,该电子设备9600可以包括中央处理器9100和存储器9140;存储器9140耦合到中央处理器9100。值得注意的是,该图7是示例性的;还可以使用其他类型的结构,来补充或代替该结构,以实现电信功能或其他功能。
一实施例中,即时通讯的消息发送功能可以被集成到中央处理器9100中。其中,中央处理器9100可以被配置为进行如下控制:接收当前即时通讯中的一方发送的用于构成一条即时消息的多个消息包,其中,各个所述消息包分别对应预先设置的唯一的版本号;根据多个所述消息包各自对应的版本号确定所述即时消息中是否有消息包丢失,若是,则根据各个所述消息包各自对应的版本号确定丢失的消息包对应的目标版本号;向所述当前即时通讯中的一方发送包括目标版本号的丢包提示信息,以使所述当前即时通讯中的一方根据所述丢包提示信息中的目标版本号重新发送该目标版本号对应的消息包。
从上述描述可知,本申请的实施例提供的电子设备,通过接收当前即时通讯中的一方发送的用于构成一条即时消息的多个消息包,其中,各个所述消息包分别对应预先设置的唯一的版本号;根据多个所述消息包各自对应的版本号确定所述即时消息中是否有消息包丢失,若是,则根据各个所述消息包各自对应的版本号确定丢失的消息包对应的目标版本号;向所述当前即时通讯中的一方发送包括目标版本号的丢包提示信息,以使所述当前即时通讯中的一方根据所述丢包提示信息中的目标版本号重新发送该目标版本号对应的消息包,能够提高即时通讯的稳定性和准确性。
在另一个实施方式中,即时通讯的消息发送装置可以与中央处理器9100分开配置,例如可以将即时通讯的消息发送配置为与中央处理器9100连接的芯片,通过中央处理器的控制来实现即时通讯的消息发送功能。
如图7所示,该电子设备9600还可以包括:通信模块9110、输入单元9120、音频处理器9130、显示器9160、电源9170。值得注意的是,电子设备9600也并不是必须要包括图7中所示的所有部件;此外,电子设备9600还可以包括图7中没有示出的部件,可以参考现有技术。
如图7所示,中央处理器9100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器9100接收输入并控制电子设备9600的各个部件的操作。
其中,存储器9140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器9100可执行该存储器9140存储的该程序,以实现信息存储或处理等。
输入单元9120向中央处理器9100提供输入。该输入单元9120例如为按键或触摸输入装置。电源9170用于向电子设备9600提供电力。显示器9160用于进行图像和文字等显示对象的显示。该显示器例如可为LCD显示器,但并不限于此。
该存储器9140可以是固态存储器,例如,只读存储器(ROM)、随机存取存储器(RAM)、SIM卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为EPROM等。存储器9140还可以是某种其它类型的装置。存储器9140包括缓冲存储器9141(有时被称为缓冲器)。存储器9140可以包括应用/功能存储部9142,该应用/功能存储部9142用于存储应用程序和功能程序或用于通过中央处理器9100执行电子设备9600的操作的流程。
存储器9140还可以包括数据存储部9143,该数据存储部9143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器9140的驱动程序存储部9144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
通信模块9110即为经由天线9111发送和接收信号的发送机/接收机9110。通信模块(发送机/接收机)9110耦合到中央处理器9100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块9110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)9110还经由音频处理器9130耦合到扬声器9131和麦克风9132,以经由扬声器9131提供音频输出,并接收来自麦克风9132的音频输入,从而实现通常的电信功能。音频处理器9130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器9130还耦合到中央处理器9100,从而使得可以通过麦克风9132能够在本机上录音,且使得可以通过扬声器9131来播放本机上存储的声音。
本发明的实施例还提供能够实现上述实施例中的即时通讯的消息发送方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的即时通讯的消息发送方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:接收当前即时通讯中的一方发送的用于构成一条即时消息的多个消息包,其中,各个所述消息包分别对应预先设置的唯一的版本号;根据多个所述消息包各自对应的版本号确定所述即时消息中是否有消息包丢失,若是,则根据各个所述消息包各自对应的版本号确定丢失的消息包对应的目标版本号;向所述当前即时通讯中的一方发送包括目标版本号的丢包提示信息,以使所述当前即时通讯中的一方根据所述丢包提示信息中的目标版本号重新发送该目标版本号对应的消息包。
从上述描述可知,本发明实施例提供的计算机可读存储介质,通过接收当前即时通讯中的一方发送的用于构成一条即时消息的多个消息包,其中,各个所述消息包分别对应预先设置的唯一的版本号;根据多个所述消息包各自对应的版本号确定所述即时消息中是否有消息包丢失,若是,则根据各个所述消息包各自对应的版本号确定丢失的消息包对应的目标版本号;向所述当前即时通讯中的一方发送包括目标版本号的丢包提示信息,以使所述当前即时通讯中的一方根据所述丢包提示信息中的目标版本号重新发送该目标版本号对应的消息包,能够提高即时通讯的稳定性和准确性。
虽然本发明提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。
本领域技术人员应明白,本说明书的实施例可提供为方法、装置(系统)或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。术语“上”、“下”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。本发明并不局限于任何单一的方面,也不局限于任何单一的实施例,也不局限于这些方面和/或实施例的任意组合和/或置换。而且,可以单独使用本发明的每个方面和/或实施例或者与一个或更多其他方面和/或其实施例结合使用。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。
Claims (18)
1.一种即时通讯的消息发送方法,其特征在于,包括:
接收当前即时通讯中的一方发送的用于构成一条即时消息的多个消息包,其中,各个所述消息包分别对应预先设置的唯一的版本号;
根据多个所述消息包各自对应的版本号确定所述即时消息中是否有消息包丢失,若是,则根据各个所述消息包各自对应的版本号确定丢失的消息包对应的目标版本号;
向所述当前即时通讯中的一方发送包括目标版本号的丢包提示信息,以使所述当前即时通讯中的一方根据所述丢包提示信息中的目标版本号重新发送该目标版本号对应的消息包。
2.根据权利要求1所述的即时通讯的消息发送方法,其特征在于,各个所述消息包各自对应的所述版本号是由即时通讯中的一方在发送的用于构成一条即时消息的多个消息包之前,添加至对应的各个所述消息包。
3.根据权利要求1所述的即时通讯的消息发送方法,其特征在于,还包括:接收即时通讯中的一方重新发送的目标版本号对应的消息包,并向即时通讯中的一方发送回执消息。
4.根据权利要求3所述的即时通讯的消息发送方法,其特征在于,所述回执消息的数据结构为:即时消息的编号和接收时间。
5.根据权利要求1所述的即时通讯的消息发送方法,其特征在于,还包括:在即时通讯时通过心跳机制的方式检测即时通讯中的双方之间的长链接。
6.根据权利要求1所述的即时通讯的消息发送方法,其特征在于,还包括:
读取发送即时消息的即时通讯中一方的发送时间,以所述发送时间作为该即时消息的接收时间。
7.根据权利要求1所述的即时通讯的消息发送方法,其特征在于,所述根据多个所述消息包各自对应的版本号确定所述即时消息中是否有消息包丢失,包括:
基于预设的排序方式对多个所述版本号进行排序;
将多个所述版本号排序后的序列与预设的序列进行对比,若多个所述版本号排序后的序列中元素丢失,则确定有消息包的丢失。
8.根据权利要求1所述的即时通讯的消息发送方法,其特征在于,所述消息包的数据结构包括:即时消息编号、消息发送者、消息接收者、消息内容和版本号。
9.一种即时通讯的消息发送装置,其特征在于,包括:
接收单元,用于接收当前即时通讯中的一方发送的用于构成一条即时消息的多个消息包,其中,各个所述消息包分别对应预先设置的唯一的版本号;
识别单元,用于根据多个所述消息包各自对应的版本号确定所述即时消息中是否有消息包丢失,若是,则根据各个所述消息包各自对应的版本号确定丢失的消息包对应的目标版本号;
反馈单元,用于向所述当前即时通讯中的一方发送包括目标版本号的丢包提示信息,以使所述当前即时通讯中的一方根据所述丢包提示信息中的目标版本号重新发送该目标版本号对应的消息包。
10.根据权利要求9所述的即时通讯的消息发送装置,其特征在于,各个所述消息包各自对应的所述版本号是由即时通讯中的一方在发送的用于构成一条即时消息的多个消息包之前,添加至对应的各个所述消息包。
11.根据权利要求9所述的即时通讯的消息发送装置,其特征在于,还包括:
回执单元,用于接收即时通讯中的一方重新发送的目标版本号对应的消息包,并向即时通讯中的一方发送回执消息。
12.根据权利要求11所述的即时通讯的消息发送装置,其特征在于,所述回执消息的数据结构为:即时消息的编号和接收时间。
13.根据权利要求9所述的即时通讯的消息发送装置,其特征在于,还包括:
检测单元,用于在即时通讯时通过心跳机制的方式检测即时通讯中的双方之间的长链接。
14.根据权利要求9所述的即时通讯的消息发送装置,其特征在于,还包括:
读取单元,用于读取发送即时消息的即时通讯中一方的发送时间,以所述发送时间作为该即时消息的接收时间。
15.根据权利要求9所述的即时通讯的消息发送装置,其特征在于,所述识别单元包括:
排序子单元,用于基于预设的排序方式对多个所述版本号进行排序;
对比子单元,用于将多个所述版本号排序后的序列与预设的序列进行对比,若多个所述版本号排序后的序列中元素丢失,则确定有消息包的丢失。
16.根据权利要求9所述的即时通讯的消息发送装置,其特征在于,所述消息包的数据结构包括:即时消息编号、消息发送者、消息接收者、消息内容和版本号。
17.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至8任一项所述的即时通讯的消息发送方法的步骤。
18.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至8任一项所述的即时通讯的消息发送方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910689088.5A CN110417644A (zh) | 2019-07-29 | 2019-07-29 | 即时通讯的消息发送方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910689088.5A CN110417644A (zh) | 2019-07-29 | 2019-07-29 | 即时通讯的消息发送方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110417644A true CN110417644A (zh) | 2019-11-05 |
Family
ID=68363725
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910689088.5A Pending CN110417644A (zh) | 2019-07-29 | 2019-07-29 | 即时通讯的消息发送方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110417644A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113810302A (zh) * | 2021-09-18 | 2021-12-17 | 深圳市奥拓普科技有限公司 | 一种通讯控制的方法和通讯传输系统 |
CN115378894A (zh) * | 2022-08-26 | 2022-11-22 | 成都卫士通信息产业股份有限公司 | 一种消息同步方法、装置、设备及介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101360278A (zh) * | 2008-09-17 | 2009-02-04 | 华为技术有限公司 | 一种即时消息收发的方法、系统和设备 |
US20110161426A1 (en) * | 2009-12-28 | 2011-06-30 | International Business Machines Corporation | Control E-Mail Download Through Instructional Requests |
CN107274882A (zh) * | 2017-08-08 | 2017-10-20 | 腾讯科技(深圳)有限公司 | 数据传输方法及装置 |
CN107819870A (zh) * | 2017-11-21 | 2018-03-20 | 广州视睿电子科技有限公司 | 增量拉取数据方法、装置、存储介质、终端设备和服务器 |
CN108377427A (zh) * | 2018-01-29 | 2018-08-07 | 明博教育科技股份有限公司 | 一种实时视频传输方法和系统 |
CN109327288A (zh) * | 2015-12-14 | 2019-02-12 | 华为技术有限公司 | 数据传输加速方法、装置及系统 |
-
2019
- 2019-07-29 CN CN201910689088.5A patent/CN110417644A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101360278A (zh) * | 2008-09-17 | 2009-02-04 | 华为技术有限公司 | 一种即时消息收发的方法、系统和设备 |
US20110161426A1 (en) * | 2009-12-28 | 2011-06-30 | International Business Machines Corporation | Control E-Mail Download Through Instructional Requests |
CN109327288A (zh) * | 2015-12-14 | 2019-02-12 | 华为技术有限公司 | 数据传输加速方法、装置及系统 |
CN107274882A (zh) * | 2017-08-08 | 2017-10-20 | 腾讯科技(深圳)有限公司 | 数据传输方法及装置 |
CN107819870A (zh) * | 2017-11-21 | 2018-03-20 | 广州视睿电子科技有限公司 | 增量拉取数据方法、装置、存储介质、终端设备和服务器 |
CN108377427A (zh) * | 2018-01-29 | 2018-08-07 | 明博教育科技股份有限公司 | 一种实时视频传输方法和系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113810302A (zh) * | 2021-09-18 | 2021-12-17 | 深圳市奥拓普科技有限公司 | 一种通讯控制的方法和通讯传输系统 |
CN113810302B (zh) * | 2021-09-18 | 2023-11-14 | 深圳市奥拓普科技有限公司 | 一种通讯控制的方法和通讯传输系统 |
CN115378894A (zh) * | 2022-08-26 | 2022-11-22 | 成都卫士通信息产业股份有限公司 | 一种消息同步方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10425782B2 (en) | Voice messaging method and mobile terminal supporting voice messaging in mobile messenger service | |
TWI364996B (en) | Method and apparatus for detecting an erroneous sequence number in a status report in a wireless communication system | |
US20140351832A1 (en) | Electronic device using framework interface for communication | |
CN104144093A (zh) | 一种智能设备控制方法及相关设备、系统 | |
US20100042739A1 (en) | Confirmation of delivery of content to an http/tcp device | |
CN105814591A (zh) | 一种验证信息的传输方法及终端 | |
CN110417644A (zh) | 即时通讯的消息发送方法及装置 | |
EP3917181A1 (en) | Method and device for data transmission, and storage medium | |
CN112187406B (zh) | 一种真无线耳机的纠错方法、装置及介质 | |
WO2009143756A1 (zh) | 一种实现消息业务的方法及装置 | |
US8165077B2 (en) | Delegation of mobile communication to external device | |
CN102664958A (zh) | 一种透明计算系统 | |
CN109739562A (zh) | 一种数据处理方法及电子控制设备 | |
US9251788B2 (en) | Method and apparatus for voice-based machine to machine communication | |
EP2854394A1 (en) | Video data transmission method, apparatus and communication device | |
CN110781014A (zh) | 基于Android设备的录音数据的多进程分发方法与系统 | |
CN108306815A (zh) | 一种获取消息的方法、装置、设备及计算机可读存储介质 | |
US20120289303A1 (en) | Mobile gaming system | |
CN114697339A (zh) | 集中式架构下的负载均衡方法及装置 | |
WO2016058290A1 (zh) | 一种消息提醒方法及终端 | |
CN103841085A (zh) | 基于万维网的实时通信的实现方法及装置 | |
CN113052691A (zh) | 一种分布式对账系统业务均衡方法,节点及集群 | |
CN115118628B (zh) | 一种异常报文处理方法及装置 | |
CN114090484B (zh) | 远程直接数据存取方法及装置 | |
JP3936367B2 (ja) | メール送信方法、このメール送信方法に用いて好適な移動機及び外部端末 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191105 |