首页 / 专利库 / 计算机网络 / 服务器 / 一种基于共享会话链路传输消息的方法及装置

一种基于共享会话链路传输消息的方法及装置

阅读:774发布:2021-06-09

专利汇可以提供一种基于共享会话链路传输消息的方法及装置专利检索,专利查询,专利分析的服务。并且本 申请 公开了一种基于共享会话链路传输消息的方法及装置,该方法包括:第一即时消息 服务器 通过与发送终端之间的共享会话链路,接收所述发送终端发送的消息,确定所述第一即时消息的类型。其中,即时消息服务器根据所述发送终端的注册信息,确定所述发送终端是否具有基于共享会话链路传输消息的能 力 。用户终端通过与其所归属的即时消息服务器之间的共享会话链路,可以向多个用户终端或多个群聊消息服务器发送或接收点对点文本消息或群聊消息。通过本申请可以在用户终端保持多方通讯时,减少会话链路的数量,节约网络资源,进而提高终端对即时消息的处理能力。,下面是一种基于共享会话链路传输消息的方法及装置专利的具体信息内容。

1.一种基于共享会话链路传输消息的方法,其特征在于,包括:
第一即时消息服务器通过与发送终端之间的共享会话链路,接收所述发送终端发送的消息;
若所述消息为点对点文本消息且所述点对点文本消息的接收终端归属于所述第一消息服务器,则所述第一即时消息服务器将所述消息发送给所述消息的接收终端;或者将所述消息转换为在即时消息服务器间进行传输的消息格式,并将格式转换后的消息发送给第二即时消息服务器,所述第二即时消息服务器为所述消息的接收终端归属的即时消息服务器;
若所述消息为群聊消息,则所述第一即时消息服务器将所述消息转换为在群聊消息服务器间进行传输的消息格式,并将格式转换后的消息发送给所述群聊服务器。
2.如权利要求1所述的方法,其特征在于,所述消息为点对点文本消息,用于在共享会话链路传输的消息为MSRP协议点对点文本消息;所述第一即时消息服务器将所述消息转换为用于在即时消息服务器间进行传输的消息格式,包括:所述第一即时消息服务器分别将所述MSRP协议点对点文本消息中的发送方指示字段、会话标识字段和业务类型指示字段,转换为SIP协议消息中的发送方指示字段、会话标识字段和业务类型指示字段;或者,所述消息为群聊消息,用于在共享会话链路传输的消息为MSRP协议群聊消息;所述第一即时消息服务器将所述消息转换为用于在群聊消息服务器间进行传输的消息格式,包括:所述第一即时消息服务器分别将所述MSRP协议群聊消息中的接收方指示字段、会话标识字段和业务类型指示字段,转换为SIP协议群聊消息中的接收方指示字段、会话标识字段和业务类型指示字段。
3.如权利要求1所述的方法,其特征在于,所述第一即时消息服务器通过与发送终端之间的共享会话链路,接收所述发送终端发送的消息之前,还包括:
所述第一即时消息服务器接收所述发送终端发送的创建共享会话链路的请求,确定所述发送终端具有基于共享会话链路传输消息的能,则与所述发送终端协商创建所述共享会话链路;或者
所述第一即时消息服务器确定所述发送终端具有基于共享会话链路传输消息的能力,则向所述发送终端发送创建共享会话链路的命令,并与所述发送终端协商创建所述共享会话链路。
4.如权利要求1所述的方法,其特征在于,所述第一即时消息服务器将所述消息发送给所述消息的接收终端,包括:
所述第一即时消息服务器若确定与所述消息的接收终端之间不存在共享会话链路,则确定所述接收终端是否具有基于共享会话链路传输消息的能力,若具有所述能力,则向所述接收终端发送创建共享会话链路的命令,并与所述接收终端协商创建所述共享会话链路;否则将所述消息通过SIP协议发送给所述消息的接收终端。
5.如权利要求1所述的方法,其特征在于,还包括:
所述第一即时消息服务器若在设定长时间内未通过与所述发送终端之间的共享会话链路传输消息,则删除与所述发送终端之间的共享会话链路。
6.如权利要求1所述的方法,其特征在于,还包括:
所述第一即时消息服务器接收所述发送终端的注册请求,并对所述发送终端进行注册,其中,所述注册请求携带所述发送终端是否具有基于共享会话链路传输消息的能力的指示信息。
7.一种基于共享会话链路传输消息的方法,其特征在于,包括:
第二即时消息服务器接收来自于第一即时消息服务器或群聊消息服务器的消息;
所述第二即时消息服务器将所述消息转换为用于在共享会话链路上传输的消息格式;
所述第二即时消息服务器将格式转换后的消息通过与所述消息的接收终端之间的共享会话链路发送给所述接收终端。
8.如权利要求7所述的方法,其特征在于,所述消息为点对点文本消息,用于在共享会话链路传输的消息为MSRP协议点对点文本消息;所述第二即时消息服务器将所述消息转换为用于在共享会话链路上进行传输的消息格式,包括:所述第二即时消息服务器分别将SIP协议消息中的发送方指示字段、会话标识字段和业务类型指示字段,转换为所述MSRP协议点对点文本消息中的发送方指示字段、会话标识字段和业务类型指示字段;或者,所述第二消息为群聊消息,用于在共享会话链路传输的消息为MSRP协议群聊消息;所述第二即时消息服务器将所述消息转换为用于在共享会话链路进行传输的消息格式,包括:所述第二即时消息服务器分别将SIP协议消息中的接收方指示字段、会话标识字段和业务类型指示字段,转换为所述MSRP协议群聊消息中的接收方指示字段、会话标识字段和业务类型指示字段。
9.如权利要求6所述的方法,其特征在于,所述第二即时消息服务器将格式转换后的消息通过与所述消息的接收终端之间的共享会话链路发送给所述接收终端之前,还包括:
所述第二即时消息服务器确定所述消息的接收终端具有基于共享会话链路传输消息的能力,则向所述接收终端发送创建共享会话链路的请求,并与所述接收终端协商创建所述共享会话链路。
10.如权利要求7所述的方法,其特征在于,还包括:
所述第二即时消息服务器若在设定长时间内未通过与所述接收终端之间的共享会话链路传输消息,则删除与所述接收终端之间的共享会话链路。
11.如权利要求7所述的方法,其特征在于,还包括:
所述第二即时消息服务器接收所述接收终端的注册请求,并对所述接收终端进行注册,其中,所述注册请求携带所述接收终端是否具有基于共享会话链路传输消息的能力的指示信息。
12.一种即时消息服务器,其特征在于,包括:第一接收单元、第一发送单元、第二接收单元、第二发送单元,以及上行消息处理单元和下行消息处理单元;
所述第一接收单元,用于通过即时消息服务器与发送终端之间的共享会话链路,接收所述发送终端发送的消息,其中,所述消息包括点对点文本消息或群聊消息;
所述上行消息处理单元,用于确定所述第一即时消息的类型;若所述消息为点对点文本消息且所述点对点文本消息的接收终端归属于所述即时消息服务器,则将所述消息发送给下行消息处理单元,或者将所述消息转换为在即时消息服务器间进行传输的消息格式,并将格式转换后的消息发送给第二发送单元;若所述消息为群聊消息,则将所述消息转换为在群聊消息服务器间进行传输的消息格式,并发送给所述第二发送单元;
所述下行消息处理单元,用于将来自于所述上行消息处理单元的消息,发送给所述第一发送单元;
所述第一发送单元,通过与所述消息的接收终端之间的共享会话链路发送给所述消息的接收终端;
所述第二发送单元,用于将来自于所述上行消息处理单元的点对点文本消息发送给第二即时消息服务器,所述第二即时消息服务器为所述点对点文本消息的接收终端归属的即时消息服务器;以及,用于将来自于所述上行消息处理单元的群聊消息发送给群聊服务器;
所述第二接收单元,用于接收来自于其他即时消息服务器或群聊消息服务器的消息;
所述下行消息处理单元,用于将所述第二接收单元接收的消息转换为用于在共享会话链路上传输的消息格式,将格式转换后的消息发送给所述第一发送单元;
所述第一发送单元,还用于将来自于所述下行消息处理单元的消息通过与所述消息的接收终端之间的共享会话链路发送给所述接收终端。
13.如权利要求12所述的即时消息服务器,其特征在于:
所述第一接收单元,还用于接收所述发送终端发送的创建共享会话链路的请求;
所述即时消息服务器,还包括:
共享会话链路处理单元,用于在所述第一接收单元通过与发送终端之间的共享会话链路接收所述发送终端发送的消息之前,根据所述发送终端发送的创建共享会话链路的请求,确定所述发送终端具有基于共享会话链路传输消息的能力,则与所述发送终端协商创建所述共享会话链路;或者,在所述第一接收单元通过与发送终端之间的共享会话链路接收所述发送终端发送的消息之前,确定所述发送终端具有基于共享会话链路传输消息的能力,则向所述发送终端发送创建共享会话链路的命令,并与所述发送终端协商创建所述共享会话链路。
14.如权利要求12所述的即时消息服务器,其特征在于,所述即时消息服务器,还包括:
共享会话链路处理单元,用于在所述第一发送单元将所述消息通过与所述消息的接收终端之间的共享会话链路发送给所述消息的接收终端之前,确定与所述消息的接收终端之间不存在共享会话链路,则确定所述接收终端是否具有基于共享会话链路传输消息的能力,若具有所述能力,则向所述接收终端发送创建共享会话链路的命令,并与所述接收终端协商创建所述共享会话链路。
15.如权利要求12所述的即时消息服务器,其特征在于,所述即时消息服务器,还包括:
共享会话链路处理单元,若确定在设定长时间内,未通过与所述发送终端之间的共享会话链路传输消息,则删除与所述发送终端之间的共享会话链路;和/或,若确定在设定长时间内,未通过与所述接收终端之间的共享会话链路传输消息,则删除与所述接收终端之间的共享会话链路。
16.一种通信装置,其特征在于,包括:处理器、存储器和通信接口
所述存储器,用于存储计算机指令;
所述处理器,用于运行所述计算机指令以实现如权利要求1至6中任一项所述的方法。
17.一种通信装置,其特征在于,包括:处理器、存储器和通信接口
所述存储器,用于存储计算机指令;
所述处理器,用于运行所述计算机指令以实现如权利要求7至11中任一项所述的方法。
18.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机指令,所述计算机指令被处理器执行时实现权利要求1至6中任一项所述的方法。
19.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机指令,所述计算机指令被处理器执行时实现权利要求7至11中任一项所述的方法。

