CN114679434B - 会话消息处理系统、方法、计算机设备及存储介质 - Google Patents

会话消息处理系统、方法、计算机设备及存储介质 Download PDF

Info

Publication number
CN114679434B
CN114679434B CN202210585751.9A CN202210585751A CN114679434B CN 114679434 B CN114679434 B CN 114679434B CN 202210585751 A CN202210585751 A CN 202210585751A CN 114679434 B CN114679434 B CN 114679434B
Authority
CN
China
Prior art keywords
management module
session
connection pool
session management
information
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
Application number
CN202210585751.9A
Other languages
English (en)
Other versions
CN114679434A (zh
Inventor
张凯
张乾龙
王洵
罗伦文
谭军胜
任明
朱博
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Zhongke Tongda High New Technology Co Ltd
Original Assignee
Wuhan Zhongke Tongda High New Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuhan Zhongke Tongda High New Technology Co Ltd filed Critical Wuhan Zhongke Tongda High New Technology Co Ltd
Priority to CN202210585751.9A priority Critical patent/CN114679434B/zh
Publication of CN114679434A publication Critical patent/CN114679434A/zh
Application granted granted Critical
Publication of CN114679434B publication Critical patent/CN114679434B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures

Abstract

本申请提供一种会话消息处理系统、方法、计算机设备及存储介质,包括:TCP会话管理模块和SIP协议会话管理模块;TCP会话管理模块用于响应客户端的视频访问请求,获取与客户端关联的第一连接池句柄,并提取视频访问请求中的视频属性信息、待访问的目标设备的身份信息,以响应于视频属性信息为历史属性,将第一连接池句柄和身份信息发送至SIP协议会话管理模块;SIP协议会话管理模块用于将预置与媒体服务器关联的第二连接池句柄和第一连接池句柄封装为会话消息,并将会话消息发送至媒体服务器,待媒体服务器反馈用于接收视频流的媒体信息之后,基于媒体信息和身份信息向目标设备发送会话请求,提升会话消息处理效率。

Description

会话消息处理系统、方法、计算机设备及存储介质
技术领域
本申请涉及计算机技术领域,具体涉及一种会话消息处理系统、方法、计算机设备及存储介质。
背景技术
GB/T28181一般运用于视频监控行业,如在现有的视频监控系统中,将连接到该视频监控系统中的设备使用GB/T28181中的SIP协议(Session Initiation Protocol,会话发起协议)来进行相互通信。
然而,现有的视频监控系统为了保证稳定性,牺牲了绝大部分的性能,且各业务逻辑之间无法独立,造成系统扩展性差,维护成本高,尤其是在查找会话时,需要通过穷举遍历来实现,费时费力。
因此,现有的视频监控系统存在着会话消息处理效率不高的技术问题。
发明内容
本申请的目的在于提供一种会话消息处理系统、方法、计算机设备及存储介质,用以通过模块化设计,使得系统扩展性显著提升的同时,还可确保系统在各业务场景中的会话稳定性,缩减系统维护成本,提升会话消息处理效率。
第一方面,本申请提供一种会话消息处理系统,包括:TCP会话管理模块、SIP协议会话管理模块;其中,
TCP会话管理模块,用于接收并响应客户端的视频访问请求,获取与客户端关联的第一连接池句柄,并提取视频访问请求中的视频属性信息、待访问的目标设备的身份信息,以响应于视频属性信息为历史属性,将第一连接池句柄和身份信息发送至SIP协议会话管理模块;
SIP协议会话管理模块,用于在接收到第一连接池句柄和身份信息之后,将预置与媒体服务器关联的第二连接池句柄和第一连接池句柄封装为会话消息,并将会话消息发送至媒体服务器,待媒体服务器反馈用于接收视频流的媒体信息之后,基于媒体信息和身份信息,向目标设备发送会话请求。
在本申请一些实施例中,SIP协议会话管理模块还用于,在接收到第一连接池句柄和身份信息之后,确定与第一连接池句柄关联的目标连接池的内存地址和第一序列号;将目标连接池的内存地址和第一序列号,作为会话消息包体;基于会话消息包体的包体长度和消息类型,构建用于供TCP会话管理模块解析的会话消息包头;基于第二连接池句柄,以及与第二连接池句柄关联的第二序列号,构建用于供媒体服务器解析的会话消息头;将会话消息头、会话消息包头以及会话消息包体封装为会话消息,以将会话消息发送至媒体服务器。
在本申请一些实施例中,SIP协议会话管理模块还用于,在接收到媒体服务器反馈的媒体信息之后,检测第一序列号;若第一序列号发生变化,则生成过期提示信息;将过期提示信息反馈至客户端,以提示客户端重新发送视频访问请求。
在本申请一些实施例中,SIP协议会话管理模块还用于,在接收到媒体服务器反馈的媒体信息之后,生成SIP协议栈标识;将媒体信息、身份信息以及SIP协议栈标识封装为会话请求;发送会话请求至目标设备;其中,媒体信息包括媒体地址和媒体端口;身份信息包括平台ID和设备ID。
在本申请一些实施例中,会话消息处理系统还包括转码服务器,TCP会话管理模块还用于,通过转码服务器,接收客户端的视频访问请求;响应于视频访问请求,获取与客户端关联的第一连接池句柄,并提取视频访问请求中的视频属性信息、待访问的目标设备的身份信息;响应于视频属性信息为历史属性,将第一连接池句柄和身份信息发送至SIP协议会话管理模块。
在本申请一些实施例中,会话消息处理系统还包括SIP会话管理模块;其中,TCP会话管理模块还用于,响应于视频属性信息为实时属性,将第一连接池句柄和身份信息发送至SIP会话管理模块;其中,SIP会话管理模块在接收到第一连接池句柄和身份信息之后,基于第一连接池句柄获取用于接收视频流的媒体信息,进而基于媒体信息和身份信息,并通过SIP协议会话管理模块,向目标设备发送会话请求。
在本申请一些实施例中,SIP会话管理模块中设置有存储单元,存储单元包括至少一个转发列表,至少一个转发列表用于缓存各客户端的视频访问请求,以按照视频访问请求的请求顺序,获取对应客户端的媒体信息,进而基于媒体信息和身份信息,并通过SIP协议会话管理模块,向目标设备发送会话请求。
第二方面,本申请提供一种会话消息处理方法,会话消息处理方法应用于会话消息处理系统,会话消息处理系统包括TCP会话管理模块、SIP协议会话管理模块,方法包括:
通过TCP会话管理模块,接收并响应客户端的视频访问请求,获取与客户端关联的第一连接池句柄,并提取视频访问请求中的视频属性信息、待访问的目标设备的身份信息,以响应于视频属性信息为历史属性,将第一连接池句柄和身份信息发送至SIP协议会话管理模块;
通过SIP协议会话管理模块,接收到第一连接池句柄和身份信息,并将预置与媒体服务器关联的第二连接池句柄和第一连接池句柄封装为会话消息,进而将会话消息发送至媒体服务器,待媒体服务器反馈用于接收视频流的媒体信息之后,基于媒体信息和身份信息,向目标设备发送会话请求。
第三方面,本申请还提供一种计算机设备,包括:
一个或多个处理器;
存储器;以及一个或多个应用程序,其中的一个或多个应用程序被存储于存储器中,并配置为由处理器执行以实现上述的第二方面的会话消息处理方法。
第四方面,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器进行加载,以执行会话消息处理方法中的步骤。
第五方面,本申请实施例提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述的第二方面提供的方法。
上述会话消息处理系统、方法、计算机设备及存储介质,通过精简的模块化设计,使得系统扩展性显著提升的同时,还可确保因模块之间的业务独立,使得系统在各业务场景中的会话稳定性同步提升,促使所有业务逻辑能够异步处理,进而缩减系统维护成本,最终提升会话消息的处理效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例中的会话消息处理系统的架构示意图;
图2为本申请实施例中的历史视频的SIP链路连接示意图;
图3为本申请实施例中的历史视频的会话消息处理示意图;
图4为本申请实施例中的实时视频的SIP链路连接示意图;
图5为本申请实施例中的实时视频的会话消息处理示意图;
图6为本申请实施例中的存储单元的结构示意图;
图7是本申请实施例中的会话消息处理方法的流程示意图;
图8是本申请实施例中的计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请的描述中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在本申请的描述中,术语“例如”一词用来表示“用作例子、例证或说明”。本申请中被描述为“例如”的任何实施例不一定被解释为比其它实施例更优选或更具优势。为了使本领域任何技术人员能够实现和使用本发明,给出了以下描述。在以下描述中,为了解释的目的而列出了细节。应当明白的是,本领域普通技术人员可以认识到,在不使用这些特定细节的情况下也可以实现本发明。在其它实例中,不会对公知的结构和过程进行详细阐述,以避免不必要的细节使本发明的描述变得晦涩。因此,本发明并非旨在限于所示的实施例,而是与符合本申请所公开的原理和特征的最广范围相一致。
本申请实施例提供一种会话消息处理系统、方法、计算机设备及存储介质,以下分别进行详细说明。
参阅图1,图1为本申请实施例提供的会话消息处理系统的架构示意图,该会话消息处理系统100首先包括:TCP会话管理模块102和SIP协议会话管理模块104。
其中,TCP(Transmission Control Protocol,传输控制协议)是一种面向连接(连接导向)的、可靠的、基于字节流的运输层(Transport layer)通信协议。在简化的计算机网络OSI(Open System Interconnection,开放式系统互联)模型中,它完成第四层传输层所指定的功能,UDP(User Datagram Protocol,用户数据报协议)是同一层内另一个重要的传输协议,也是一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。
其中,SIP(Session Initiation Protocol,会话初始协议)是由IETF(InternetEngineering Task Force,因特网工程任务组)制定的多媒体通信协议。它是一个基于文本的应用层控制协议,用于创建、修改和释放一个或多个参与者的会话。广泛应用于CS(Circuit Switched,电路交换)、NGN(Next Generation Network,下一代网络)以及IMS(IPMultimedia Subsystem,IP多媒体子系统)的网络中,可以支持并应用于语音、视频、数据等多媒体业务,同时也可以应用于Presence(呈现)、Instant Message(即时消息)等特色业务。SIP是类似于HTTP(Hyper Text Transfer Protocol,超文本传输协议)。
具体而言,对于实时视频和历史视频两种视频类型,客户端意图访问时,将存在不同的SIP链路。参阅图2,为历史视频的SIP链路连接示意图。本申请实施例提出的会话消息处理系统100包括连接池和扩展连接池,连接池是创建和管理至少一个连接的缓冲池的技术,这些连接准备好被任何需要它们的线程使用。具体而言,连接池是将已经创建好的连接保存在池中,当有请求来时,直接使用已经创建好的连接对数据库进行访问,这样即可省略创建连接的过程,又可省略销毁连接的过程,使得系统性能得到提高。而扩展连接池是响应于业务需求而设的,其可实现连接池无法完成的特殊业务逻辑,是解决系统高并发问题的策略之一。
参阅图3,为实时视频的SIP链路连接示意图。结合图2可知,同样建立在连接池和扩展连接池基础之上,但不同于历史视频的一对一访问链路,实时视频的访问可以是多对一。也即是说,多个客户端访问实时视频时,可以共用一条SIP链路,实现多对一的视频访问;多个客户端访问历史视频时,不能共用一条SIP链路,必须是单独创建各自的SIP链路。原因在于,客户端在任意时刻接入目标设备,均可访问到实时视频,但访问历史视频则受到已接客户端的访问进度影响。例如,若客户端A和客户端B均想要访问同一历史视频,但客户端B在客户端A接入目标设备5秒之后才接入,则客户端B只能从历史视频的第5秒起访问,后续接入该目标设备访问同一历史视频的客户端延迟更甚。
基于上述情况,引出一个问题,即在实际应用场景中,若是多个客户端访问同一个目标设备的同一个历史视频,因SIP链路存在多条,则必然存在请求和应答无法高效对接,即某个扩展连接池(也即客户端)请求访问历史视频,而媒体服务器为其分配好了用于接收视频流的媒体信息之后,信令端(会话消息处理系统100)只能获取到与第二连接池句柄(系统与媒体服务器之间的连接链路)对应的媒体信息,无法快速查找到与视频访问请求对应的第一连接池句柄(系统与客户端之间的连接链路)。对此,本申请实施例提出一种会话消息处理系统,用以通过消息跳跃处理、双重消息体设计等,改善历史视频的访问机制,进而提升会话消息处理效率,具体将在下文详细说明。
在一个实施例中,TCP会话管理模块102用于接收客户端的视频访问请求,并响应该视频访问请求,获取与客户端关联的第一连接池句柄,进而提取视频访问请求中的视频属性信息、待访问的目标设备的身份信息,以响应于视频属性信息为历史属性,将第一连接池句柄和身份信息发送至SIP协议会话管理模块104。SIP协议会话管理模块104用于在接收到TCP会话管理模块102发送的第一连接池句柄和身份信息之后,将预置与媒体服务器关联的第二连接池句柄和第一连接池句柄封装为会话消息,并将会话消息发送至媒体服务器,待媒体服务器反馈用于接收视频流的媒体信息之后,基于媒体信息和身份信息,向目标设备发送会话请求;其中,会话请求用于请求在客户端与目标设备之间建立SIP会话。
其中,客户端可以是任意终端设备,例如,客户端可以是既包括接收和发射硬件的终端设备,即具有能够在双向通信链路上,执行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备。客户端具体可以是台式终端或移动终端,还可以是手机、平板电脑、笔记本电脑中的一种。客户端向转码服务器发送视频访问请求,该视频访问请求用于请求目标设备的视频数据。
其中,第一连接池句柄可以是系统与客户端之间所建立的连接池的标识符;第二连接池句柄可以是系统与媒体服务器之间所建立的连接池的标识符。
其中,媒体服务器是下一代网络的重要设备。该设备在控制设备(软交换设备、应用服务器)的控制下,提供在IP网络上实现各种业务所需的媒体资源功能,包括业务音提供、会议、交互式应答(IVR)、通知、统一消息、高级语音业务等。在应用服务器里,使用MSML(Media Server Markup Language,一种专用于媒体服务器交互的特殊xml)向媒体服务器发送放音等命令。媒体服务器具有很好的可裁剪性,可灵活实现一种或多种功能。
其中,视频属性信息包括历史属性和实时属性。目标设备可以是相机,尤其可以是国标相机(也称GB相机),目标设备具体可以是级联设备中的一个设备,目标设备的数据包括与目标设备相关的一些数据,例如,目标设备为国标相机,目标设备的数据包括相机状态、目标相机与客户端或者会话消息处理系统之间的协商数据等。其中,该视频访问请求可以是JSON(JavaScript Object Notation,JS对象简谱)格式的文本数据。
其中,身份信息包括平台ID和设备ID,媒体信息包括媒体地址和媒体端口,媒体信息是定位子媒体资源的重要参数,一个平台上可以挂载至少一个设备,即存在一个平台ID与至少一个设备ID关联。
具体而言,可参阅图4,TCP会话管理模块102响应客户端的视频访问请求之前,客户端的视频访问请求首先会通过转码服务器进行转码,如转码为二进制格式的请求消息,进而将请求消息通过TCP高并发框架传输至TCP会话管理模块102。TCP会话管理模块102接收到转码后的视频访问请求之后,即可响应于视频访问请求,获取与客户端关联的第一连接池句柄,并提取视频访问请求中的视频属性信息、待访问的目标设备的身份信息。其中,第一连接池句柄可以是向内核注册时生成的。
进一步地,TCP会话管理模块102获取到第一连接池句柄、视频属性信息以及目标设备的身份信息之后,将解析视频属性信息,并在解析出视频属性信息为历史属性时,将第一连接池句柄和身份信息发送至SIP协议会话管理模块104,以通知SIP协议会话管理模块104客户端待访问目标设备的历史视频。
更进一步地,若客户端待访问目标设备的历史视频,则SIP协议会话管理模块104在接收到TCP会话管理模块102发送的第一连接池句柄和身份信息之后,首先将第二连接池句柄和第一连接池句柄封装为会话消息,并将会话消息发送至媒体服务器。如此,媒体服务器分配好子媒体并回传得到媒体信息之后,还可将第一连接池句柄一并回传过来,供SIP协议会话管理模块104能够确定发送视频访问请求的客户端,同时基于媒体信息和身份信息,向目标设备发送有关于该客户端的会话请求。其中,第二连接池句柄为预置的,且与媒体服务器关联的连接池句柄。网络发包模块用于指示媒体服务器调度媒体资源以获取媒体信息。
在一个实施例中,SIP协议会话管理模块104还用于,在接收到第一连接池句柄和身份信息之后,确定与第一连接池句柄关联的目标连接池的内存地址和第一序列号;将目标连接池的内存地址和第一序列号,作为会话消息包体;基于会话消息包体的包体长度和消息类型,构建用于供TCP会话管理模块102解析的会话消息包头;基于第二连接池句柄,以及与第二连接池句柄关联的第二序列号,构建用于供媒体服务器解析的会话消息头;将会话消息头、会话消息包头以及会话消息包体封装为会话消息,以将会话消息发送至媒体服务器。
其中,第一序列号用于判断申请访问视频的客户端是否持续在线,若序列号存在变化则表示客户端并非持续在线,可丢弃当前的视频访问请求。
具体而言,可参阅图4,SIP协议会话管理模块104发送给媒体服务器的消息格式可称为“双重消息体”,主要由会话消息头、会话消息包头、会话消息包体三项构成。其中,会话消息头用于供媒体服务器拆解,得到剩余的会话消息包头和会话消息包体,即可促使媒体服务器明确其所分配的媒体信息,实际对应的客户端,而TCP会话管理模块102获取到媒体信息、会话消息包头和会话消息包体之后,即可继续拆解包头,得到会话消息包体中所含的内存地址,该内存地址即与实际对应的客户端的第一连接池句柄相关联。
需要说明的是,内存地址永远固定不变,而且可以循环使用,当某个会话结束后,这块内存重置,即可重新分配给新接入的视频访问请求所使用。
在一个实施例中,SIP协议会话管理模块104还用于,在接收到媒体服务器反馈的媒体信息之后,检测第一序列号;若第一序列号发生变化,则生成过期提示信息;将过期提示信息反馈至客户端,以提示客户端重新发送视频访问请求。
具体而言,上述实施例并未说明序列号在会话消息处理过程中的作用,实际上,序列号用于供SIP协议会话管理模块104判断请求访问视频的客户端是否仍在线,即后续处理是否还有意义,若检测到序列号在消息发送之前,与信息反馈之后存在差异,则意味着客户端未持续在线,请求失效。
在一个实施例中,SIP协议会话管理模块104还用于,在接收到媒体服务器反馈的媒体信息之后,生成SIP协议栈标识;将媒体信息、身份信息以及SIP协议栈标识封装为会话请求;发送会话请求至目标设备;其中,媒体信息包括媒体地址和媒体端口;身份信息包括平台ID和设备ID。
具体而言,可参阅图4,由于目标设备是嵌入式设备,并不具备高并发的能力,若频繁向目标设备发送访问请求,则很容易导致目标设备的网络荷载,从而导致大量丢包,因此本申请实施例提出为各个SIP会话设置SIP协议栈标识,使得在发送会话请求时,能够依据SIP协议栈标识“call-id”查找处理,避免会话成本升高,同时确保会话稳定性。
进一步地,若是访问历史视频,则该SIP协议栈标识“call-id”由SIP协议会话管理模块104实时生成,SIP协议会话管理模块104管控的状态码,其状态主要包括如下四种:(1)初始状态“0”,自定义状态码,表示SIP会话没有建立,若需建立SIP会话,就需发送会话请求;(2)100 trying,表示正在建立SIP连接,发送会话请求;(3)200 ok,表示SIP会话已经建立,目标设备已经在向子媒体资源发送客户端所需数据了;(4)408,表示发送了SIP会话请求,但是目标设备在规定时间(如3秒)内没有应答。
在一个实施例中,会话消息处理系统还包括转码服务器,TCP会话管理模块还用于,通过转码服务器,接收客户端的视频访问请求;响应于视频访问请求,获取与客户端关联的第一连接池句柄,并提取视频访问请求中的视频属性信息、待访问的目标设备的身份信息;响应于视频属性信息为历史属性,将第一连接池句柄和身份信息发送至SIP协议会话管理模块。
具体而言,转码服务器的作用已在上述实施例中详细说明,本实施例中不再赘述。
在一个实施例中,会话消息处理系统还包括SIP会话管理模块;其中,TCP会话管理模块还用于,响应于视频属性信息为实时属性,将第一连接池句柄和身份信息发送至SIP会话管理模块;其中,SIP会话管理模块在接收到第一连接池句柄和身份信息之后,基于第一连接池句柄获取用于接收视频流的媒体信息,进而基于媒体信息和身份信息,并通过SIP协议会话管理模块,向目标设备发送会话请求。
其中,SIP会话管理模块是用于处理请求分发的,当多个客户端访问历史视频时,由于不存在多对一的情况,只存在一对一的情况,故无需使用SIP会话管理模块分发。
具体而言,可参阅图5,当视频访问请求所含的视频属性信息为实时属性时,代表客户端想要访问目标设备的实时视频,此时SIP会话管理模块将被触发分别与TCP会话管理模块102和SIP协议会话管理模块104相连接,即连接在TCP会话管理模块102与SIP协议会话管理模块104之间,作为消息传递中介。如此,TCP会话管理模块102首先将第一连接池句柄和身份信息发送至SIP会话管理模块,以便于SIP会话管理模块基于第一连接池句柄,通过媒体服务器获取用于接收视频流的媒体信息(媒体地址和媒体端口),进而基于媒体信息和身份信息(平台ID和设备ID),并通过SIP协议会话管理模块104,向目标设备发送会话请求。
需要说明的是,SIP会话管理模块通过SIP协议会话管理模块104,向目标设备发送会话请求,实际是:SIP协议会话管理模块104接收SIP会话管理模块的数据请求,并检测SIP会话管理模块的第一状态码的状态信息;若第一状态码的状态信息为初始状态,则响应于数据请求,提取数据请求中的身份信息和SIP协议栈标识;其中,SIP协议栈标识为SIP会话管理模块生成的;根据身份信息和SIP协议栈标识,生成会话请求;发送会话请求至目标设备,供客户端与目标设备之间建立SIP会话。
具体而言,基于上一实施例的说明,若SIP会话管理模块管控的第一状态码的状态信息为“0”,表示其处于初始状态,进一步表示当前没有建立SIP会话,则此时可建立SIP会话,即如图5所示,SIP协议会话管理模块104可响应于SIP会话管理模块发送的数据请求,提取数据请求中的身份信息和SIP协议栈标识,然后将其放置于内设的数据发送模块封装为会话请求,以向目标设备(如GB相机)发送会话请求,使得客户端与目标设备之间能够建立SIP会话,目标设备能够基于该SIP会话向客户端传输其所需的视频数据。
在一个实施例中,SIP会话管理模块中设置有存储单元,存储单元包括至少一个转发列表,至少一个转发列表用于缓存各客户端的视频访问请求,以按照视频访问请求的请求顺序,获取对应客户端的媒体信息,进而基于媒体信息和身份信息,并通过SIP协议会话管理模块,向目标设备发送会话请求。
具体而言,可参阅图5和图6,当转发列表单元中的请求数量为“0”时,生成访问终止消息,触发会话终止,所有的SIP会话要依次回收;当目标设备通过已建立的SIP会话传输数据至客户端时,如发送“BYE”,则走从右至左的状态变更路线,会话依次回收,相当于数据的源头没有数据产生了,需通知客户端会话结束。
上述会话消息处理系统,通过精简的模块化设计,使得系统扩展性显著提升的同时,还可确保因模块之间的业务独立,使得系统在各业务场景中的会话稳定性同步提升,促使所有业务逻辑能够异步处理,进而缩减系统维护成本,最终提升会话消息的处理效率。
参阅图7,本申请实施例提供了一种会话消息处理方法,会话消息处理方法应用于会话消息处理系统,会话消息处理系统包括TCP会话管理模块和SIP协议会话管理模块,下文将主要以该方法应用于上述图1中的会话消息处理系统100来举例说明,会话消息处理方法包括步骤S701至步骤S702,具体如下:
S701,通过TCP会话管理模块,接收并响应客户端的视频访问请求,获取与客户端关联的第一连接池句柄,并提取视频访问请求中的视频属性信息、待访问的目标设备的身份信息,以响应于视频属性信息为历史属性,将第一连接池句柄和身份信息发送至SIP协议会话管理模块;
S702,通过SIP协议会话管理模块,接收到第一连接池句柄和身份信息,并将预置与媒体服务器关联的第二连接池句柄和第一连接池句柄封装为会话消息,进而将会话消息发送至媒体服务器,待媒体服务器反馈用于接收视频流的媒体信息之后,基于媒体信息和身份信息,向目标设备发送会话请求。
上述实施例中的会话消息处理方法,通过精简的模块化设计,使得系统扩展性显著提升的同时,还可确保因模块之间的业务独立,使得系统在各业务场景中的会话稳定性同步提升,促使所有业务逻辑能够异步处理,进而缩减系统维护成本,最终提升会话消息的处理效率。
在一个实施例中,会话消息处理系统100可以实现为一种计算机程序的形式,计算机程序可在如图8所示的计算机设备上运行。计算机设备的存储器中可存储组成该会话消息处理系统100的各个程序模块,比如,图1所示的TCP会话管理模块102和SIP协议会话管理模块104;各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的会话消息处理方法中的步骤。
例如,图8所示的计算机设备可以通过如图1所示的会话消息处理系统100中的TCP会话管理模块102执行步骤S701。计算机设备可通过SIP协议会话管理模块104执行步骤S702。
其中,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的计算机设备通过网络连接通信。该计算机程序被处理器执行时以实现一种会话消息处理方法。
本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括一个或多个处理器;存储器;以及一个或多个应用程序,其中的一个或多个应用程序被存储于存储器中,并配置为由处理器执行上述会话消息处理方法的步骤。此处会话消息处理方法的步骤可以是上述各个实施例的会话消息处理方法中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器进行加载,使得处理器执行上述会话消息处理方法的步骤。此处会话消息处理方法的步骤可以是上述各个实施例的会话消息处理方法中的步骤。
本邻域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上对本申请实施例所提供的一种会话消息处理系统、方法、计算机设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种会话消息处理系统,其特征在于,包括:TCP会话管理模块、SIP协议会话管理模块;其中,
所述TCP会话管理模块,用于接收并响应客户端的视频访问请求,获取与所述客户端关联的第一连接池句柄,并提取所述视频访问请求中的视频属性信息、待访问的目标设备的身份信息,以响应于所述视频属性信息为历史属性,将所述第一连接池句柄和所述身份信息发送至所述SIP协议会话管理模块;
所述SIP协议会话管理模块,用于在接收到所述第一连接池句柄和所述身份信息之后,将预置与媒体服务器关联的第二连接池句柄和所述第一连接池句柄封装为会话消息,并将所述会话消息发送至所述媒体服务器,待所述媒体服务器反馈用于接收视频流的媒体信息之后,基于所述媒体信息和所述身份信息,向所述目标设备发送会话请求。
2.如权利要求1所述的系统,其特征在于,所述SIP协议会话管理模块还用于,在接收到所述第一连接池句柄和所述身份信息之后,确定与所述第一连接池句柄关联的目标连接池的内存地址和第一序列号;
将所述目标连接池的内存地址和第一序列号,作为会话消息包体;
基于所述会话消息包体的包体长度和消息类型,构建用于供所述TCP会话管理模块解析的会话消息包头;
基于所述第二连接池句柄,以及与所述第二连接池句柄关联的第二序列号,构建用于供所述媒体服务器解析的会话消息头;
将所述会话消息头、所述会话消息包头以及所述会话消息包体封装为所述会话消息,以将所述会话消息发送至所述媒体服务器。
3.如权利要求2所述的系统,其特征在于,所述SIP协议会话管理模块还用于,在接收到所述媒体服务器反馈的媒体信息之后,检测所述第一序列号;
若所述第一序列号发生变化,则生成过期提示信息;
将所述过期提示信息反馈至所述客户端,以提示所述客户端重新发送所述视频访问请求。
4.如权利要求1所述的系统,其特征在于,所述SIP协议会话管理模块还用于,在接收到所述媒体服务器反馈的媒体信息之后,生成SIP协议栈标识;
将所述媒体信息、所述身份信息以及所述SIP协议栈标识封装为会话请求;
发送所述会话请求至所述目标设备;其中,所述媒体信息包括媒体地址和媒体端口;所述身份信息包括平台ID和设备ID。
5.如权利要求1所述的系统,其特征在于,所述会话消息处理系统还包括转码服务器,所述TCP会话管理模块还用于,
通过所述转码服务器,接收所述客户端的视频访问请求;
响应于所述视频访问请求,获取与所述客户端关联的第一连接池句柄,并提取所述视频访问请求中的视频属性信息、待访问的目标设备的身份信息;
响应于所述视频属性信息为历史属性,将所述第一连接池句柄和所述身份信息发送至所述SIP协议会话管理模块。
6.如权利要求1所述的系统,其特征在于,所述会话消息处理系统还包括SIP会话管理模块;其中,所述TCP会话管理模块还用于,
响应于所述视频属性信息为实时属性,将所述第一连接池句柄和所述身份信息发送至所述SIP会话管理模块;
其中,所述SIP会话管理模块在接收到所述第一连接池句柄和所述身份信息之后,基于所述第一连接池句柄获取用于接收视频流的媒体信息,进而基于所述媒体信息和所述身份信息,并通过所述SIP协议会话管理模块,向所述目标设备发送所述会话请求。
7.如权利要求6所述的系统,其特征在于,所述SIP会话管理模块中设置有存储单元,所述存储单元包括至少一个转发列表,所述至少一个转发列表用于缓存各所述客户端的视频访问请求,以按照所述视频访问请求的请求顺序,获取对应所述客户端的媒体信息,进而基于所述媒体信息和所述身份信息,并通过所述SIP协议会话管理模块,向所述目标设备发送所述会话请求。
8.一种会话消息处理方法,其特征在于,所述会话消息处理方法应用于会话消息处理系统,所述会话消息处理系统包括TCP会话管理模块、SIP协议会话管理模块,所述方法包括:
通过所述TCP会话管理模块,接收并响应客户端的视频访问请求,获取与所述客户端关联的第一连接池句柄,并提取所述视频访问请求中的视频属性信息、待访问的目标设备的身份信息,以响应于所述视频属性信息为历史属性,将所述第一连接池句柄和所述身份信息发送至所述SIP协议会话管理模块;
通过所述SIP协议会话管理模块,接收到所述第一连接池句柄和所述身份信息,并将预置与媒体服务器关联的第二连接池句柄和所述第一连接池句柄封装为会话消息,进而将所述会话消息发送至所述媒体服务器,待所述媒体服务器反馈用于接收视频流的媒体信息之后,基于所述媒体信息和所述身份信息,向所述目标设备发送会话请求。
9.一种计算机设备,其特征在于,所述计算机设备包括:
一个或多个处理器;
存储器;以及一个或多个应用程序,其中所述一个或多个应用程序被存储于所述存储器中,并配置为由所述处理器执行以实现权利要求8中所述的会话消息处理方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行权利要求8所述的会话消息处理方法中的步骤。
CN202210585751.9A 2022-05-27 2022-05-27 会话消息处理系统、方法、计算机设备及存储介质 Active CN114679434B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210585751.9A CN114679434B (zh) 2022-05-27 2022-05-27 会话消息处理系统、方法、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210585751.9A CN114679434B (zh) 2022-05-27 2022-05-27 会话消息处理系统、方法、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN114679434A CN114679434A (zh) 2022-06-28
CN114679434B true CN114679434B (zh) 2022-08-26

Family

ID=82079753

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210585751.9A Active CN114679434B (zh) 2022-05-27 2022-05-27 会话消息处理系统、方法、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN114679434B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115208937A (zh) * 2022-07-07 2022-10-18 北京火山引擎科技有限公司 业务请求处理方法及装置
CN115514792B (zh) * 2022-11-23 2023-03-28 中汽数据(天津)有限公司 基于工业互联网标识体系的汽车试验设备交互方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1913533A (zh) * 2006-09-05 2007-02-14 北京天地互连信息技术有限公司 基于会话初始化协议的远程视频监控系统及其实现方法
CN102523531A (zh) * 2011-12-08 2012-06-27 深圳市同洲视讯传媒有限公司 视频点播系统中处理会话的接入实体及方法
CN103795569A (zh) * 2014-01-22 2014-05-14 亿赞普(北京)科技有限公司 一种基于连接池的服务器连接方法和装置
US9930122B1 (en) * 2012-09-28 2018-03-27 Open Text Corporation Method and system for connection pooling for content management clients
CN113051331A (zh) * 2021-04-13 2021-06-29 深圳市汉云科技有限公司 数据库的连接池转换方法、装置、设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1913533A (zh) * 2006-09-05 2007-02-14 北京天地互连信息技术有限公司 基于会话初始化协议的远程视频监控系统及其实现方法
CN102523531A (zh) * 2011-12-08 2012-06-27 深圳市同洲视讯传媒有限公司 视频点播系统中处理会话的接入实体及方法
US9930122B1 (en) * 2012-09-28 2018-03-27 Open Text Corporation Method and system for connection pooling for content management clients
CN103795569A (zh) * 2014-01-22 2014-05-14 亿赞普(北京)科技有限公司 一种基于连接池的服务器连接方法和装置
CN113051331A (zh) * 2021-04-13 2021-06-29 深圳市汉云科技有限公司 数据库的连接池转换方法、装置、设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
视频监控系统互联网关设计与实现;赵荣辉等;《电视技术》;20170617(第06期);全文 *

Also Published As

Publication number Publication date
CN114679434A (zh) 2022-06-28

Similar Documents

Publication Publication Date Title
CN114679434B (zh) 会话消息处理系统、方法、计算机设备及存储介质
US9331967B2 (en) Browser/HTML friendly protocol for real-time communication signaling
US9509745B2 (en) Java API for programming web real-time communication applications
CN101960822B (zh) Sip-http应用相关器
CN103227788B (zh) 实现网页应用程序与sip设备进行通信的方法和系统
US10044767B2 (en) Method and system to enhance performance of a session initiation protocol network and its elements
CN113132376B (zh) 媒体数据处理方法及装置、系统、电子设备和存储介质
CN112738140B (zh) 一种基于WebRTC的视频流传输方法、装置、存储介质和设备
US9648049B2 (en) System and method for extending IP multimedia subsystem to HTML5 environments
US20150006610A1 (en) Virtual web real-time communications (webrtc) gateways, and related methods, systems, and computer-readable media
CN111479121A (zh) 一种基于流媒体服务器的直播方法及系统
CN111147506A (zh) 一种基于html5播放流媒体数据的方法、系统及存储设备
RU2608469C2 (ru) Способ и устройство высокоэффективной доставки уведомлений в реальном времени с малым временем задержки
US10601880B2 (en) Conference reconstruction in SIP networks
CN101179480B (zh) 一种转发流媒体的方法
EP3576371B1 (en) Method and system for transmitting streaming media resource
US20090106428A1 (en) Service intermediary Addressing for real time composition of services
CN114679435B (zh) 会话管理系统、方法、计算机设备及存储介质
CN114679433B (zh) 视频访问会话管理系统、方法、计算机设备及存储介质
US9130873B2 (en) Real time composition of services
CN101188605A (zh) 一种转发流媒体的系统
US20090119401A1 (en) Content providing system, monitoring server, and sip proxy server
Herrero et al. Application layer
WO2024032102A1 (zh) 数据传输方法、装置、设备、存储介质和计算机程序产品
CN117615023B (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
PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Session message processing system, method, computer device, and storage medium

Effective date of registration: 20231010

Granted publication date: 20220826

Pledgee: Guanggu Branch of Wuhan Rural Commercial Bank Co.,Ltd.

Pledgor: WUHAN ZHONGKE TONGDA HIGH-NEW TECHNOLOGY Co.,Ltd.

Registration number: Y2023980060608

PC01 Cancellation of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20231222

Granted publication date: 20220826

Pledgee: Guanggu Branch of Wuhan Rural Commercial Bank Co.,Ltd.

Pledgor: WUHAN ZHONGKE TONGDA HIGH-NEW TECHNOLOGY Co.,Ltd.

Registration number: Y2023980060608