CN106161190A - 点对点即时通信方法 - Google Patents
点对点即时通信方法 Download PDFInfo
- Publication number
- CN106161190A CN106161190A CN201510154634.7A CN201510154634A CN106161190A CN 106161190 A CN106161190 A CN 106161190A CN 201510154634 A CN201510154634 A CN 201510154634A CN 106161190 A CN106161190 A CN 106161190A
- Authority
- CN
- China
- Prior art keywords
- communication information
- sequence number
- targeted customer
- retransmitted
- client
- 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
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明提供一种点对点即时通信方法,包括:目标用户客户端接收服务器发送的包括序号的通信消息,并将该通信消息的序号添加到已接收通信消息序号列表中;根据目标用户的在线状态和已接收通信消息的序号的连续状况,在确定存在待重发通信消息时,向服务器发送包括待重发通信消息的序号的重发请求;服务器确定与待重发通信消息的序号对应的待重发通信消息,并发送给目标用户客户端。为每个目标用户的各通信消息依次分配序号,使得目标用户客户端获知已接收到哪些消息,从而发现没有接收到某些通信消息时请求服务器重新发送这部分消息,从而保证了目标用户不论是在线还是离线或断线,都能够及时可靠地接收到发给他的消息。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种点对点即时通信方法。
背景技术
即时通讯软件又称为即时聊天软件,例如现在流行的QQ、微信等都是这类软件。通常即时通讯软件都是基于客户端(Client)/服务器(Server)架构的,即由运行在用户设备端的客户端软件(Client)和运行在软件提供商的服务器上的服务端应用软件(Server)组成。
在进行即时通信时,发送侧的客户端不与接收侧的客户端直接通讯,而是将消息发送至服务器,由服务端应用软件再将消息转发至接收侧客户端。点对点消息通讯过程中,服务器对于用户是透明的,用户并不会意识到服务器的存在。
在移动互联网高速发展的今天,各种各样的基于移动设备的即时通讯软件正在被越来越多的用户所接受并广泛使用。作为任何一款具有完整功能的即时通讯软件,都需要面对两个技术难题。一个是如何处理当聊天对象不在线时的离线消息通讯问题,另一个则是如何处理当聊天对象的网络异常问题造成消息丢失问题。
具体来说,离线消息通讯是指当目标用户不在线的时候,发送给这个用户的消息能够在他下次上线的时候成功发送给他。而消息丢失问题是指由于某些原因,通常是网络异常等原因导致的消息在网络传输过程中丢失,服务器端和发送端无法探知到这种丢失,从而导致消息的接收者没有收到消息,而发送者和服务器认为消息已经发送成功,这就会造成语义上的误解。对于上述两个问题,从接收者的角度来说,都是不能及时可靠地接收到发给他的通讯消息。因此,如何保证消息接受者能够及时、可靠地接收到发送给他的通讯消息,是即时通信所需解决的重要问题。
发明内容
本发明提供一种点对点即时通信方法,用以保证即时通信接收者能够及时、可靠地接收到发送给他的通讯消息。
本发明提供一种点对点即时通信方法,包括:
目标用户客户端接收服务器发送的通信消息,所述通信消息中包括所述通信消息的序号,并将所述通信消息的序号添加到已接收通信消息序号列表中;
其中,所述通信消息的序号为所述服务器根据与所述目标用户对应的已发送通信消息序号列表确定的,所述已发送通信消息序号列表中存储有已经发送给所述目标用户的已发通信消息和与所述已发通信消息对应的已发序号;
所述目标用户客户端根据所述目标用户的在线状态,以及已接收通信消息的序号的连续状况,确定是否存在待重发通信消息;
若存在待重发通信消息,则所述目标用户客户端向所述服务器发送重发请求,所述重发请求中包括所述待重发通信消息的序号,以使所述服务器确定与所述待重发通信消息的序号对应的待重发通信消息,并将所述待重发通信消息发送给所述目标用户客户端。
本发明提供又一种点对点即时通信方法,包括:
服务器接收并解析源用户客户端发送给目标用户客户端的通信消息中的目标用户标识;
所述服务器根据与所述目标用户标识对应的已发送通信消息序号列表,确定所述通信消息的序号,其中,所述已发送通信消息序号列表中存储有已经发送给所述目标用户的已发通信消息和与所述已发通信消息对应的已发序号;
所述服务器将所述通信消息的序号添加到所述通信消息中,得到待转发通信消息,并将所述通信消息和所述通信消息的序号存储到所述已发送通信消息序号列表中;
所述服务器将所述待转发通信消息发送给所述目标用户客户端,以使所述目标用户客户端将所述通信消息的序号添加到已接收通信消息序号列表中。
本发明提供的点对点即时通信方法,即时通信服务器在接收并解析到发送给目标用户的通信消息中的目标用户标识后,在为每个目标用户建立的已发送通信消息序号列表中,查询得到已发送通信消息中的最大序号即最新序号,从而通过比如加一操作来得到当前该通信消息的序号,并将包括有该序号的通信消息发送给目标用户。通过为每个目标用户对应的各通信消息依次分配序号,使得目标用户客户端能够获知已经接收到哪些序号的通信消息,从而结合目标用户的在线状态和接收到的通信消息的序号连续情况发现没有接收到某些通信消息时,以未接收到的通信消息的序号为依据,请求服务器为其重新发送这部分消息,从而保证了目标用户不论是在线还是离线或断线,都能够及时可靠地接收到发给他的消息。
附图说明
图1为本发明实施例一提供的点对点即时通信方法的流程图;
图2为本发明实施例二提供的点对点即时通信方法的流程图;
图3为本发明实施例三提供的点对点即时通信方法的流程图;
图4为本发明实施例四提供的点对点即时通信方法的流程图;
图5为本发明实施例五提供的点对点即时通信方法的流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例一提供的点对点即时通信方法的流程图,如图1所示,该方法包括:
步骤101、目标用户客户端接收服务器发送的通信消息,所述通信消息中包括所述通信消息的序号,并将所述通信消息的序号添加到已接收通信消息序号列表中;
其中,所述通信消息的序号为所述服务器根据与所述目标用户对应的已发送通信消息序号列表确定的,所述已发送通信消息序号列表中存储有已经发送给所述目标用户的已发通信消息和与所述已发通信消息对应的已发序号。
本实施例中,目标用户是与源用户具有即时通信对应关系的用户,源用户通过源用户客户端向目标用户客户端发送通信消息,目标用户客户端接收到该通信消息后向目标用户显示。当然,源用户与目标用户之间的通信消息是经过即时通信服务器来中继转发的。正如前面所说的,当目标用户不在线或者由于网络较差等原因使得目标用户暂时断线时,发送给目标用户的通信消息可能丢失,需要保证目标用户下次上线时能够及时可靠地接收到离线消息,即需要解决离线消息通讯和信息丢失的问题。
解决这两个问题的关键是要通过某种机制让服务器能够实时了解通信消息的接收者即目标用户对通信消息的接收情况,以便相对应的做出正确的后续动作。
本发明实施例通过引入一种消息序号的机制使目标用户客户端和服务器能够相互知晓通信消息的接收情况,从而向目标用户客户端推送离线消息和最大限度的避免网络异常导致消息丢失的情况,提高消息到达率。
具体来说,当源用户通过源用户客户端发送通信消息给目标用户时,服务器接收到该通信消息,服务器解析得到该通信消息中的目标用户标识,并向该通信消息中添加一个序号。值得说明的是,本实施例中,对于每个目标用户来说,其相对应的消息序号的获取都是排他性的操作,这样可以确保生成的序号对于一个目标用户来说是全局唯一的。在点对点通信的情况下,对于某个目标用户来说,其所对应的序号可以依次递增,比如从1开始逐一递增。也可以根据实际需要,设定一个取值范围,当达到该取值范围的最大序号值时,从头开始重新分配序号。
在上述服务器中,可以设置一个与该目标用户对应的已发通信消息序号列表,该已发送通信消息序号列表中存储有已经发送给该目标用户的已发通信消息和与各已发通信消息分别对应的已发序号。从而,服务器能够通过查询该已发通信消息序号列表来确定为当前接收到的上述通信消息分配的序号。
举例来说,比如已发通信消息序号列表中显示已经为该目标用户发送了9条通信消息,即最新或者说最近的序号为9,则当前需要为该通信消息分配的序号为10。当下次再接收到发往该目标用户的通信消息时,则相应的为其确定序号为11、12,以此类推。
服务器将在确定了所述通信消息的序号之后,将该序号添加到该通信消息中,得到待转发通信消息,同时,将该通信消息和该通信消息的序号存储到与该目标用户对应的上诉已发送通信消息序号列表中。之后,服务器将该待转发通信消息发送给目标用户客户端。
目标用户客户端接收服务器发送的包括通信消息的序号的通信消息即上述待转发通信消息后,向目标用户显示该通信消息,并将该通信消息的序号添加到已接收通信消息序号列表中,该已接收通信消息序号列表中保存有目标用户已经接收到的各通信消息的序号。
可选的,所述目标用户客户端将所述通信消息的序号添加到已接收通信消息序号列表中,包括:
目标用户客户端判断所述已接收通信消息序号列表中是否已经存在所述通信消息的序号;
若已经存在所述通信消息的序号,则丢弃所述通信消息;
若存在所述通信消息的序号,则将所述通信消息的序号添加到所述已接收通信消息序号列表中。
为了减少对每个目标用户的序号维护开销,可以对目标用户对应的已接收通信消息序号列表的存储数量进行限定,也就是对每个目标用户的通信消息的序号范围进行限定。举例来说,目标用户客户端为目标用户维护的已接收通信消息序号列表长度为100,即该列表中存储的是最近已经收到的100条消息的序号。当目标用户客户端接收到当前的通信消息之后,根据该通信消息中包含的序号比如为10,在已接收通信消息序号中查找是否已经存在序号10,如果存在,说明消息重复,无需处理,丢弃此该通信消息;如果不存在则将序号10存储在该序号列表中,同时向用户显示此消息。
步骤102、目标用户客户端根据所述目标用户的在线状态,以及已接收通信消息的序号的连续状况,确定是否存在待重发通信消息,若存在待重发通信消息,则执行步骤103,否则结束。
步骤103、目标用户客户端向所述服务器发送重发请求,所述重发请求中包括所述待重发通信消息的序号,以使所述服务器确定与所述待重发通信消息的序号对应的待重发通信消息,并将所述待重发通信消息发送给所述目标用户客户端。
在实际应用中,会存在目标用户已经下线,或者由于网络异常导致目标用户没有接收到某些通信消息即通信消息丢失等情况。为此,本实施例中,目标用户客户端可以结合目标用户的在线状态,以及目标用户已接收通信消息的序号的连续状况,来确定是否存在待重发通信消息,即是否存在通信消息丢失或者其他接收不完整的情形。
举例来说,如果目标用户在线,其收到了从服务器发送过来的该通信消息之后,目标用户客户端可以随即或周期性地检查当前已接收通信消息序号列表中已经存储的各序号,比如已经存储了100个序号,分别为:1—95,97—98,100,则发现序号中间丢失了序号96和99。由此说明序号为96和序号为99的通信消息没有到达,目标用户客户端随即向服务器发送重发请求,重发请求中包括需要重发的序号96和99,以获取序号为96、99的2条消息。服务器将从已发送通信消息序号列表中找出序号为96、99的通信消息作为待重发通信消息,然后重新发送给目标用户客户端,目标用户客户端显示给目标用户,由此最大限度的避免消息的丢失。
其他情形的举例将在后续实施例中详细说明。
本实施例中,即时通信服务器在接收并解析到发送给目标用户的通信消息中的目标用户标识后,在为每个目标用户建立的已发送通信消息序号列表中,查询得到已发送通信消息中的最大序号即最新序号,从而通过比如加一操作来得到当前该通信消息的序号,并将包括有该序号的通信消息发送给目标用户。通过为每个目标用户对应的各通信消息依次分配序号,使得目标用户客户端能够获知已经接收到哪些序号的通信消息,从而结合目标用户的在线状态和接收到的通信消息的序号连续情况发现没有接收到某些通信消息时,以未接收到的通信消息的序号为依据,请求服务器为其重新发送这部分消息,从而保证了目标用户不论是在线还是离线或断线,都能够及时可靠地接收到发给他的消息。
图2为本发明实施例二提供的点对点即时通信方法的流程图,如图2所示,在图1所示实施例的基础上,步骤102中目标用户客户端根据所述目标用户的在线状态,以及已接收通信消息的序号的连续状况,确定是否存在待重发通信消息,可以具体包括:
步骤201、目标用户的在线状态是否指示所述目标用户在线,若是,则执行步骤202;
若目标用户若不在线,将在下面的实施例中进行描述。
步骤202、已接收通信消息的序号的连续状况是否指示存在缺失序号,若是,则执行步骤203;
其中,所述缺失序号为小于所述已接收通信消息序号列表中最大序号的序号。
如果已接收通信消息的序号的连续状况指示不存在缺失序号,则说明到目前为止,所有发给目标用户的通信消息都被目标用户准确接收到了,无需进行其他处理,结束。
步骤203、目标客户端确定存在待重发通信消息。
相应的,步骤103为:
步骤204、目标用户客户端向所述服务器发送重发请求,所述重发请求中包括所述缺失序号,以使所述服务器从所述已发送通信消息序号列表中获得与所述缺失序号对应的通信消息作为所述待重发通信消息,并将所述待重发通信消息发送给所述目标用户客户端。
仍以图1所示实施例中的举例来说,当目标用户在线时,若目标用户客户端发现上述序号96和99的通信消息没有接收成功,即序号96和99即为缺失序号,则向服务器发送携带有序号96和99的重发请求,服务器从已发送通信消息序号列表中查询获得与序号96和99分别对应的通信消息,并将与序号96和99分别对应的通信消息发送给目标用户客户端,目标用户客户端将其显示给目标用户。值得说明的是,此时,目标用户客户端将缺失序号对应的通信消息显示给目标用户时,可以将该缺失序号对应的通信消息在其本来应该所在的顺序位置处显示,并突出提示目标用户,比如以与其他成功接收消息不同的显示方式显示。举例来说,对于序号96对应的通信消息,将其显示在序号95对应的通信消息和序号97对应的通信消息之间,并突出显示。
图3为本发明实施例三提供的点对点即时通信方法的流程图,如图3所示,在图1所示实施例的基础上,步骤102中目标用户客户端根据所述目标用户的在线状态,以及已接收通信消息的序号的连续状况,确定是否存在待重发通信消息,可以具体包括:
步骤301、目标用户的在线状态是否指示所述目标用户在线,若不是,则执行步骤302;
步骤302、已接收通信消息的序号的连续状况是否指示序号连续,若是,则执行步骤304-305,若不是,则执行步骤303-304和306;
步骤303、目标用户客户端确定已接收通信消息的序号中存在的缺失序号;
其中,所述缺失序号为小于所述已接收通信消息序号列表中最大序号的序号。
步骤304、目标客户端确定存在待重发通信消息。
步骤305、目标用户客户端在所述目标用户再次在线时向所述服务器发送重发请求,所述重发请求中包括已接收通信消息序号列表中的最大序号,以使所述服务器从所述已发送通信消息序号列表中获得大于所述最大序号的各序号分别对应的通信消息作为所述待重发通信消息,并将所述待重发通信消息发送给所述目标用户客户端。
其中,在目标用户不在线,且已接收通信消息的序号的连续状况是否指示序号连续时,说明目标用户此时已经下线即主动的离线。因此,目标用户客户端在目标用户再次上线时,向服务器发送携带有目标用户已接收通信消息序号中的最大序号的重发请求,服务器将大于该最大序号的通信消息即在目标用户下线期间发送给目标用户的通信消息发送给目标用户。
步骤306、目标用户客户端在所述目标用户再次在线时向所述服务器发送重发请求,所述重发请求中包括所述缺失序号,以使所述服务器从所述已发送通信消息序号列表中获得与所述缺失序号对应的通信消息作为所述待重发通信消息,并将所述待重发通信消息发送给所述目标用户客户端。
当目标用户不在线,且目标用户客户端确定目标用户已经接收到的通信消息序号有缺失,比如中间缺失了几个序号,则说明很可能是由于网络异常导致的信息丢失。此时,当网络恢复正常,目标用户在线时,目标用户客户端向服务器发送携带有缺失序号的重发请求,使得服务器将缺失序号对应的通信消息重发给目标用户。
综合上述各实施例,通过在每个用户接收的即时通信消息中添加全局唯一的序号标识,使得在用户下线或网络异常导致断线时,都能及时可靠地恢复未成功接收到的通信消息。
图4为本发明实施例四提供的点对点即时通信方法的流程图,如图4所示,该方法包括:
步骤401、服务器接收并解析源用户客户端发送给目标用户客户端的通信消息中的目标用户标识;
步骤402、服务器根据与所述目标用户标识对应的已发送通信消息序号列表,确定所述通信消息的序号,其中,所述已发送通信消息序号列表中存储有已经发送给所述目标用户的已发通信消息和与所述已发通信消息对应的已发序号;
步骤403、服务器将所述通信消息的序号添加到所述通信消息中,得到待转发通信消息,并将所述通信消息和所述通信消息的序号存储到所述已发送通信消息序号列表中;
步骤404、服务器将所述待转发通信消息发送给所述目标用户客户端,以使所述目标用户客户端将所述通信消息的序号添加到已接收通信消息序号列表中。
其中,所述通信消息的序号还用于指示所述目标用户客户端在判断所述已接收通信消息序号列表中已经存在所述通信消息的序号时丢弃所述通信消息。
服务器接收发往目标用户的通信消息,并为其添加序号转发给目标用户的过程已经在图1所示实施例中详细描述过,本实施例只是站在服务器的角度来进行描述,因此不再赘述详细过程。
本实施例中,即时通信服务器通过在发送给目标用户的通信消息中,根据已发送给目标用户的通信消息的序号来确定当前通信消息的序号,以将确定的序号添加到该通信消息中发送给目标用户,使得目标用户客户端能够基于接收到的各携带有序号的通信消息获知已经接收到哪些消息,没有成功接收到哪些消息,从而能够基于已成功接收到的通信消息的序号确定出未成功接收到的通信消息的序号,并基于该未成功接收的序号进行向服务器的重发请求,保证了目标用户能够及时可靠地获得所有发往自身的通信消息。
图5为本发明实施例五提供的点对点即时通信方法的流程图,如图5所示,在图4所示实施例的基础上,在步骤404之后,还可以包括如下步骤:
步骤501、服务器接收所述目标用户客户端发送的重发请求,所述重发请求中包括待重发通信消息的序号,其中,所述重发请求为所述目标用户客户端根据所述目标用户的在线状态以及已接收通信消息的序号的连续状况,确定存在待重发通信消息时发送的;
步骤502、服务器确定与所述待重发通信消息的序号对应的待重发通信消息,并将所述待重发通信消息发送给所述目标用户客户端。
可选的,所述待重发消息序号包括缺失序号,所述缺失序号为小于所述已接收通信消息序号列表中最大序号的序号;
相应的,步骤502具体为:
服务器从所述已发送通信消息序号列表中获得与所述缺失序号对应的通信消息作为所述待重发通信消息,并将所述待重发通信消息发送给所述目标用户客户端。
其中,上述缺失序号的确定过程可以参照图2或图3所示实施例中目标客户端确定是否存在待重发通信消息的过程,不再赘述。
可选的,所述待重发消息序号包括所述已接收通信消息序号列表中的最大序号;
相应的,步骤502具体为:
服务器从所述已发送通信消息序号列表中获得大于所述最大序号的各序号分别对应的通信消息作为所述待重发通信消息,并将所述待重发通信消息发送给所述目标用户客户端。
其中,上述最大序号的确定过程可以参照图2或图3所示实施例中目标客户端确定是否存在待重发通信消息的过程,不再赘述。
本实施例中,当目标用户客户端结合目标用户的在线状态以及其已接收的通信消息的序号连续情况确定出需要重新发送的某些通信消息之后,进行向服务器的重发请求过程,从而能够及时可靠地重新获得比如目标用户不在线没法接收到的或者断线丢失的通信消息。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种点对点即时通信方法,其特征在于,包括:
目标用户客户端接收服务器发送的通信消息,所述通信消息中包括所述通信消息的序号,并将所述通信消息的序号添加到已接收通信消息序号列表中;
其中,所述通信消息的序号为所述服务器根据与所述目标用户对应的已发送通信消息序号列表确定的,所述已发送通信消息序号列表中存储有已经发送给所述目标用户的已发通信消息和与所述已发通信消息对应的已发序号;
所述目标用户客户端根据所述目标用户的在线状态,以及已接收通信消息的序号的连续状况,确定是否存在待重发通信消息;
若存在待重发通信消息,则所述目标用户客户端向所述服务器发送重发请求,所述重发请求中包括所述待重发通信消息的序号,以使所述服务器确定与所述待重发通信消息的序号对应的待重发通信消息,并将所述待重发通信消息发送给所述目标用户客户端。
2.根据权利要求1所述的方法,其特征在于,所述目标用户客户端将所述通信消息的序号添加到已接收通信消息序号列表中,包括:
所述目标用户客户端判断所述已接收通信消息序号列表中是否已经存在所述通信消息的序号;
若已经存在所述通信消息的序号,则所述目标用户客户端丢弃所述通信消息;
若存在所述通信消息的序号,则所述目标用户客户端将所述通信消息的序号添加到所述已接收通信消息序号列表中。
3.根据权利要求1所述的方法,其特征在于,所述目标用户客户端根据所述目标用户的在线状态,以及已接收通信消息的序号的连续状况,确定是否存在待重发通信消息,包括:
若所述在线状态指示所述目标用户在线,并且所述连续状况指示存在缺失序号,所述缺失序号为小于所述已接收通信消息序号列表中最大序号的序号,则所述目标客户端确定存在待重发通信消息;
所述目标用户客户端向所述服务器发送重发请求,所述重发请求中包括所述待重发通信消息的序号,以使所述服务器确定与所述待重发通信消息的序号对应的待重发通信消息,并将所述待重发通信消息发送给所述目标用户客户端,包括:
所述目标用户客户端向所述服务器发送重发请求,所述重发请求中包括所述缺失序号,以使所述服务器从所述已发送通信消息序号列表中获得与所述缺失序号对应的通信消息作为所述待重发通信消息,并将所述待重发通信消息发送给所述目标用户客户端。
4.根据权利要求1所述的方法,其特征在于,所述目标用户客户端根据所述目标用户的在线状态,以及已接收通信消息的序号的连续状况,确定是否存在待重发通信消息,包括:
若所述在线状态指示所述目标用户不在线,并且所述连续状况指示存在缺失序号,所述缺失序号为小于所述已接收通信消息序号列表中最大序号的序号,则所述目标客户端确定存在待重发通信消息;
所述目标用户客户端向所述服务器发送重发请求,所述重发请求中包括所述待重发通信消息的序号,以使所述服务器确定与所述待重发通信消息的序号对应的待重发通信消息,并将所述待重发通信消息发送给所述目标用户客户端,包括:
所述目标用户客户端在所述目标用户再次在线时向所述服务器发送重发请求,所述重发请求中包括所述缺失序号,以使所述服务器从所述已发送通信消息序号列表中获得与所述缺失序号对应的通信消息作为所述待重发通信消息,并将所述待重发通信消息发送给所述目标用户客户端。
5.根据权利要求1所述的方法,其特征在于,所述目标用户客户端根据所述目标用户的在线状态,以及已接收通信消息的序号的连续状况,确定是否存在待重发通信消息,包括:
若所述在线状态指示所述目标用户不在线,并且所述连续状况指示序号连续,则所述目标客户端确定存在待重发通信消息;
所述目标用户客户端向所述服务器发送重发请求,所述重发请求中包括所述待重发通信消息的序号,以使所述服务器确定与所述待重发通信消息的序号对应的待重发通信消息,并将所述待重发通信消息发送给所述目标用户客户端,包括:
所述目标用户客户端在所述目标用户再次在线时向所述服务器发送重发请求,所述重发请求中包括已接收通信消息序号列表中的最大序号,以使所述服务器从所述已发送通信消息序号列表中获得大于所述最大序号的各序号分别对应的通信消息作为所述待重发通信消息,并将所述待重发通信消息发送给所述目标用户客户端。
6.一种点对点即时通信方法,其特征在于,包括:
服务器接收并解析源用户客户端发送给目标用户客户端的通信消息中的目标用户标识;
所述服务器根据与所述目标用户标识对应的已发送通信消息序号列表,确定所述通信消息的序号,其中,所述已发送通信消息序号列表中存储有已经发送给所述目标用户的已发通信消息和与所述已发通信消息对应的已发序号;
所述服务器将所述通信消息的序号添加到所述通信消息中,得到待转发通信消息,并将所述通信消息和所述通信消息的序号存储到所述已发送通信消息序号列表中;
所述服务器将所述待转发通信消息发送给所述目标用户客户端,以使所述目标用户客户端将所述通信消息的序号添加到已接收通信消息序号列表中。
7.根据权利要求6所述的方法,其特征在于,所述服务器将所述待转发通信消息发送给所述目标用户客户端之后,还包括:
所述服务器接收所述目标用户客户端发送的重发请求,所述重发请求中包括待重发通信消息的序号,其中,所述重发请求为所述目标用户客户端根据所述目标用户的在线状态以及已接收通信消息的序号的连续状况,确定存在待重发通信消息时发送的;
所述服务器确定与所述待重发通信消息的序号对应的待重发通信消息,并将所述待重发通信消息发送给所述目标用户客户端。
8.根据权利要求7所述的方法,其特征在于,所述待重发消息序号包括缺失序号,所述缺失序号为小于所述已接收通信消息序号列表中最大序号的序号;
所述服务器确定与所述待重发通信消息的序号对应的待重发通信消息,并将所述待重发通信消息发送给所述目标用户客户端,包括:
所述服务器从所述已发送通信消息序号列表中获得与所述缺失序号对应的通信消息作为所述待重发通信消息,并将所述待重发通信消息发送给所述目标用户客户端。
9.根据权利要求7所述的方法,其特征在于,所述待重发消息序号包括所述已接收通信消息序号列表中的最大序号;
所述服务器确定与所述待重发通信消息的序号对应的待重发通信消息,并将所述待重发通信消息发送给所述目标用户客户端,包括:
所述服务器从所述已发送通信消息序号列表中获得大于所述最大序号的各序号分别对应的通信消息作为所述待重发通信消息,并将所述待重发通信消息发送给所述目标用户客户端。
10.根据权利要求6至9中任一项所述的方法,其特征在于,所述通信消息的序号还用于指示所述目标用户客户端在判断所述已接收通信消息序号列表中已经存在所述通信消息的序号时丢弃所述通信消息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510154634.7A CN106161190A (zh) | 2015-04-02 | 2015-04-02 | 点对点即时通信方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510154634.7A CN106161190A (zh) | 2015-04-02 | 2015-04-02 | 点对点即时通信方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106161190A true CN106161190A (zh) | 2016-11-23 |
Family
ID=57338020
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510154634.7A Pending CN106161190A (zh) | 2015-04-02 | 2015-04-02 | 点对点即时通信方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106161190A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107491356A (zh) * | 2017-08-28 | 2017-12-19 | 广州市百果园信息技术有限公司 | 基于序号的消息处理方法、终端设备和服务器 |
CN110719318A (zh) * | 2019-09-06 | 2020-01-21 | 上海陆家嘴国际金融资产交易市场股份有限公司 | 消息处理方法和系统 |
CN111107165A (zh) * | 2019-12-30 | 2020-05-05 | 深圳市其乐游戏科技有限公司 | 断线重连方法、装置及计算机可读存储介质 |
CN111162880A (zh) * | 2019-12-26 | 2020-05-15 | 上海米哈游天命科技有限公司 | 数据发送方法、装置、设备及存储介质 |
CN111327915A (zh) * | 2020-02-21 | 2020-06-23 | 北京字节跳动网络技术有限公司 | 确定消息到达率的方法及装置 |
CN112217712A (zh) * | 2020-09-24 | 2021-01-12 | 福建天泉教育科技有限公司 | 消息多端同步的方法、客户端 |
CN112468386A (zh) * | 2020-11-17 | 2021-03-09 | 福建天泉教育科技有限公司 | 一种重复消息的处理方法及终端 |
CN113965580A (zh) * | 2020-06-29 | 2022-01-21 | 北京字节跳动网络技术有限公司 | 同步消息的方法和装置 |
CN115277618A (zh) * | 2022-07-25 | 2022-11-01 | 每日互动股份有限公司 | 一种消息发送的数据处理系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050262207A1 (en) * | 2004-05-20 | 2005-11-24 | International Business Machines Corporation | Offline message security via selective data replication |
CN101106543A (zh) * | 2007-08-20 | 2008-01-16 | 北京亿企通信息技术有限公司 | 一种在即时通信工具中处理离线数据的方法 |
CN101106544A (zh) * | 2007-08-20 | 2008-01-16 | 北京亿企通信息技术有限公司 | 一种在即时通信工具中处理离线数据的方法 |
CN101110787A (zh) * | 2006-07-21 | 2008-01-23 | 中国移动通信集团公司 | 历史会话管理的方法及历史会话转发系统 |
CN101110789A (zh) * | 2006-07-21 | 2008-01-23 | 华为技术有限公司 | 一种即时消息系统中发送即时消息报告的方法 |
CN103051520A (zh) * | 2013-01-05 | 2013-04-17 | 北京小米科技有限责任公司 | 即时通信工具中同步离线会话消息的方法及装置 |
CN103532822A (zh) * | 2012-07-02 | 2014-01-22 | 北京神州泰岳软件股份有限公司 | 消息投递的管理方法、服务器和系统 |
-
2015
- 2015-04-02 CN CN201510154634.7A patent/CN106161190A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050262207A1 (en) * | 2004-05-20 | 2005-11-24 | International Business Machines Corporation | Offline message security via selective data replication |
CN101110787A (zh) * | 2006-07-21 | 2008-01-23 | 中国移动通信集团公司 | 历史会话管理的方法及历史会话转发系统 |
CN101110789A (zh) * | 2006-07-21 | 2008-01-23 | 华为技术有限公司 | 一种即时消息系统中发送即时消息报告的方法 |
CN101106543A (zh) * | 2007-08-20 | 2008-01-16 | 北京亿企通信息技术有限公司 | 一种在即时通信工具中处理离线数据的方法 |
CN101106544A (zh) * | 2007-08-20 | 2008-01-16 | 北京亿企通信息技术有限公司 | 一种在即时通信工具中处理离线数据的方法 |
CN103532822A (zh) * | 2012-07-02 | 2014-01-22 | 北京神州泰岳软件股份有限公司 | 消息投递的管理方法、服务器和系统 |
CN103051520A (zh) * | 2013-01-05 | 2013-04-17 | 北京小米科技有限责任公司 | 即时通信工具中同步离线会话消息的方法及装置 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107491356A (zh) * | 2017-08-28 | 2017-12-19 | 广州市百果园信息技术有限公司 | 基于序号的消息处理方法、终端设备和服务器 |
CN110719318A (zh) * | 2019-09-06 | 2020-01-21 | 上海陆家嘴国际金融资产交易市场股份有限公司 | 消息处理方法和系统 |
CN110719318B (zh) * | 2019-09-06 | 2022-06-21 | 未鲲(上海)科技服务有限公司 | 消息处理方法和系统 |
CN111162880B (zh) * | 2019-12-26 | 2022-09-09 | 上海米哈游天命科技有限公司 | 数据发送方法、装置、设备及存储介质 |
CN111162880A (zh) * | 2019-12-26 | 2020-05-15 | 上海米哈游天命科技有限公司 | 数据发送方法、装置、设备及存储介质 |
CN111107165A (zh) * | 2019-12-30 | 2020-05-05 | 深圳市其乐游戏科技有限公司 | 断线重连方法、装置及计算机可读存储介质 |
CN111327915A (zh) * | 2020-02-21 | 2020-06-23 | 北京字节跳动网络技术有限公司 | 确定消息到达率的方法及装置 |
CN113965580A (zh) * | 2020-06-29 | 2022-01-21 | 北京字节跳动网络技术有限公司 | 同步消息的方法和装置 |
CN112217712A (zh) * | 2020-09-24 | 2021-01-12 | 福建天泉教育科技有限公司 | 消息多端同步的方法、客户端 |
CN112468386A (zh) * | 2020-11-17 | 2021-03-09 | 福建天泉教育科技有限公司 | 一种重复消息的处理方法及终端 |
CN112468386B (zh) * | 2020-11-17 | 2022-09-06 | 福建天泉教育科技有限公司 | 一种重复消息的处理方法及终端 |
CN115277618A (zh) * | 2022-07-25 | 2022-11-01 | 每日互动股份有限公司 | 一种消息发送的数据处理系统 |
CN115277618B (zh) * | 2022-07-25 | 2024-01-30 | 每日互动股份有限公司 | 一种消息发送的数据处理系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106161190A (zh) | 点对点即时通信方法 | |
US9712632B2 (en) | Method for receiving data, method for sending data, mobile terminal, and server | |
CN103220206B (zh) | 一种消息发送方法、装置和一种消息接收方法、装置 | |
US20030134621A1 (en) | E-mail distribution control method and mail server | |
US20100325470A1 (en) | Extended Messaging Platform | |
US9037935B2 (en) | Apparatus and method for retransmitting message in message transmission system | |
CN102571637A (zh) | 消息处理方法和装置 | |
CN102347916B (zh) | 一种网关、跨社区群组信息处理系统及方法 | |
EP0969623A3 (en) | Method and computer program product for efficiently and reliably sending small data messages from a sending system to a large number of receiving systems | |
CA2554964A1 (en) | Method and system for transmitting a multimedia message to multiple recipients | |
US9571409B2 (en) | Maximum transmission unit negotiation method and data terminal | |
CN103368818B (zh) | 一种即时消息发送的方法 | |
CN104023321A (zh) | 基于移动网络的安全可靠的消息传输系统 | |
CA2911989C (en) | Method, system and apparatus for dectecting instant message spam | |
CN106656760B (zh) | 一种基于消息队列的消息传递方法及系统 | |
CN103684707B (zh) | 服务端、用户端消息传输处理方法、消息传输方法及系统 | |
CN103532822A (zh) | 消息投递的管理方法、服务器和系统 | |
CN109587822B (zh) | 信息发送控制方法、信息接收控制方法、装置、存储介质 | |
CN104901865B (zh) | 一种基于全局单调序列号的移动端即时通讯信号同步方法 | |
CN105978796A (zh) | 基于不稳定移动网络的消息通信方法及系统 | |
US8755397B2 (en) | Asynchronous communication in an unstable network | |
CN103391238A (zh) | 一种基于xmpp的消息投递状态通告和可靠传输方法 | |
RU2010116275A (ru) | Регулирование широковещательных служебных сообщений в сети беспроводной связи | |
CN108075960A (zh) | 一种即时通讯消息实现方法及装置 | |
US10623365B2 (en) | Message redirection protocol |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into 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: 20161123 |