说明书全文

一种基于共享会话链路传输消息的方法及装置

技术领域

[0001] 本申请涉及通信技术领域,尤其涉及一种基于共享会话链路传输消息的方法及装置。

背景技术

[0002] 随着IP多媒体系统(IP Multimedia Subsystem,IMS)的发展,即时消息(Instant Messaging,IM)在通信业务中发挥着越来越重要的作用。多个终端间的即时消息传输主要通过会话初始协议(Session Initiation Protocol,SIP)和消息会话中继协议(Message Session Relay Control Protocol,MSRP)实现,通过MSRP协议创建数据通道,传输具体数据,通过SIP协议实现对MSRP通道的控制,如创建、维持和撤销等。
[0003] 现有技术中,即时消息包括点对点业务和群聊业务,点对点业务主要采用独立(standalone)方式,即每条消息都是独立发送的,不需要建立长链接会话,群聊业务主要采用会话(session)方式,终端与即时消息服务器间需建立基于SIP的MSRP链路。其中,若消息小于设定值(比如小于900Bit),则采用寻呼模式(Pager Mode)发送,不需要建立长链路发送;若消息大于等于设定值,则采用大本文模式(Large Message Mode)发送,终端与即时消息服务器之间需进行媒体协商再通过MSRP发送。
[0004] 在独立方式下,终端对发送消息的内容大小进行判断,进而选择是否建立长连接会话,降低了终端对即时消息的处理性能;在会话方式下,若终端与即时消息服务器保持多个群聊业务,则需建立多个基于SIP的MSRP会话链路,造成了会话链路资源的浪费。
[0005] 随着即时消息业务广泛应用于日常生活中,如何提高点对点文本消息的传输利用率,减少会话连接的数量,提高终端对即时消息的处理能是需要解决的问题。发明内容
[0006] 本申请实施例提供一种基于共享会话链路传输消息的方法及装置,在终端与其归属的即时消息服务器之间通过共享会话链路发送或接收点对点文本消息和群聊消息,用以减少会话链路的数量,节约了网络资源,进而提高终端对即时消息的处理能力。
[0007] 第一方面,提供一种基于共享会话链路传输消息的方法,包括:第一即时消息服务器通过与发送终端之间的共享会话链路,接收所述发送终端发送的消息;若所述消息为点对点文本消息且所述点对点文本消息的接收终端归属于所述第一消息服务器,则所述第一即时消息服务器将所述消息发送给所述消息的接收终端;或者将所述消息转换为在即时消息服务器间进行传输的消息格式,并将格式转换后的消息发送给第二即时消息服务器,所述第二即时消息服务器为所述消息的接收终端归属的即时消息服务器;若所述消息为群聊消息,则所述第一即时消息服务器将所述消息转换为在群聊消息服务器间进行传输的消息格式,并将格式转换后的消息发送给所述群聊服务器。
[0008] 可选地,所述消息为点对点文本消息,用于在共享会话链路传输的消息为MSRP协议点对点文本消息;所述第一即时消息服务器将所述消息转换为用于在即时消息服务器间进行传输的消息格式,包括:所述第一即时消息服务器分别将所述MSRP协议点对点文本消息中的发送方指示字段、会话标识字段和业务类型指示字段,转换为SIP协议消息中的发送方指示字段、会话标识字段和业务类型指示字段;或者,所述消息为群聊消息,用于在共享会话链路传输的消息为MSRP协议群聊消息;所述第一即时消息服务器将所述消息转换为用于在群聊消息服务器间进行传输的消息格式,包括:所述第一即时消息服务器分别将所述MSRP协议群聊消息中的接收方指示字段、会话标识字段和业务类型指示字段,转换为SIP协议群聊消息中的接收方指示字段、会话标识字段和业务类型指示字段。
[0009] 可选地,所述第一即时消息服务器通过与发送终端之间的共享会话链路,接收所述发送终端发送的消息之前,还包括:所述第一即时消息服务器接收所述发送终端发送的创建共享会话链路的请求,确定所述发送终端具有基于共享会话链路传输消息的能力,则与所述发送终端协商创建所述共享会话链路;或者所述第一即时消息服务器确定所述发送终端具有基于共享会话链路传输消息的能力,则向所述发送终端发送创建共享会话链路的命令,并与所述发送终端协商创建所述共享会话链路。
[0010] 可选地,所述第一即时消息服务器将所述消息发送给所述消息的接收终端,包括:所述第一即时消息服务器若确定与所述消息的接收终端之间不存在共享会话链路,则确定所述接收终端是否具有基于共享会话链路传输消息的能力,若具有所述能力,则向所述接收终端发送创建共享会话链路的命令,并与所述接收终端协商创建所述共享会话链路。否则将所述消息通过SIP协议发送给所述消息的接收终端。
[0011] 可选地,所述第一即时消息服务器若在设定长时间内未通过与所述发送终端之间的共享会话链路传输消息,则删除与所述发送终端之间的共享会话链路。
[0012] 可选地,所述第一即时消息服务器接收所述发送终端的注册请求,并对所述发送终端进行注册,其中,所述注册请求携带所述发送终端是否具有基于共享会话链路传输消息的能力的指示信息。
[0013] 第二方面,提供一种基于共享会话链路纯属消息的方法,包括:第二即时消息服务器接收来自于第一即时消息服务器或群聊消息服务器的消息;所述第二即时消息服务器将所述消息转换为用于在共享会话链路上传输的消息格式;所述第二即时消息服务器将格式转换后的消息通过与所述消息的接收终端之间的共享会话链路发送给所述接收终端。
[0014] 可选地,所述消息为点对点文本消息,用于在共享会话链路传输的消息为MSRP协议点对点文本消息;所述第二即时消息服务器将所述消息转换为用于在共享会话链路上进行传输的消息格式,包括:所述第二即时消息服务器分别将SIP协议消息中的发送方指示字段、会话标识字段和业务类型指示字段,转换为所述MSRP协议点对点文本消息中的发送方指示字段、会话标识字段和业务类型指示字段;或者,所述第二消息为群聊消息,用于在共享会话链路传输的消息为MSRP协议群聊消息;所述第二即时消息服务器将所述消息转换为用于在共享会话链路进行传输的消息格式,包括:所述第二即时消息服务器分别将SIP协议消息中的接收方指示字段、会话标识字段和业务类型指示字段,转换为所述MSRP协议群聊消息中的接收方指示字段、会话标识字段和业务类型指示字段。
[0015] 可选地,所述第二即时消息服务器将格式转换后的消息通过与所述消息的接收终端之间的共享会话链路发送给所述接收终端之前,还包括:所述第二即时消息服务器确定所述消息的接收终端具有基于共享会话链路传输消息的能力,则向所述接收终端发送创建共享会话链路的请求,并与所述接收终端协商创建所述共享会话链路。
[0016] 可选地,所述第二即时消息服务器若在设定长时间内未通过与所述接收终端之间的共享会话链路传输消息,则删除与所述接收终端之间的共享会话链路。
[0017] 可选地,所述第二即时消息服务器接收所述接收终端的注册请求,并对所述接收终端进行注册,其中,所述注册请求携带所述接收终端是否具有基于共享会话链路传输消息的能力的指示信息。
[0018] 第三方面,提供一种即时消息服务器,包括:第一接收单元、第一发送单元、第二接收单元、第二发送单元,以及上行消息处理单元和下行消息处理单元。
[0019] 可选地,所述第一接收单元用于通过即时消息服务器与发送终端之间的共享会话链路,接收所述发送终端发送的消息,其中,所述消息包括点对点文本消息或群聊消息。
[0020] 可选地,所述上行消息处理单元用于确定所述第一即时消息的类型;若所述消息为点对点文本消息且所述点对点文本消息的接收终端归属于所述即时消息服务器,则将所述消息发送给下行消息处理单元,或者将所述消息转换为在即时消息服务器间进行传输的消息格式,并将格式转换后的消息发送给第二发送单元;若所述消息为群聊消息,则将所述消息转换为在群聊消息服务器间进行传输的消息格式,并发送给所述第二发送单元。
[0021] 可选地,所述下行消息处理单元用于将来自于所述上行消息处理单元的消息,发送给所述第一发送单元。
[0022] 可选地,所述第一发送单元通过与所述消息的接收终端之间的共享会话链路发送给所述消息的接收终端。
[0023] 可选地,所述第二发送单元用于将来自于所述上行消息处理单元的点对点文本消息发送给第二即时消息服务器,所述第二即时消息服务器为所述点对点文本消息的接收终端归属的即时消息服务器;以及,用于将来自于所述上行消息处理单元的群聊消息发送给群聊服务器。
[0024] 可选地,所述第二接收单元用于接收来自于其他即时消息服务器或群聊消息服务器的消息。
[0025] 可选地,所述下行消息处理单元用于将所述第二接收单元接收的消息转换为用于在共享会话链路上传输的消息格式,将格式转换后的消息发送给所述第一发送单元。
[0026] 可选地,所述第一发送单元还用于将来自于所述下行消息处理单元的消息通过与所述消息的接收终端之间的共享会话链路发送给所述接收终端。
[0027] 可选地,所述第一接收单元还用于接收所述发送终端发送的创建共享会话链路的请求;所述即时消息服务器,还包括:共享会话链路处理单元,用于在所述第一接收单元通过与发送终端之间的共享会话链路接收所述发送终端发送的消息之前,根据所述发送终端发送的创建共享会话链路的请求,确定所述发送终端具有基于共享会话链路传输消息的能力,则与所述发送终端协商创建所述共享会话链路;或者,在所述第一接收单元通过与发送终端之间的共享会话链路接收所述发送终端发送的消息之前,确定所述发送终端具有基于共享会话链路传输消息的能力,则向所述发送终端发送创建共享会话链路的命令,并与所述发送终端协商创建所述共享会话链路。
[0028] 可选地,所述即时消息服务器还包括:共享会话链路处理单元,用于在所述第一发送单元将所述消息通过与所述消息的接收终端之间的共享会话链路发送给所述消息的接收终端之前,确定与所述消息的接收终端之间不存在共享会话链路,则确定所述接收终端是否具有基于共享会话链路传输消息的能力,若具有所述能力,则向所述接收终端发送创建共享会话链路的命令,并与所述接收终端协商创建所述共享会话链路。
[0029] 可选地,所述即时消息服务器还包括:共享会话链路处理单元,若确定在设定长时间内,未通过与所述发送终端之间的共享会话链路传输消息,则删除与所述发送终端之间的共享会话链路;和/或,若确定在设定长时间内,未通过与所述接收终端之间的共享会话链路传输消息,则删除与所述接收终端之间的共享会话链路。
[0030] 第四方面,提供一种通信装置,包括:处理器、存储器和通信接口;所述存储器,用于存储计算机指令;所述处理器,用于运行所述计算机指令以实现上述第一方面中任一项所述的方法。
[0031] 第五方面,提供一种通信装置,包括:处理器、存储器和通信接口;所述存储器,用于存储计算机指令;所述处理器,用于运行所述计算机指令以实现上述第二方面中任一项所述的方法。
[0032] 第六方面,提供一种计算机可读存储介质,所述存储介质存储有计算机指令,所述计算机指令被处理器执行如上述第一方面中任一项所述的方法。
[0033] 第七方面,提供一种计算机可读存储介质,所述存储介质存储有计算机指令,所述计算机指令被处理器执行如上述第二方面中任一项所述的方法。
[0034] 根据本申请的上述实施例,在上行方向上,发送终端发送给接收终端的点对点文本消息和群聊消息均可以通过发送终端与即时消息服务器之间的共享会话链路传输,在下行方向上,即时消息服务器可以通过与接收终端之间的共享会话链路将需要发送给接收终端的点对点文本消息和群聊消息发送给接收终端(其中,群聊消息可以包括不同群聊业务的消息),由于点对点文本消息和群聊消息均可通过终端与即时消息服务器之间的共享会话链路传输,因而无需针对不同的群聊业务建立不同的会话链路,因此在用户保持多方通信(比如进行多个群聊业务)时,可以减少会话链路的数量,节约网络资源,进而提高终端对即时消息的处理能力。附图说明
[0035] 图1为本申请实施例中的网络架构图;
[0036] 图2为本申请实施例中的注册流程图
[0037] 图3a为本申请实施例提供的一种归属于同一即时消息服务器的终端间点对点文本消息传输方法的流程图;
[0038] 图3b为本申请实施中的归属于同一个即时消息服务器下两个终端间点对点文本消息传输的信令交互流程图;
[0039] 图4a为本申请实施例提供的一种归属于不同即时消息服务器的终端间点对点文本消息传输方法的流程图;
[0040] 图4b为本申请实施例中的归属于不同即时消息服务器两个终端间点对点文本消息传输的交互流程图;
[0041] 图5为本申请实施例中的终端与即时消息服务器间链路的释放流程图;
[0042] 图6为本申请实施例提供的一种即时消息服务器的结构示意图;
[0043] 图7为本申请实施例提供的通信装置的结构示意图。

具体实施方式

[0044] 下面结合附图对本申请实施例进行详细描述。
[0045] 需要说明的是本申请中的术语“第一”、“第二”是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
[0046] 本申请实施例所提供的方法实施例可以在终端,比如移动终端(如手机、平板电脑等)、计算机终端或者类似的运算装置中执行。本申请实施例中的终端可以发送或接收即时消息。即时消息服务器(Instant Messenger Application Server,IM AS),负责接收发送终端提交的消息,或向接收终端发送消息,根据接收方地址进行发送,目标为终端或终端归属的即时消息服务器或群聊服务器,并将接收或发送消息的格式转换为适应于相应会话链路上进行传输的格式;群聊服务器(Group Chat Application Server,GC AS),接收即时消息服务器发送的消息,根据群ID查询对应的群成员,向群成员所归属的即时消息服务器发送消息。
[0047] 图1示例性示出了适用于本申请实施例的一种网络架构。如图1所示的网络架构图,终端1和终端2归属于即时消息服务器1,终端2和终端3归属于即时消息服务器2。即时消息服务器1和即时消息服务器2与群聊服务器1连接。
[0048] 终端与其所归属的即时消息服务器之间可传输即时消息,如点对点文本消息、群聊消息等。如果即时消息的发送终端与接收终端不在同一个IMS(IP Multimedia Subsystem,IP多媒体子系统)域或者不归属于同一即时消息服务器,则发送终端所归属的即时消息可将即时消息发送给接收终端所归属的即时消息服务器,以便发送给接收终端。如果交互的即时消息为群聊消息,则即时消息服务器将群聊消息发送给群聊服务器进行处理。
[0049] 其中,即时消息服务器之间,即时消息服务器与群聊服务器之间,可通过SIP协议传输即时消息。
[0050] 本申请实施例中,终端与即时消息服务器之间可通过建立的会话链路传输点对点文本消息、群聊消息等即时消息,其中,通过该会话链路可传输不同群聊业务的群聊消息(比如不同的群的群聊消息)。
[0051] 为描述方便,本申请实施例中将具有上述特性的会话链路称为共享会话链路。可选地,该会话链路可以是基于MSRP协议的会话链路,称为共享MSRP会话链路,相应地,在该共享MSRP会话链路上传输的消息称为MSRP协议消息。以下实施例中,以MSRP共享会话链路为例描述。
[0052] 可选地,MSRP协议消息与SIP消息中的重要头域要保持对应,可以基于MSRP协议消息体的结构进行扩展,以得到本申请实施例中的MSRP协议消息。表1示例性地示出了扩展字段。MSRP协议消息中的字段X-From对应SIP头域中的From字段,表示消息发送方,对于群聊下行消息,在X-From中填写对应群的统一资源标识符,携带isfocus参数以便终端将其识别为群聊消息;MSRP协议消息中的字段X-To对应SIP头域中的To,表示消息接收方,对于群聊上行消息,在X-To中填写第一位群成员的信息,其他群成员信息鼓接收终端列表方式封装;共享MSRP消息中的字段X-Conv对应SIP头域中的Conversation-ID,表示会话ID;MSRP协议消息中的字段X-Type对应SIP头域中Accept-Contact的表示用简化后的字符串表示消息的类型。
[0053] 表1:共享MSRP消息中对应SIP消息的头域参数
[0054]
[0055] 具体的,MSRP协议消息中的重要头域X-Type中简化字符串所代表的含义如表2所示,其中MSRP协议消息可以同时携带多个简化字符串,以“;”隔开表示。
[0056] 表2:X-Type中简化字符串说明
[0057]
[0058]
[0059] 根据图1所示的网络架构,终端与即时消息服务器之间可建立共享会话链路(比如共享MSRP链路)。具体实施时,具有基于共享会话链路传输消息的能力的终端,才能与即时消息服务器建立共享会话链路,服务器可根据终端的相关信息确定终端是否具有基于共享会话链路传输消息的能力。
[0060] 可选地,终端可以在注册时,将自己的能力信息发送给即时消息服务器。
[0061] 如图2所示为本申请实施例提供的注册流程图,包括:
[0062] S201,终端向其归属的即时消息服务器发送注册请求(REGISTER),该注册请求携带该终端是否具有基于共享会话链路传输消息的能力的指示信息。
[0063] 具体实施时,该注册请求为SIP消息,该SIP消息中包括feature tag字段,该字段中可携带如表3所示的标签,用于标识终端具备基于共享会话链路传输信息的能力。
[0064] 表3:表示具备共享会话链路能力的标签
[0065]
[0066] S202,即时消息服务器收到注册请求,对该终端进行注册,并可进一步向终端返回注册响应(比如200消息)。
[0067] 即时消息服务器将终端具备共享会话链路能力的信息进行保存,以便当即时消息服务器接收到终端发起的会话建立请求时,根据终端注册时保持的注册信息,确定该终端是否具有基于共享会话链路传输消息的能力,从而确定是否能够与该终端建立共享会话链路。
[0068] 如图3a所示,本申请实施例提供一种基于共享会话链路传输方法流程图,该流程以归属于同一即时消息服务器的发送终端向接收终端发送点对点文本消息为例描述,其中,终端A作为发送终端向作为接收终端的终端B发送点对点文本消息。该方法包括:
[0069] S301:即时消息服务器通过与终端A之间的共享会话链路,接收终端A发送的即时消息;
[0070] S302:即时消息服务器确定该即时消息的类型。本流程中,即时消息服务器确定该即时消息为点对点文本消息;
[0071] S303:即时消息服务器将该即时消息通过与终端B之间的共享会话链路发送给该消息的接收终端。
[0072] 可选地,终端A发送消息之前,若与即时消息服务器之间尚未建立共享会话链路,则该终端可发起共享会话链路的建立过程。具体地,发送终端可向即时消息服务器发送会话建立请求,即时消息服务器收到该请求后,可判断该终端是否具有基于共享会话链路进行消息传输的能力,若判定为是,则与该终端建立共享会话链路。
[0073] 可选地,终端A与即时消息服务器之间的共享会话链路,也可以是即时消息服务器发起建立的。在一种可能的场景中,即时消息服务器接收到其他终端发送给作为消息接收方的终端A的消息后,判断与终端A之间尚未建立共享会话链路,则查询终端A是否具有基于共享会话链路进行消息传输的能力,若判定为是,则与终端A建立共享会话链路。
[0074] 可选地,即时消息服务器在将该消息通过与终端B之间的共享会话链路发送给终端B之前,若与终端B之间尚未建立有共享会话链路,则查询终端B是否具有基于共享会话链路进行消息传输的能力,若判定为是,则与该终端建立共享会话链路。
[0075] 根据以上流程,在一种可能的场景中,终端A与即时消息服务器之间若无法建立共享会话链路,则终端A通过SIP协议将点对点文本消息发送给即时消息服务器。在另一种可能的场景中,终端B与即时消息服务器之间若无法建立共享会话链路,则即时消息服务器通过SIP协议将点对点文本消息发送给终端B。
[0076] 根据上述图3a所示的流程,图3b示出了对应的消息交互流程。该流程中,终端A和终端B归属于同一个即时消息服务器,且终端A和终端B具有基于共享会话链路进行消息传输的能力。
[0077] 该交互流程包括:
[0078] S310:终端A向其归属的即时消息服务器发送INVITE消息,携带自己与即时消息服务器之间的建链信息(包括IP地址、端口等),目的终端的地址。
[0079] S311:即时消息服务器收到INVITE消息后,查询终端B的注册信息,确定终端B具有基于共享会话链路传输消息的能力,因此根据目的终端的地址选择路由,向终端B发送INVITE消息,以请求建立共享MSRP会话链路,其中携带自己与终端B之间的建链信息(包括IP地址、端口等)。
[0080] S312:即时消息服务器向终端A返回200OK消息,其中携带自己的建链信息(包括IP地址、端口等);即时消息服务器还根据终端A的注册信息,确定终端A具有基于共享会话链路传输消息的能力。
[0081] S313:终端A收到200OK消息,向即时消息服务器返回ACK消息,以确认收到200OK消息。
[0082] S314:终端A与即时消息服务器根据协商的建链信息创建共享MSRP会话链路MSRP1。
[0083] S315:终端B收到INVITE消息,返回200OK消息,携带终端B的建链信息(包括IP地址、端口等)。
[0084] S316:即时消息服务器收到200OK消息,向终端B返回ACK消息。
[0085] S317:终端B与即时消息服务器根据协商的建链信息建链共享MSRP会话链路MSRP2。
[0086] S318:即时消息服务器通过共享MSRP1链路接收终端A发送的即时消息,该即时消息的接收终端为终端B。该即时消息可以包括点对点文本消息或群聊消息,本例子中,该即时消息为点对点文本消息。
[0087] S319:即时消息服务器通过共享MSRP2链路向终端B发送终端A发送的即时消息。
[0088] 需要说明的是,S318~S319可能执行多次。当终端A需要向终端B发送即时消息时,即可基于建立的共享会话链路传输该即时消息。
[0089] 如图4a所示,本申请实施例提供一种基于共享会话链路传输方法流程图,该流程以归属于不同的即时消息服务器的终端交互点对点文本消息为例描述,其中,终端A作为发送终端向作为接收终端的终端B发送点对点文本消息。终端A归属于即时消息服务器1,终端B归属于即时消息服务器2。
[0090] 该方法包括:
[0091] S401:即时消息服务器1通过与终端A之间的共享会话链路,接收终端A发送的即时消息;
[0092] S402:即时消息服务器1确定该即时消息的类型。本流程中,即时消息服务器确定该即时消息为点对点文本消息。
[0093] S403:即时消息服务器1确定该即时消息的接收终端归属于即时消息服务器2,则将该即时消息转换为SIP协议消息格式,并发送给即时消息服务器2。
[0094] 该步骤中,在进行消息格式转换时,即时消息服务器分别将从共享MSRP会话链路接收到的MSRP协议点对点文本消息中的发送方指示字段、会话标识字段和业务类型指示字段,转换为SIP协议点对点文本消息的发送方指示字段、会话标识字段和业务类型指示字段。其中,共享MSRP会话链路上传输的MSRP协议点对点文本消息(本申请实施例中称为MSRP协议点对点文本消息)的头域参数,与SIP协议中点对点文本消息的头域参数之间的对应关系,可参见表1和表2所示。
[0095] S404:即时消息服务器2将该即时消息转换为用于共享会话链路进行传输的消息格式,并将该即时消息通过与终端B之间的共享会话链路发送给B终端。
[0096] 该步骤中,在进行消息格式转换时,即时消息服务器分别将基于SIP协议的点对点文本消息中的发送方指示字段、会话标识字段和业务类型指示字段,转换为MSRP协议点对点文本消息中的发送方指示字段、会话标识字段和业务类型指示字段。其中,MSRP协议点对点文本消息的头域参数,与SIP协议中点对点文本消息的头域参数之间的对应关系,可参见表1和表2所示。
[0097] 可选地,终端A发送消息之前,若与即时消息服务器1之间尚未建立共享会话链路,则该终端可发起共享会话链路的建立过程。具体实现方式可参见前述实施例。
[0098] 可选地,终端A与即时消息服务器1之间的共享会话链路,也可以是即时消息服务器1发起建立的。具体实现方式可参见前述实施例。
[0099] 可选地,即时消息服务器2在将该即时消息通过与终端B之间的共享会话链路发送给终端B之前,若与终端B之间尚未建立有共享会话链路,则查询终端B是否具有基于共享会话链路进行消息传输的能力,若判定为是,则与该终端建立共享会话链路。
[0100] 根据以上流程,在一种可能的场景中,终端A与即时消息服务器1之间若无法建立共享会话链路,则终端A通过SIP协议将点对点文本消息发送给即时消息服务器。在另一种可能的场景中,终端B与即时消息服务器2之间若无法建立共享会话链路,则即时消息服务器通过SIP协议将点对点文本消息发送给终端B。
[0101] 根据上述图4a所示的流程,图4b示出了归属于不同即时消息服务器两个终端间点对点文本消息传输的交互流程,该交互流程包括:
[0102] S410~S412:终端A向其归属的即时消息服务器1发送INVITE消息,即时消息服务器1向终端A返回响应。
[0103] S413:即时消息服务器1根据终端A的注册信息,以及与终端A交互时携带的建链信息(包括IP地址、端口等),创建共享会话链路MSRP1。
[0104] S414:终端A通过共享会话链路MSRP1向即时消息服务器1发送的即时消息,该即时消息的接收终端为终端B。
[0105] S415:即时消息服务器1对接收到的该即时消息进行格式转换,并通过SIP协议将该即时消息发送给接收终端B所归属的即时消息服务器2;
[0106] S416~S418:即时消息服务2接收发送终端A发送的即时消息后,向接收终端B发送INVITE,终端B向即时消息服务器2返回响应。
[0107] S419:即时消息服务器2根据终端B的注册信息以及与终端B交互时携带的建链信息(包括IP地址、端口等)创建共享会话链路MSRP2。
[0108] S420:即时消息服务器2对接收到的该即时消息进行格式转换,并通过共享会话链路MSRP2将格式转换后的即时消息发送给终端B。
[0109] 需要说明的是,S414、S420可能执行多次。当终端A需要向终端B发送即时消息时,即可基于建立的共享会话链路传输该即时消息。
[0110] 在本申请另外的一些实施例中,如果发送终端发送的即时消息为群聊消息,则可包括以下两种情况:
[0111] 情况1:群聊消息的发送终端和接收终端归属于同一即时消息服务器[0112] 该种情况下,即时消息服务器通过与发送终端之间的共享会话链路接收到发送终端发送的群聊消息后,将该群聊消息进行格式转换,转换为能够在即时消息服务器和群聊服务器之间传输的消息,并将格式转换后的即时消息发送给群聊服务器。群聊服务器接收到该群聊消息后进行分发处理,将该群聊消息发送给该群聊消息服务器。该即时消息服务器对接收到的群聊消息进行格式转换,转换为能够在共享会话链路中传输的群聊消息,并将格式转换后的群聊消息通过与接收终端之间的共享会话链路发送给该群聊消息的接收终端。
[0113] 情况1:群聊消息的发送终端和接收终端归属于不同的即时消息服务器[0114] 该种情况下,发送终端归属的即时消息服务器通过与发送终端之间的共享会话链路接收到发送终端发送的群聊消息后,将该群聊消息进行格式转换,转换为能够在即时消息服务器和群聊服务器之间传输的消息,并将格式转换后的即时消息发送给群聊服务器。群聊服务器接收到该群聊消息后进行分发处理,将该群聊消息发送给接收终端归属的群聊消息服务器。接收终端归属的即时消息服务器对接收到的群聊消息进行格式转换,转换为能够在共享会话链路中传输的群聊消息,并将格式转换后的群聊消息通过与接收终端之间的共享会话链路发送给该群聊消息的接收终端。
[0115] 上述实施例中,即时消息进行消息格式转换的过程,可参见前述实施例,在此不再重复。
[0116] 根据本申请的上述实施例,由于可以通过共享会话链路传输点对点文本消息和群聊消息,并且不同群聊业务的群聊消息都可以通过该共享会话链路传输,因此当一个终端同时进行多个群聊业务(比如与多个群的成员交互群聊消息)时,不需要针对每个群聊业务分别创建会话链路,可直接通过与其归属的即时消息服务器之间的共享会话链路交互多个群聊业务的群聊消息,从而在用户终端保持多方通信时,可以减少会话链路的数量,节约网络资源,进而提高终端对即时消息的处理能力。
[0117] 需要说明的是,目前的实际应用中,即时消息分为小文本消息和大文本消息,小文本消息指消息内容小于900字节(即设定值取900bit),通常采用寻呼模式(Pager Mode)利用SIP中的MESSAGE方式发送或接收;大文本消息指消息内容等于或大于900字节,通常采用大文本模式(Large Message Mode)通过MARP链路发送或接收。
[0118] 本申请的一些实施例中,若即时消息为小文本消息,终端与其归属的即时消息服务器未建立共享会话链路,则采用MESSAGE方式传输该小文本消息;若即时消息为小文本消息,终端与其归属的即时消息服务器已建立共享会话链路,则通过已建立的共享会话链路传输该小文本消息。若即时消息为大文本消息,则在已经建立共享会话链路或者能够建立共享会话链路的情况下,通过共享会话链路进行传输。
[0119] 可选地,若即时消息服务器在设定长时间内未通过与归属于该即时消息服务器的终端之间的共享会话链路传输即时消息,则释放该共享会话链路。
[0120] 图5示例性地示出了终端与即时消息服务器间链路的释放流程,包括:
[0121] S501:即时消息服务器确定在设定长时间内未通过共享会话链与终端之间进行即时消息传输,则向该终端发送共享会话链路释放请求。
[0122] 该步骤中,在一些场景中,若即时消息服务器在设定长时间内,既没有通过与终端之间的共享会话链路,也没有通过该共享会话链路向该终端发送即时消息,则向该终端发送共享会话链路释放请求。
[0123] 其中,设定长时间由即时消息服务器预先设置一个空闲超时时间比如120秒,若即时消息服务器检测到超过120秒未通过共享会话链路传输即时消息,则向所述终端发送共享会话链路释放请求。
[0124] S502:终端接收共享会话链路释放请求,并向即时消息服务器返回响应,以释放与即时消息服务器之间的共享会话链路。
[0125] 基于相同的技术构思,本申请实施例还提供了一种即时消息服务器,该即时消息服务器可以实现本申请上述实施例中即时消息服务器侧实现的功能。
[0126] 如图6所示,本申请实施例提供一种即时消息服务器。该即时消息服务器600包括:第一接收单元601、第一发送单元602、第二接收单元603、第二发送单元604、以及上行消息处理单元605和下行消息处理单元606。
[0127] 第一接收单元601:用于通过即时消息服务器与发送终端之间的共享会话链路,接收所述发送终端发送的消息,其中,所述消息包括点对点文本消息或群聊消息。
[0128] 第一发送单元602:通过与所述消息的接收终端之间的共享会话链路发送给所述消息的接收终端;所述第一发送单元602,还用于将来自于所述下行消息处理单元606的消息通过与所述消息的接收终端之间的共享会话链路发送给所述接收终端。
[0129] 第二接收单元603,用于接收来自于其他即时消息服务器或群聊消息服务器的消息。
[0130] 第二发送单元604,用于将来自于所述上行消息处理单元705的点对点文本消息发送给第二即时消息服务器,所述第二即时消息服务器为所述点对点文本消息的接收终端归属的即时消息服务器;以及,用于将来自于所述上行消息处理单元605的群聊消息发送给群聊服务器。
[0131] 上行消息处理单元605:用于确定所述第一即时消息的类型;若所述消息为点对点文本消息且所述点对点文本消息的接收终端归属于所述即时消息服务器,则将所述消息发送给下行消息处理单元606,或者将所述消息转换为在即时消息服务器间进行传输的消息格式,并将格式转换后的消息发送给第二发送单元604;若所述消息为群聊消息,则将所述消息转换为在群聊消息服务器间进行传输的消息格式,并发送给所述第二发送单元604。
[0132] 下行消息处理单元606:用于将来自于所述上行消息处理单元605的消息,发送给所述第一发送单元602。所述下行消息处理单元606,用于将所述第二接收单元603接收的消息转换为用于在共享互换链路上传输的消息格式,将格式转换后的消息发送给所述第一发送单元602。
[0133] 可选地,第一接收单元601,还用于接收所述发送终端发送的创建共享会话链路的请求。所述即时消息服务器600,还包括:共享会话链路处理单元,用于在所述第一接收单元602通过与发送终端之间的共享会话链路接收所述发送终端发送的消息之前,根据所述发送终端发送的创建共享会话链路的请求,确定所述发送终端具有基于共享会话链路传输消息的能力,则与所述发送终端协商创建所述共享会话链路;或者,在所述第一接收单元602通过与发送终端之间的共享会话链路接收所述发送终端发送的消息之前,确定所述发送终端具有基于共享会话链路传输消息的能力,则向所述发送终端发送创建共享会话链路的命令,并与所述发送终端协商创建所述共享会话链路。
[0134] 可选地,所述即时消息服务器600,还包括:共享会话链路处理单元607,用于在所述第一发送单元601将所述消息通过与所述消息的接收终端之间的共享会话链路发送给所述消息的接收终端之前,确定与所述消息的接收终端之间不存在共享会话链路,则确定所述接收终端是否具有基于共享互换链路传输消息的能力,若具有所述能力,则向所述接收终端发送创建共享会话链路的命令,并与所述接收终端协商创建所述共享会话链路。
[0135] 可选地,所述即时消息服务器,还包括:共享会话链路处理单元607,若确定在设定长时间内,未通过与所述发送终端之间的共享会话链路传输消息,则删除与所述发送终端之间的共享会话链路;和/或,若确定在设定长时间内,未通过与所述接收终端之间的共享会话链路传输消息,则删除与所述接收终端之间的共享会话链路。
[0136] 基于相同的技术构思,本申请实施例还提供了一种通信装置,该通信装置可实现前述实施例中即时消息服务器执行的流程。
[0137] 图7示出了本公开实施例提供的终端700的结构示意图,即示出了客户端设备700的另一结构示意图。参阅图7所示,该通信装置700包括处理器701、存储器702,可选地,还可包括通信接口703。其中,处理器701也可以为控制器。所述处理器701被配置为支持终端执行前述流程涉及的功能。存储器702用于与处理器701耦合,其保存终端必要的程序指令和数据。其中,处理器701、存储器702和通信接口703相连,该存储器702用于存储指令,该处理器701用于执行该存储器702存储的指令,以完成上述方法中客户端设备执行相应功能的步骤。
[0138] 本申请实施例中,即时消息服务器600和通信装置700所涉及的与本公开实施例提供的技术方案相关的概念,解释和详细说明及其它步骤请参见前述方法或其它实施例中关于这些内容的描述,此处不做赘述。
[0139] 需要说明的是,本公开实施例上述涉及的处理器可以是中央处理器(central processing unit,CPU),通用处理器,数字信号处理器(digital signal processor,DSP),专用集成电路(application-specific integrated circuit,ASIC),现场可编程阵列(field programmable gate array,FPGA)或者其它可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本公开内容所描述的各种示例性的逻辑方框,模和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。其中,所述存储器可以集成在所述处理器中,也可以与所述处理器分开设置。
[0140] 本申请实施例还提供一种计算机可读存储介质,用于存储一些指令,这些指令被执行时,可以完成前述终端所涉及的任意一种方法。
[0141] 需要说明的是,在附图的流程图示出的逻辑顺序可以在诸如一组计算机可执行指令的计算机系统中执行,并在,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
[0142] 根据本申请的上述实施例,在上行方向上,发送终端发送给接收终端的点对点文本消息和群聊消息均可以通过发送终端与即时消息服务器之间的共享会话链路传输,在下行方向上,即时消息服务器可以通过与接收终端之间的共享会话链路将需要发送给接收终端的点对点文本消息和群聊消息发送给接收终端(其中,群聊消息可以包括不同群聊业务的消息),由于点对点文本消息和群聊消息均可通过终端与即时消息服务器之间的共享会话链路传输,因而无需针对不同的群聊业务建立不同的会话链路,因此在用户保持多方通信(比如进行多个群聊业务)时,可以减少会话链路的数量,节约网络资源,进而提高终端对即时消息的处理能力。
[0143] 本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0144] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0145] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0146] 尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
[0147] 显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