CN106921554B - 消息传输方法及装置 - Google Patents
消息传输方法及装置 Download PDFInfo
- Publication number
- CN106921554B CN106921554B CN201510983259.7A CN201510983259A CN106921554B CN 106921554 B CN106921554 B CN 106921554B CN 201510983259 A CN201510983259 A CN 201510983259A CN 106921554 B CN106921554 B CN 106921554B
- Authority
- CN
- China
- Prior art keywords
- message
- sent
- receiving end
- sequence
- identifier
- 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.)
- Active
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]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种消息传输方法及装置,属于通讯技术领域。所述方法包括:接收消息转发请求,所述消息转发请求中至少包括消息接收端标识、待发送消息和所述待发送消息的身份标识;根据所述身份标识,判断所述待发送消息是否为非重复发送消息;若所述待发送消息为非重复发送消息,则根据所述消息接收端标识,将所述待发送消息转发至消息接收端。由于该消息传输机制对消息是否重发进行了检测,因此避免了消息重复发送情况的出现,确保了消息的可靠性,智能性较优、效果较佳、提升了用户粘度。
Description
技术领域
本发明涉及通讯技术领域,特别涉及一种消息传输方法及装置。
背景技术
随着社会的不断进步,IM(Instant Messaging,即时通讯)类应用大量涌现,由于IM类应用可以让使用者在网络上建立私人聊天室,因此使得人与人之间的沟通联络变得越来越方便。目前常用的IM类应用有飞信、微信、易信等等。
针对IM消息来讲,现有技术通常采用的消息传输机制为:发送端在编辑好消息后,将该消息发送至服务器;服务器在接收到该消息后,再将该消息转发至对应的接收端。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
受限于网络环境较为复杂等因素,上述消息传输机制存在消息重复发送等缺陷,智能性较差、效果不佳、用户粘度不好。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种消息传输方法及装置。所述技术方案如下:
第一方面,提供了一种消息传输方法,所述方法包括:
接收消息转发请求,所述消息转发请求中至少包括消息接收端标识、待发送消息和所述待发送消息的身份标识;
根据所述身份标识,判断所述待发送消息是否为非重复发送消息;
若所述待发送消息为非重复发送消息,则根据所述消息接收端标识,将所述待发送消息转发至消息接收端。
可选地,所述根据所述消息接收端标识,将所述待发送消息转发至消息接收端,包括:
为所述待发送消息生成第一顺序标识;
根据所述第一顺序标识,将所述待发送消息按序存储在与所述消息接收端标识匹配的消息队列中;
向所述消息接收端转发存储在所述消息队列中的所述待发送消息;
其中,存储在所述消息队列中的每一条消息均对应一个顺序标识,所述顺序标识用于标识服务器接收到消息的先后顺序。
可选地,所述将所述待发送消息按序存储在与所述消息接收端标识匹配的消息队列中之后,所述方法还包括:
根据所述消息接收端标识,向所述消息接收端发送消息拉取通知;
在接收到所述消息接收端返回的消息拉取请求后,获取所述消息拉取请求中包括的第二顺序标识,所述第二顺序标识为所述服务器上一次向所述消息接收端转发的第一消息的顺序标识,所述第一消息指代上一次转发的消息中最后被所述服务器接收到的消息;
向所述消息接收端转发所述消息队列中与所述第二顺序标识匹配的消息。
可选地,所述向所述消息接收端转发所述消息队列中与所述第二顺序标识匹配的消息,包括:
在所述消息队列中确定顺序标识比所述第二顺序标识大的待下发消息;
将所述待下发消息作为与所述第二顺序标识匹配的消息转发至所述消息接收端;
其中,越先被所述服务器接收到的消息,对应的顺序标识越小。
可选地,所述方法还包括:
接收所述消息接收端发送的消息标记请求,所述消息标记请求由所述消息接收端在接收到服务器转发的消息后发送,所述消息标记请求中至少包括所述消息接收端本次接收到的第二消息的顺序标识,所述第二消息指代本次转发的消息中最后被所述服务器接收到的消息;
将与所述第二消息的顺序标识匹配的消息标记为已读状态。
可选地,所述将与所述第二消息的顺序标识匹配的消息标记为已读状态,包括:
将顺序标识比所述第二消息的顺序标识小且处于未读状态的消息标记为已读状态。
第二方面,提供了一种消息传输装置,所述装置包括:
第一接收模块,用于接收消息转发请求,所述消息转发请求中至少包括消息接收端标识、待发送消息和所述待发送消息的身份标识;
判断模块,用于根据所述身份标识,判断所述待发送消息是否为非重复发送消息;
第一发送模块,用于若所述待发送消息为非重复发送消息,则根据所述消息接收端标识,将所述待发送消息转发至消息接收端。
可选地,所述装置还包括:
生成模块,用于为所述待发送消息生成第一顺序标识;
存储模块,用于根据所述第一顺序标识,将所述待发送消息按序存储在与所述消息接收端标识匹配的消息队列中;
所述第一发送模块,用于向所述消息接收端转发存储在所述消息队列中的所述待发送消息;
其中,存储在所述消息队列中的每一条消息均对应一个顺序标识,所述顺序标识用于标识服务器接收到消息的先后顺序。
可选地,所述装置还包括:
第二发送模块,用于根据所述消息接收端标识,向所述消息接收端发送消息拉取通知;
获取模块,用于在接收到所述消息接收端返回的消息拉取请求后,获取所述消息拉取请求中包括的第二顺序标识,所述第二顺序标识为所述服务器上一次向所述消息接收端转发的第一消息的顺序标识,所述第一消息指代上一次转发的消息中最后被所述服务器接收到的消息;
所述第一发送模块,用于向所述消息接收端转发所述消息队列中与所述第二顺序标识匹配的消息。
可选地,所述第一发送模块,用于在所述消息队列中确定顺序标识比所述第二顺序标识大的待下发消息;将所述待下发消息作为与所述第二顺序标识匹配的消息转发至所述消息接收端;
其中,越先被所述服务器接收到的消息,对应的顺序标识越小。
可选地,所述装置还包括:
第二接收模块,用于接收所述消息接收端发送的消息标记请求,所述消息标记请求由所述消息接收端在接收到服务器转发的消息后发送,所述消息标记请求中至少包括所述消息接收端本次接收到的第二消息的顺序标识,所述第二消息指代本次转发的消息中最后被所述服务器接收到的消息;
标记模块,用于将与所述第二消息的顺序标识匹配的消息标记为已读状态。
可选地,所述标记模块,用于将顺序标识比所述第二消息的顺序标识小且处于未读状态的消息标记为已读状态。
本发明实施例提供的技术方案带来的有益效果是:
服务器在接收到消息发送端发送的消息转发请求后,根据待发送消息的身份标识判断该待发送消息是否为非重复发送消息;若该待发送消息为非重复发送消息,则根据消息接收端标识将待发送消息转发至消息接收端。由于该消息传输机制对消息是否重发进行了检测,因此避免了消息重复发送情况的出现,确保了消息的可靠性,智能性较优、效果较佳、提升了用户粘度。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种交互系统的结构示意图;
图2是本发明实施例提供的一种消息传输方法的流程图;
图3是本发明实施例提供的一种消息传输方法的流程图;
图4是本发明实施例提供的一种消息传输装置的结构示意图;
图5是本发明实施例提供的一种消息传输装置的结构示意图;
图6是本发明实施例提供的一种消息传输装置的结构示意图;
图7是本发明实施例提供的一种消息传输装置的结构示意图;
图8是本发明实施例提供的一种服务器的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本发明实施例提供了一种如图1所示的用于消息传输的交互系统的示意图。参见图1,该交互系统包括消息发送端、消息接收端和服务器。在本发明实施例中,为了确保消息的可靠性、及时性和顺序性,服务器中包括了一个消息传输装置,该消息传输装置包括消息排重服务、消息顺序生成器和消息队列。其中,消息排重服务,可缓存最近一段时间(比如30分钟或60分钟等)内接收到的消息的身份标识;如果新接收到的一条消息的身份标识之前出现过,则确定该消息已经发送过,不需要再次发送,直接将该消息丢弃。消息顺序生成器,可为每条消息生成一个唯一的顺序标识。针对消息队列来讲,每个用户对应一个消息队列,服务器将同一用户的消息根据顺序标识按序存入消息队列中。消息队列同时还具备标记消息已读状态和拉取消息的功能。
图2是本发明实施例提供的一种消息传输方法的流程图。参见图2,本发明实施例提供的方法流程包括:
201、接收消息转发请求,该消息转发请求中至少包括消息接收端标识、待发送消息和待发送消息的身份标识。
202、根据该身份标识,判断待发送消息是否为非重复发送消息。
203、若待发送消息为非重复发送消息,则根据消息接收端标识,将待发送消息转发至消息接收端。
本发明实施例提供的方法,服务器在接收到消息发送端发送的消息转发请求后,根据待发送消息的身份标识判断该待发送消息是否为非重复发送消息;若该待发送消息为非重复发送消息,则根据消息接收端标识将待发送消息转发至消息接收端。由于该消息传输机制对消息是否重发进行了检测,因此避免了消息重复发送情况的出现,确保了消息的可靠性,智能性较优、效果较佳、提升了用户粘度。
可选地,根据消息接收端标识,将待发送消息转发至消息接收端,包括:
为待发送消息生成第一顺序标识;
根据第一顺序标识,将待发送消息按序存储在与消息接收端标识匹配的消息队列中;
向消息接收端转发存储在消息队列中的待发送消息;
其中,存储在消息队列中的每一条消息均对应一个顺序标识,顺序标识用于标识服务器接收到消息的先后顺序。
可选地,将待发送消息按序存储在与消息接收端标识匹配的消息队列中之后,该方法还包括:
根据消息接收端标识,向消息接收端发送消息拉取通知;
在接收到消息接收端返回的消息拉取请求后,获取消息拉取请求中包括的第二顺序标识,第二顺序标识为服务器上一次向消息接收端转发的第一消息的顺序标识,第一消息指代上一次转发的消息中最后被服务器接收到的消息;
向消息接收端转发消息队列中与第二顺序标识匹配的消息。
可选地,向消息接收端转发消息队列中与第二顺序标识匹配的消息,包括:
在消息队列中确定顺序标识比第二顺序标识大的待下发消息;
将待下发消息作为与第二顺序标识匹配的消息转发至消息接收端;
其中,越先被服务器接收到的消息,对应的顺序标识越小。
可选地,该方法还包括:
接收消息接收端发送的消息标记请求,消息标记请求由消息接收端在接收到服务器转发的消息后发送,消息标记请求中至少包括消息接收端本次接收到的第二消息的顺序标识,第二消息指代本次转发的消息中最后被服务器接收到的消息;
将与第二消息的顺序标识匹配的消息标记为已读状态。
可选地,将与第二消息的顺序标识匹配的消息标记为已读状态,包括:
将顺序标识比第二消息的顺序标识小且处于未读状态的消息标记为已读状态。
上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
图3是本发明实施例提供的一种消息传输方法的流程图。参见图2,本发明实施例提供的方法流程包括:
301、消息服务接收消息转发请求,该消息转发请求中至少包括消息接收端标识、待发送消息和待发送消息的身份标识。
用户A在消息发送端提供的输入页面输入待发送消息后,消息发送端为待发送消息生成唯一的身份标识;之后,用户A可通过点击输入页面上的发送按钮等操作触发消息发送端发送消息转发请求至服务器。其中,待发送消息可为语音信息、文本信息、图片、视频片段等等;消息接收端标识可为本端的MAC(Media Access Control,介质访问控制)地址、本端手机号码、用户A登录某一应用的用户名称或用户昵称、网络地址等;身份标识可为数字和字母混合的字符串,用于唯一标识一条消息,本发明实施例对上述内容均不进行具体限定。
302、消息排重服务根据该身份标识,判断待发送消息是否为非重复发送消息;若待发送消息为非重复发送消息,则执行下述步骤303。
在本发明实施例中,消息排重服务会缓存预设时间段内从消息发送端接收到的每一条消息的身份标识。其中,预设时间段可为30分钟或60分钟等等,本发明实施例对此不进行具体限定。这样,当消息排重服务新接收到消息发送端发送的一条待发送消息后,便会基于已经缓存的身份标识和该待发送消息的身份标识,判断该待发送消息是否为非重复发送消息。如果该待发送消息的身份标识与已经缓存的身份标识均不相同,则确定该待发送消息为非重复发送消息;如果该待发送消息的身份标识与已经缓存的任一身份标识相同,则确定该待发送消息为重复发送消息,将其直接丢弃。本发明实施例采取排重方式确保了消息的可靠性。
303、若待发送消息为非重复发送消息,则消息顺序生成器为待发送消息生成第一顺序标识。
其中,顺序标识由消息顺序生成器生成,用于标识服务器接收到消息的先后顺序。顺序标识的生成可以用户为单位,比如以消息接收端对应用户B为例,则服务器接收到第一条发送给用户B的消息后,可将其顺序标识命名为1,在接收到第二条发送给用户B的消息后,将其顺序标识命名为2,以此类推,在接收到第N条发送给用户B的消息后,将其顺序标识命名为N。顺序标识越大,表明服务器接收到的时间越晚,服务器后续转发其的时间也越晚,即消息发送端接收到其的时间也越晚。
其中,顺序标识可以数字、字母、或数字加字母等方式命名,本发明实施例对此不进行具体限定。本发明实施例仅以顺序标识越大,表明服务器接收到其的时间越晚,进而消息发送端接收到其的时间也越晚为例,进行举例说明。
304、根据第一顺序标识,将待发送消息按序存储在与消息接收端标识匹配的消息队列中。
在本发明实施例中,一个消息队列中存放一个用户的消息,所以根据消息接收端标识便可查询到与其匹配的消息队列。而存储在消息队列中的每一条消息均对应一个顺序标识,所以根据第一顺序标识可将该待发送消息按照顺序存储在消息队列中的相应位置。其中,先进入消息队列中的消息是先被服务器接收到的,先进入消息队列中的消息后续服务器也会先转发到消息接收端,以保证消息的顺序性和及时性。
305、消息服务根据消息接收端标识,向消息接收端发送消息拉取通知。
在本发明实施例中,服务器在将待发送消息存储在对应的消息队列中后,为了让消息接收端及时取走消息,以确保消息的及时性,还会向消息接收端发送消息拉取通知。
306、消息队列在接收到消息接收端返回的消息拉取请求后,获取消息拉取请求中包括的第二顺序标识。
其中,第二顺序标识为服务器上一次向消息接收端转发的第一消息的顺序标识。该第一消息指代上一次转发的消息中最后被服务器接收到的消息,最后被服务器接收到的消息,也即上一次转发的消息中该第一消息的顺序标识最大。由于顺序标识越大的消息越晚被消息接收端接收到,所以根据该第一消息的顺序标识可获知当前消息接收端接收消息的进度。
307、消息队列向消息接收端转发消息队列中与第二顺序标识匹配的消息。
在本发明实施例中,在向消息接收端转发消息队列中与第二顺序标识匹配的消息时,可采取下述方式实现:在与消息发送端标识匹配的消息队列中,确定顺序标识比第二顺序标识大的待下发消息;将待下发消息作为与第二顺序标识匹配的消息转发至消息接收端。
由于消息接收端当前的消息接收进度为第一消息,而顺序标识越大的消息越晚被消息接收端接收到,所以现在应该拉取比第二顺序标识大的消息。即,与第二顺序标识匹配的消息指代比第二顺序标识大的消息。
308、消息接收端显示与第二顺序标识匹配的消息,并对当前本地存储的顺序标识进行更新。
消息接收端又新接收到消息,在进行顺序标识更新时,基于本次接收到的消息中顺序标识最大的消息进行更新,以确保消息的顺序性和及时性。在进行消息显示时,可采取弹窗或者气泡的方式在显示界面上直接显示,本发明实施例对此不进行具体限定。
309、消息队列接收消息接收端发送的消息标记请求,该消息标记请求中至少包括消息接收端本次接收到的第二消息的顺序标识,将与第二消息的顺序标识匹配的消息标记为已读状态。
其中,第二消息指代本次转发的消息中最后被服务器接收到的消息。在本发明实施例中,消息接收端在接收到消息后,还会触发消息状态标记操作。在将与第二消息的顺序标识匹配的消息标记为已读状态时,可采取下述方式实现:将顺序标识比第二消息的顺序标识小且处于未读状态的消息标记为已读状态。
由于第二消息为消息接收端最晚接收到的消息,而本发明实施例是基于顺序标识进行消息转发的,顺序标识越大表明消息接收端接收到消息的时间越晚,所以比第二消息的顺序标识小的消息,消息接收端肯定已经全部接收到了,因此对这些消息中处于未读状态的消息全部进行标记,标记为已读状态。具体可设置flag标识位。比如,flag=0,标志未读;,flag=1,标志已读,本发明实施例对此不进行具体限定。
本发明实施例提供的方法,在接收到消息发送端的待发送消息后,首先对其进行是否重复发送的检测,在确定该待发送消息为非重复发送消息后,又为其分配顺序标识,并基于该顺序标识将该待发送消息存储至消息接收端的消息队列中,基于消息队列向消息接收端进行消息的转发,因此避免了消息重复发送、转发不够及时及消息转发顺序错乱等情况的出现,确保了消息传输的可靠性、及时性和顺序性,智能性较优、效果较佳、提升了用户粘度。
图4是本发明实施例提供的一种消息传输装置的结构示意图。参见图4,该装置包括:第一接收模块401、判断模块402、第一发送模块403。
第一接收模块401,用于接收消息转发请求,消息转发请求中至少包括消息接收端标识、待发送消息和待发送消息的身份标识;
判断模块402,用于根据身份标识,判断待发送消息是否为非重复发送消息;
第一发送模块403,用于若待发送消息为非重复发送消息,则根据消息接收端标识,将待发送消息转发至消息接收端。
可选地,参见图5,该装置还包括:
生成模块404,用于为所述待发送消息生成第一顺序标识;
存储模块405,用于根据所述第一顺序标识,将所述待发送消息按序存储在与所述消息接收端标识匹配的消息队列中;
所述第一发送模块403,用于向所述消息接收端转发存储在所述消息队列中的所述待发送消息;
其中,存储在消息队列中的每一条消息均对应一个顺序标识,顺序标识用于标识服务器接收到消息的先后顺序。
可选地,参见图6,该装置还包括:
第二发送模块406,用于根据消息接收端标识,向消息接收端发送消息拉取通知;
获取模块407,用于在接收到消息接收端返回的消息拉取请求后,获取消息拉取请求中包括的第二顺序标识,第二顺序标识为服务器上一次向消息接收端转发的第一消息的顺序标识,第一消息指代上一次转发的消息中最后被服务器接收到的消息;
第一发送模块403,用于向消息接收端转发消息队列中与第二顺序标识匹配的消息。
可选地,第一发送模块403,用于在消息队列中确定顺序标识比第二顺序标识大的待下发消息;将待下发消息作为与第二顺序标识匹配的消息转发至消息接收端;
其中,越先被服务器接收到的消息,对应的顺序标识越小。
可选地,参见图7,该装置还包括:
第二接收模块408,用于接收消息接收端发送的消息标记请求,消息标记请求由消息接收端在接收到服务器转发的消息后发送,消息标记请求中至少包括消息接收端本次接收到的第二消息的顺序标识,第二消息指代本次转发的消息中最后被服务器接收到的消息;
标记模块409,用于将与第二消息的顺序标识匹配的消息标记为已读状态。
可选地,标记模块409,用于将顺序标识比第二消息的顺序标识小且处于未读状态的消息标记为已读状态。
本发明实施例提供的装置,在接收到消息发送端的待发送消息后,首先对其进行是否重复发送的检测,在确定该待发送消息为非重复发送消息后,又为其分配顺序标识,并基于该顺序标识将该待发送消息存储至消息接收端的消息队列中,基于消息队列向消息接收端进行消息的转发,因此避免了消息重复发送、转发不够及时及消息转发顺序错乱等情况的出现,确保了消息传输的可靠性、及时性和顺序性,智能性较优、效果较佳、提升了用户粘度。
图8是根据一示例性实施例示出的一种消息传输装置800的框图。例如,装置800可以被提供为一服务器。参照图8,装置800包括处理组件822,其进一步包括一个或多个处理器,以及由存储器832所代表的存储器资源,用于存储可由处理组件822的执行的指令,例如应用程序。存储器832中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件822被配置为执行指令,以执行上述饮品推荐方法。
装置800还可以包括一个电源组件826被配置为执行装置800的电源管理,一个有线或无线网络接口880被配置为将装置800连接到网络,和一个输入输出(I/O)接口888。装置800可以操作基于存储在存储器832的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
需要说明的是:上述实施例提供的消息传输装置在传输消息时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的消息传输装置与消息传输方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种消息传输方法,其特征在于,所述方法包括:
接收消息转发请求,所述消息转发请求中至少包括消息接收端标识、待发送消息和所述待发送消息的身份标识;
缓存预设时间段内接收到的每一条消息的身份标识,基于已经缓存的身份标识和所述待发送消息的身份标识,判断所述待发送消息是否为非重复发送消息,如果所述待发送消息的身份标识与所述已经缓存的身份标识均不相同,则确定所述待发送消息为非重复发送消息;如果所述待发送消息的身份标识与所述已经缓存的任一身份标识相同,则确定所述待发送消息为重复发送消息;
若所述待发送消息为非重复发送消息,则为所述待发送消息生成第一顺序标识;
根据所述第一顺序标识,将所述待发送消息按序存储在与所述消息接收端标识匹配的消息队列中;
向所述消息接收端转发存储在所述消息队列中的所述待发送消息;
其中,存储在所述消息队列中的每一条消息均对应一个顺序标识,所述顺序标识用于标识服务器接收到消息的先后顺序。
2.根据权利要求1所述的方法,其特征在于,所述将所述待发送消息按序存储在与所述消息接收端标识匹配的消息队列中之后,所述方法还包括:
根据所述消息接收端标识,向所述消息接收端发送消息拉取通知;
在接收到所述消息接收端返回的消息拉取请求后,获取所述消息拉取请求中包括的第二顺序标识,所述第二顺序标识为所述服务器上一次向所述消息接收端转发的第一消息的顺序标识,所述第一消息指代上一次转发的消息中最后被所述服务器接收到的消息;
向所述消息接收端转发所述消息队列中与所述第二顺序标识匹配的消息。
3.根据权利要求2所述的方法,其特征在于,所述向所述消息接收端转发所述消息队列中与所述第二顺序标识匹配的消息,包括:
在所述消息队列中确定顺序标识比所述第二顺序标识大的待下发消息;
将所述待下发消息作为与所述第二顺序标识匹配的消息转发至所述消息接收端;
其中,越先被所述服务器接收到的消息,对应的顺序标识越小。
4.根据权利要求1至3中任一权利要求所述的方法,其特征在于,所述方法还包括:
接收所述消息接收端发送的消息标记请求,所述消息标记请求由所述消息接收端在接收到服务器转发的消息后发送,所述消息标记请求中至少包括所述消息接收端本次接收到的第二消息的顺序标识,所述第二消息指代本次转发的消息中最后被所述服务器接收到的消息;
将与所述第二消息的顺序标识匹配的消息标记为已读状态。
5.根据权利要求4所述的方法,其特征在于,所述将与所述第二消息的顺序标识匹配的消息标记为已读状态,包括:
将顺序标识比所述第二消息的顺序标识小且处于未读状态的消息标记为已读状态。
6.一种消息传输装置,其特征在于,所述装置包括:
第一接收模块,用于接收消息转发请求,所述消息转发请求中至少包括消息接收端标识、待发送消息和所述待发送消息的身份标识;
判断模块,用于缓存预设时间段内接收到的每一条消息的身份标识,基于已经缓存的身份标识和所述待发送消息的身份标识,判断所述待发送消息是否为非重复发送消息,如果所述待发送消息的身份标识与所述已经缓存的身份标识均不相同,则确定所述待发送消息为非重复发送消息;如果所述待发送消息的身份标识与所述已经缓存的任一身份标识相同,则确定所述待发送消息为重复发送消息;
第一发送模块,用于若所述待发送消息为非重复发送消息,则为所述待发送消息生成第一顺序标识;
根据所述第一顺序标识,将所述待发送消息按序存储在与所述消息接收端标识匹配的消息队列中;
向所述消息接收端转发存储在所述消息队列中的所述待发送消息;
其中,存储在所述消息队列中的每一条消息均对应一个顺序标识,所述顺序标识用于标识服务器接收到消息的先后顺序。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第二发送模块,用于根据所述消息接收端标识,向所述消息接收端发送消息拉取通知;
获取模块,用于在接收到所述消息接收端返回的消息拉取请求后,获取所述消息拉取请求中包括的第二顺序标识,所述第二顺序标识为所述服务器上一次向所述消息接收端转发的第一消息的顺序标识,所述第一消息指代上一次转发的消息中最后被所述服务器接收到的消息;
所述第一发送模块,用于向所述消息接收端转发所述消息队列中与所述第二顺序标识匹配的消息。
8.根据权利要求6至7中任一权利要求所述的装置,其特征在于,所述装置还包括:
第二接收模块,用于接收所述消息接收端发送的消息标记请求,所述消息标记请求由所述消息接收端在接收到服务器转发的消息后发送,所述消息标记请求中至少包括所述消息接收端本次接收到的第二消息的顺序标识,所述第二消息指代本次转发的消息中最后被所述服务器接收到的消息;
标记模块,用于将与所述第二消息的顺序标识匹配的消息标记为已读状态。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储至少一条指令,所述指令被处理器执行时实现权利要求1-5任一所述的消息传输方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510983259.7A CN106921554B (zh) | 2015-12-24 | 2015-12-24 | 消息传输方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510983259.7A CN106921554B (zh) | 2015-12-24 | 2015-12-24 | 消息传输方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106921554A CN106921554A (zh) | 2017-07-04 |
CN106921554B true CN106921554B (zh) | 2020-09-29 |
Family
ID=59457628
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510983259.7A Active CN106921554B (zh) | 2015-12-24 | 2015-12-24 | 消息传输方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106921554B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111131076B (zh) * | 2019-12-09 | 2023-02-03 | 深圳震有科技股份有限公司 | 基于消息队列的多用途数据接收方法及系统、计算机设备 |
CN111192571A (zh) * | 2019-12-30 | 2020-05-22 | 云知声智能科技股份有限公司 | 语音广播方法及装置 |
CN112118171A (zh) * | 2020-09-04 | 2020-12-22 | 完美世界控股集团有限公司 | 消息互通系统、方法、装置、计算机设备及可读存储介质 |
CN112631871A (zh) * | 2020-12-28 | 2021-04-09 | 北京大米科技有限公司 | 行为消息的处理方法、装置、存储介质及电子设备 |
CN117234709B (zh) * | 2023-08-31 | 2024-07-09 | 广州市玄武无线科技股份有限公司 | 一种基于消息中间件的去重方法、系统、设备和介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101971584A (zh) * | 2008-02-06 | 2011-02-09 | 高通股份有限公司 | 用于消息的递送确认的方法和设备 |
CN103220206A (zh) * | 2012-01-19 | 2013-07-24 | 阿里巴巴集团控股有限公司 | 一种消息发送方法、装置和一种消息接收方法、装置 |
CN103648085A (zh) * | 2013-12-11 | 2014-03-19 | 五八同城信息技术有限公司 | 一种克服网络抖动的移动终端消息传递方法 |
CN105024904A (zh) * | 2014-04-17 | 2015-11-04 | 上海米思软件科技有限公司 | 一种消息发送处理方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100070588A1 (en) * | 2008-09-15 | 2010-03-18 | Yahoo! Inc. | Reliability for instant messaging based on end point acknowledgements |
CN102137088B (zh) * | 2010-09-27 | 2013-10-09 | 华为技术有限公司 | 一种sdp系统消息交互方法、sdp系统和装置 |
CN104811366B (zh) * | 2014-01-26 | 2018-11-02 | 阿里巴巴集团控股有限公司 | 一种网络通讯消息的漫游方法及装置 |
CN103929353B (zh) * | 2014-04-25 | 2017-07-25 | 百度在线网络技术(北京)有限公司 | 即时消息的处理方法和装置 |
-
2015
- 2015-12-24 CN CN201510983259.7A patent/CN106921554B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101971584A (zh) * | 2008-02-06 | 2011-02-09 | 高通股份有限公司 | 用于消息的递送确认的方法和设备 |
CN103220206A (zh) * | 2012-01-19 | 2013-07-24 | 阿里巴巴集团控股有限公司 | 一种消息发送方法、装置和一种消息接收方法、装置 |
CN103648085A (zh) * | 2013-12-11 | 2014-03-19 | 五八同城信息技术有限公司 | 一种克服网络抖动的移动终端消息传递方法 |
CN105024904A (zh) * | 2014-04-17 | 2015-11-04 | 上海米思软件科技有限公司 | 一种消息发送处理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106921554A (zh) | 2017-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106921554B (zh) | 消息传输方法及装置 | |
CN109474688B (zh) | 即时通信网络请求消息的发送方法、装置、设备和介质 | |
CN112350924B (zh) | 通信方法、装置、终端和存储介质 | |
CN115004673B (zh) | 消息推送方法、装置、电子设备及计算机可读介质 | |
US7831673B1 (en) | Methods and systems for processing offline chat messages | |
US20170041255A1 (en) | Information transmission control method, apparatus, and system | |
EP2713641A1 (en) | Method for receiving data, method for transmitting data, mobile terminal, and server | |
JP2010533906A (ja) | グループ内のトピックをソートするための方法、システム及び装置 | |
CN110049134B (zh) | 客服聊天方法、装置、客服端、服务器及存储介质 | |
CN110391974A (zh) | 一种消息同步方法、服务端、终端及系统 | |
TW201412059A (zh) | 獲取聊天內容中地理位置的方法及設備 | |
CN104518946A (zh) | 一种删除即时通信消息的方法和装置 | |
CN110784393A (zh) | 消息自动回复方法和设备 | |
CN109728996B (zh) | 通讯信息的展示方法、用户设备、存储介质及装置 | |
JP7503152B2 (ja) | メール処理方法、装置、機器及び媒体 | |
CN103095748A (zh) | 一种发送好友更新微博消息的方法、服务器和系统 | |
CN105376137A (zh) | 一种即时通信方法和装置 | |
CN110708424B (zh) | 一种信息呈现方法、装置和电子设备 | |
US8983850B2 (en) | Translation system and method for multiple instant message networks | |
CN111194540A (zh) | 多主题对话的通信控制装置和方法、及计算机处理设备 | |
US20150163181A1 (en) | Multipurpose internet mail extensions ("mime") metadata for group messaging | |
CN110620672B (zh) | 多人会话数据处理方法、装置、计算机设备和存储介质 | |
CN111245874B (zh) | 信息推送方法、装置、服务器及存储介质 | |
CN108075960A (zh) | 一种即时通讯消息实现方法及装置 | |
JP2013196228A (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 | ||
CB02 | Change of applicant information |
Address after: Room 810, 8 / F, 34 Haidian Street, Haidian District, Beijing 100080 Applicant after: BEIJING D-MEDIA COMMUNICATION TECHNOLOGY Co.,Ltd. Address before: 100089 Beijing city Haidian District wanquanzhuang Road No. 28 Wanliu new building block A room 602 Applicant before: BEIJING D-MEDIA COMMUNICATION TECHNOLOGY Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |