CN102075737A - 视频监控会话方法 - Google Patents
视频监控会话方法 Download PDFInfo
- Publication number
- CN102075737A CN102075737A CN 201110048367 CN201110048367A CN102075737A CN 102075737 A CN102075737 A CN 102075737A CN 201110048367 CN201110048367 CN 201110048367 CN 201110048367 A CN201110048367 A CN 201110048367A CN 102075737 A CN102075737 A CN 102075737A
- Authority
- CN
- China
- Prior art keywords
- message
- headend
- monitor client
- session
- media server
- 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
Images
Abstract
一种视频监控会话方法,包括以下步骤:(1)监控客户端发送会话邀请,(2)头端设备回复200响应,(3)头端设备发送音频媒体流;(4)监控客户端发送BYE消息终止会话,(5)头端设备回复BYE消息的200响应,头端设备收到监控客户端的BYE消息后,即可准备结束本次会话。本发明的视频监控会话方法能够实现对头端设备与监控客户端直联时的控制,同时能够实现多台监控客户端同时访问头端设备并采用流媒体服务器时的设备间的连接控制。本发明的视频监控会话方法对应于具有功能逻辑独立、易于扩展的、具有高可伸缩性视频监控平台架构,从而能够满足大规模高清网络视频监控应用的需求。
Description
技术领域
本发明涉及视频监控的技术领域,具体说是一种在头端设备和监控客户端之间进行流媒体传输的视频监控会话方法。
背景技术
视频监控会话协议(Video Surveillance Session Protocol,简称VSSP,下同)是用于视频监控领域的信令控制协议。通过以下3个方面来支持视频通信的创建、修改和结束:媒体能力,信令可携带视频监控会话的媒体描述信息(Session Media Description,简称SMD,下同),确定视频监控头端设备的媒体能力,包括通道信息和媒体参数等;会话创建,在视频监控客户端(主叫)和视频监控设备(被叫)之间创建视频监控会话;会话管理,包括视频监控会话的转接、会话终止和会话参数的修改。
视频监控会话协议是一种二进制编码格式的协议,承载会话媒体描述(Session Media Description)。会话媒体描述是一种类似于会话描述协议(Session Description Protocol,RFC4566)的二进制协议,提供媒体信息的描述。视频监控会话协议除了提供给基本的会话控制功能以外,还提供了会话内的信令消息,用以提供心跳检测、参数配置、抓拍、云台控制功能。
视频监控会话方法是在视频监控会话协议基础之上,连接头端设备和监控客户端,并对流媒体传输进行控制的方法。
发明内容
本发明要解决的技术问题是提供一种在头端设备和监控客户端之间进行流媒体传输的视频监控会话方法。
本发明为解决公知技术中存在的技术问题所采取的技术方案是:
本发明的视频监控会话方法,其中监控客户端通过了设备访问的鉴权和认证,获取了头端设备的访问号码、头端设备的信令IP地址和端口号,且监控客户端支持头端设备的音视频媒体格式,当监控客户端发送消息时以用户代理客户端方式运行,头端设备接收消息时以用户代理服务器端方式运行,包括以下步骤:
(1)监控客户端发送会话邀请,即INVITE消息,监控客户端首先与头端设备建立一个TCP连接,并在TCP连接上发送INVITE消息,发起会话邀请,监控客户端在INVITE消息中加入会话媒体描述信息SMD,告知头端设备其自己的媒体能力,监控客户端发送INVITE消息后,等待头端设备回复消息,确定是否成功接收INVITE消息;
(2)头端设备回复200响应,头端设备收到会话邀请后,提取监控客户端INVITE消息中的设备通道号,将该通道的媒体能力填写到会话媒体描述SMD中,随200消息返回至监控客户端;
(3)头端设备发送音频媒体流,监控客户端收到200消息相应后,提取会话媒体描述SMD中的媒体能力信息,准备建立媒体连接,若监控客户端在INVITE消息中加入了会话媒体描述信息SMD,则监控客户端工作在媒体流监听模式,由头端设备从SMD中提取监控客户端的媒体流监听地址和端口号并发起TCP媒体连接;否则头端设备会工作在媒体流监听模式,监控客户端会从SMD中提取头端设备媒体通道的TCP监听地址和端口号,随即向该地址和端口号上先后发起两个TCP媒体连接,以接收音视频媒体流;监控客户端在获取媒体流前,会分别在音视频TCP连接上发送一个媒体流的请求消息,该请求消息携带了本次媒体流的会话标识(Call-ID),头端设备收到该请求消息后,会通过会话标识将媒体流与本次会话建立关联;
(4)监控客户端发送BYE消息终止会话,当监控客户端想结束本次会话时,可以发送BYE消息,准备结束本次会话;
(5)头端设备回复BYE消息的200响应,头端设备收到监控客户端的BYE消息后,即可准备结束本次会话,向监控客户端发送200响应后,头端设备可以清除本次会话的所有资源,断开媒体TCP连接和信令TCP连接;客户端收到200响应后,清除本次会话的所有资源,断开媒体TCP连接和信令TCP连接,若客户端发送BYE消息后,在一段时间内没有收到200响应,则客户端应主动清除本次会话的所有资源。
上述客户端接收BYE消息200响应的延迟时间为30秒。
上述方法包括VSSP协议栈、会话管理和用户代理;VSSP协议基于TCP协议,在遇到TCP拥塞的情况下,VSSP协议进行干涉,提供了定时器操作,用以结束会话,VSSP协议栈又包括:TCP层,负责协议的发送与接收;协议字段解析层,即Syntax层,负责协议包的解包与打包;对话层,即Dialog层,负责信令控制逻辑,Dialog为信令实体,代表两个用户代理进行会话时建立的信令关系;会话管理实体Session是Dialog层的使用者,Dialog负责Session的建立、状态改变与销毁;用户代理User Agent为逻辑实体,对上提供人机操作接口,下层包装了会话管理Session实体、对话Dialog实体和媒体流实体;一个Dialog由三个关键元素构成,即呼叫标识Call-ID、主叫标识From、被叫标识To。
在头端设备与多个监控客户端之间设置流媒体服务器,一个头端设备被多个监控客户端所访问,流媒体服务器中包含多个群组会话,每个群组会话管理了多个监控客户端的会话和一个头端设备会话。
采用十进制12位即12字节的全局统一标识码,作为协议字段To、From的取值,其格式为类别号+ 设备号+ 通道号,其中类别号为1位,设备号采用8位数字,通道号采用3位数字;
类别号的取值定义如下:
有效值选取区间为[0-9],类别号=9,代表一般的监控客户端,类别号=1,代表一般设备;其它取值为非法标识,会产生400响应即语法错误,或404响应即号码不存在;
设备号的取值定义如下:
有效值选取区间为[00000000-99999999];
其它任何无效取值为非法标识,会产生400响应即语法错误,或404响应即号码不存在;
通道号取值如下:
有效值选取区间为[000-999]或[***];
其它任何无效取值为非法标识,会产生400响应即语法错误,或404响应即号码不存在。
头端设备连接流媒体服务器时,流媒体服务器工作在监听模式,头端设备工作在主动连接模式,头端设备与流媒体服务器之间的连接步骤为:
(1)头端设备发起INVITE会话请求,头端设备会将自己的媒体能力通过SMD发送至流媒体服务器,流媒体服务器收到SMD后会预先分配媒体流资源,以在媒体流到来后能够立即进行媒体处理;
(2)流媒体服务器回复200消息响应,流媒体服务器会在回复的SMD中加入监听每一个通道每一个媒体流的监听IP地址和端口号,媒体流请求由头端设备发起;
(3)头端设备依次发起通道000的音频和视频的媒体流请求,对于TCP连接,头端设备可以在媒体流的第一个帧中加入会话媒体流会话关联信息,这里应使用Call-ID作为媒体流与会话的关联键;
(4)头端设备依次发起通道001的音频和视频的媒体流请求。
监控客户端连接流媒体服务器时,流媒体服务器工作在监听模式,流媒体服务器与监控客户端之间的连接步骤为:
(1)监控客户端向流媒体服务器发起INVITE请求,流媒体服务器收到INVITE请求后会根据被叫号码,即头端设备+通道号,寻找相关的群组会话,找到头端设备所属的群组会话后,建立与监控客户端的会话,并将该会话加入该群组会话中;
(2)流媒体服务器回复200消息响应;
(3)会话建立后由监控客户端向流媒体服务器发起音视频媒体流的TCP连接,TCP连接建立后,监控客户端会发送一个媒体流请求头,流媒体服务器收到该请求头后,会建立媒体流与会话的关联关系,并转发相应的头端设备通道的音视频媒体流。
通过流媒体服务器向头端设备发送REINVITE消息改变媒体属性,头端设备与流媒体服务器建立会话连接后,若此时没有监控客户端或者录像设备访问流媒体服务器获取该设备的媒体转发流,则可以将头端设备的媒体流发送暂停,在 REINVITE消息的SMD会话媒体描述中,可以将IP地址设定为“0.0.0.0”,则头端设备将停止向该地址发送媒体流,但会话并不拆除,恢复媒体流发送时,只需再次通过发送REINVITE消息,将SMD中的IP地址恢复为初始有效值。
监控客户端与头端设备之间的MESSAGE消息通过流媒体服务器转发,流媒体服务器以代理方式转发MESSAGE消息,MESSAGE消息的发送是独立于任何一个会话的,MESSAGE消息本身也不会引起一个新的VSSP会话的创建,MESSAGE消息的发送采用独立的Call-ID,不与任何会话关联,每个新的MESSAGE消息采用新的Call-ID,200消息响应使用MESSAGE请求的Call-ID,以下是流媒体服务器代理模式下的MESSAGE消息通话过程:
(1)监控客户端发起一个新的MESSAGE消息,在监控客户端和流媒体服务器间会创建一个新的TCP连接,MESSAGE消息可以携带消息体Body,消息体的内容可以是文本内容也可以是任何自定义格式的2进制内容;
(2)流媒体服务器收到MESSAGE消息后,根据TO字段的头端设备被叫号码,向该头端设备转发MESSAGE消息,流媒体服务器会向头端设备发起一个新的TCP连接转发MESSAGE消息,同时将该去话TCP连接与之前的来话TCP连接建立关联,该MESSAGE消息的Call-ID与收到的MESSAGE消息的Call-ID相同;
(3)头端设备收到MESSAGE消息后,回复200消息响应,200消息响应不携带消息体Body;
(4)流媒体服务器转发200消息相到主叫监控客户端,主叫监控客户端收到200消息后结束本次即时消息通话,关闭TCP连接,或者保持此TCP 连接,用于发送和接收新的MESSAGE消息;
(5)头端设备在之前创建的TCP连接上向监控客户端发起了一个新的MESSAGE消息,此时被叫号码为监控客户端的会话ID号码,MESSAGE消息采用一个新的Call-ID;
(6)流媒体服务器根据监控客户端被叫号码,通过连接管理机制,找到之前对应的监控客户端创建的TCP连接,将该MESSAGE消息转发至监控客户端;
(7)监控客户端收到MESSAGE消息后,回复200消息响应,当监控客户端认为可以结束本次即时消息通话,即关闭该TCP连接;
(8)流媒体服务器转发200消息响应,当发现监控客户端的TCP连接关闭后,随即关闭与头端设备的TCP连接。
监控客户端与头端设备之间的MESSAGE消息通过流媒体服务器转发,流媒体服务器以网关转发模式转发MESSAGE消息,流媒体服务器收到主叫的MESSAGE消息后,立即回复200响应,然后拷贝MESSAGE消息内容和消息类型,复制到一个新的MESSAGE消息发送到被叫,以下是流媒体服务器网关转发模式下的MESSAGE消息通话过程:
(1)监控客户端发起一个新的MESSAGE消息,在监控客户端和流媒体服务器间会创建一个新的TCP连接,MESSAGE消息可以携带消息体Body,消息体的内容为文本内容或其他二进制内容;
(2)流媒体服务器收到MESSAGE消息后,立即向监控客户端回复200响应;
(3)流媒体服务器根据TO字段的头端设备被叫号码,向该头端设备转发一个新的MESSAGE消息,流媒体服务器会将监控客户端发送的MESSAGE消息体内容Body及其它字段参数值复制到新的MESSAGE中,且在新的MESSAGE消息中使用一个新的Call-ID,流媒体服务器会向头端设备发起一个新的TCP连接转发MESSAGE消息,同时将该去话TCP连接与之前的来话TCP连接建立关联;
(4)头端设备收到MESSAGE消息后,回复200消息相应,200消息相应不能携带消息体Body;
(5)头端设备在之前创建的TCP连接上向监控客户端发起了一个新的MESSAGE消息,此时被叫号码为监控客户端的会话ID号码,MESSAGE消息采用一个新的Call-ID;
(6)流媒体服务器收到MESSAGE消息后,立即向头端设备回复200响应;
(7)流媒体服务器根据监控客户端被叫号码,通过连接管理机制,找到之前对应的监控客户端创建的TCP连接,将该MESSAGE消息复制到一个新的MESSAGE消息中转发至监控客户端,流媒体服务器会在MESSAGE消息中使用一个新的Call-ID;
(8)监控客户端收到MESSAGE消息后,回复200响应,至此,监控客户端结束本次即时消息通话,即可关闭该TCP连接,流媒体服务器发现监控客户端的TCP连接关闭后,也随即关闭与头端设备的TCP连接。
流媒体服务器始终处于监听状态,头端设备预先创建一个MESSAGE通信连接,该MESSAGE消息并不被转发,只起TCP通信链路建立的作用,流媒体服务器会记录该MESSAGE的消息体类型,发往该头端设备的所有此类型的MESSAGE消息全部从此TCP连接进行转发,MESSAGE消息通话过程为:
(1)头端设备首先向流媒体服务器发送MESSAGE消息,消息体类型为1,表示来自监控客户端的向该头端设备发起的所有MESSAGE消息,只要消息体类型为1,则MESSAGE消息将被转发至该头端设备,头端设备会周期性发送MESSAGE消息,以检测通信链路的是否正常连接,如果链路因故障终端连接,则头端设备会周期性主动发起新的该类型的MESSAGE消息以重新建立连接;
(2)流媒体服务器收到MESSAGE消息后,立即向监控客户端回复200响应;
(3)流媒体服务器根据TO字段的头端设备被叫号码,向该头端设备转发一个新的MESSAGE消息,流媒体服务器会将监控客户端发送的MESSAGE消息体内容Body及其它字段参数值复制到新的MESSAGE中,且在新的MESSAGE消息中使用一个新的Call-ID,流媒体服务器会向头端设备发起一个新的TCP连接转发MESSAGE消息,同时将该去话TCP连接与之前的来话TCP连接建立关联;
(4)头端设备收到MESSAGE消息后,回复200消息相应,200消息相应不能携带消息体Body;
(5)头端设备在之前创建的TCP连接上向监控客户端发起了一个新的MESSAGE消息,此时被叫号码为监控客户端的会话ID号码,MESSAGE消息采用一个新的Call-ID;
(6)流媒体服务器收到MESSAGE消息后,立即向头端设备回复200响应;
(7)流媒体服务器根据监控客户端被叫号码,通过连接管理机制,找到之前对应的监控客户端创建的TCP连接,将该MESSAGE消息复制到一个新的MESSAGE消息中转发至监控客户端,流媒体服务器会在MESSAGE消息中使用一个新的Call-ID;
(8)监控客户端收到MESSAGE消息后,回复200响应,监控客户端关闭此TCP通信连接,流媒体服务器检测到此连接关闭后并不试图关闭与头端设备的连接,仅解除客户端TCP连接与头端TCP连接的对应关系,并清除相关资源。
本发明具有的优点和积极效果是:
本发明的视频监控会话方法能够实现对头端设备与监控客户端直联时的控制,同时能够实现多台监控客户端同时访问头端设备并采用流媒体服务器时的设备间的连接控制。本发明的视频监控会话方法对应于具有功能逻辑独立、易于扩展的、具有高可伸缩性视频监控平台架构,从而能够满足大规模高清网络视频监控应用的需求。
附图说明
图1是本发明的视频监控会话方法的步骤示意图;
图2是视频监控会话协议的结构;
图3为两个用户代理建立点对点会话时的会话连接关系;
图4为通过流媒体服务器会话时的会话连接关系;
图5是本发明的视频监控会话方法中不同类型消息的对照表;
图6是本发明的视频监控会话方法中消息响应的对照表;
图7是本发明的视频监控会话方法中会话请求的编码格式;
图8为本发明的视频监控会话方法中头端设备与流媒体服务器建立会话的示意图;
图9为本发明的视频监控会话方法中监控客户端与流媒体服务器建立会话的示意图;
图10是本发明的视频监控会话方法中流媒体服务器以代理模式转发MESSAGE消息的示意图;
图11是本发明的视频监控会话方法中流媒体服务器以网关转发模式转发MESSAGE消息的示意图;
图12是本发明的视频监控会话方法中流媒体服务器以网关转发模式转发MESSAGE消息的另一种示意图;
图13是本发明的视频监控会话方法中流媒体服务器与头端设备断开时的示意图;
图14是本发明的视频监控会话方法中流媒体服务器与监控客户端断开时的示意图。
具体实施方式
以下参照附图及实施例对本发明进行详细的说明。
图1是本发明的视频监控会话方法的步骤示意图。
如图1所示,本发明的视频监控会话方法,其中监控客户端通过了设备访问的鉴权和认证,获取了头端设备的访问号码、头端设备的信令IP地址和端口号,且监控客户端支持头端设备的音视频媒体格式,当监控客户端发送消息时以用户代理客户端方式运行,头端设备接收消息时以用户代理服务器端方式运行,包括以下步骤:
(1)监控客户端发送会话邀请,即INVITE消息,监控客户端首先与头端设备建立一个TCP连接,并在TCP连接上发送INVITE消息,发起会话邀请,监控客户端在INVITE消息中加入会话媒体描述信息SMD,告知头端设备其自己的媒体能力,监控客户端发送INVITE消息后,等待头端设备回复消息,确定是否成功接收INVITE消息;
(2)头端设备回复200响应,头端设备收到会话邀请后,提取监控客户端INVITE消息中的设备通道号,将该通道的媒体能力填写到会话媒体描述SMD中,随200消息返回至监控客户端;
(3)头端设备发送音频媒体流,监控客户端收到200消息相应后,提取会话媒体描述SMD中的媒体能力信息,准备建立媒体连接,若监控客户端在INVITE消息中加入了会话媒体描述信息SMD,则监控客户端工作在媒体流监听模式,由头端设备从SMD中提取监控客户端的媒体流监听地址和端口号并发起TCP媒体连接;否则头端设备会工作在媒体流监听模式,监控客户端会从SMD中提取头端设备媒体通道的TCP监听地址和端口号,随即向该地址和端口号上先后发起两个TCP媒体连接,以接收音视频媒体流;监控客户端在获取媒体流前,会分别在音视频TCP连接上发送一个媒体流的请求消息,该请求消息携带了本次媒体流的会话标识(Call-ID),头端设备收到该请求消息后,会通过会话标识将媒体流与本次会话建立关联;
(4)监控客户端发送BYE消息终止会话,当监控客户端想结束本次会话时,可以发送BYE消息,准备结束本次会话;
(5)头端设备回复BYE消息的200响应,头端设备收到监控客户端的BYE消息后,即可准备结束本次会话,向监控客户端发送200响应后,头端设备可以清除本次会话的所有资源,断开媒体TCP连接和信令TCP连接;客户端收到200响应后,清除本次会话的所有资源,断开媒体TCP连接和信令TCP连接(TCP连接双向断开),若客户端发送BYE消息后,在一段时间内没有收到200响应,则客户端应主动清除本次会话的所有资源。
上述客户端接收BYE消息200响应的延迟时间为30秒。
图2是视频监控会话协议的结构。
如图2所示,上述视频监控会话方法建立在视频监控会话协议的基础之上,视频监控会话协议包括VSSP协议栈、会话管理和用户代理;VSSP协议基于TCP协议,在遇到TCP拥塞的情况下,VSSP协议进行干涉,提供了定时器操作,用以结束会话,VSSP协议栈又包括:TCP层,负责协议的发送与接收;协议字段解析层,即Syntax层,负责协议包的解包与打包;对话层,即Dialog层,负责信令控制逻辑,Dialog为信令实体,代表两个用户代理进行会话时建立的信令关系;会话管理实体Session是Dialog层的使用者,Dialog负责Session的建立、状态改变与销毁;用户代理User Agent为逻辑实体,对上提供人机操作接口,下层包装了会话管理Session实体、对话Dialog实体和媒体流实体。图3为两个用户代理建立点对点会话时的会话连接关系。这里用户代理分别是头端设备和监控客户端。一个Dialog由三个关键元素构成,即呼叫标识Call-ID、主叫标识From、被叫标识To。媒体流也可以使用该呼叫标识Call-ID,用以建立媒体流和会话的关联关系。主、被叫可以用全局唯一的标识码进行标识,比如电话号码、统一资源定位符(URI)等。
图4为通过流媒体服务器会话时的会话连接关系,在头端设备与多个监控客户端之间设置流媒体服务器,一个头端设备被多个监控客户端所访问,流媒体服务器中包含多个群组会话,每个群组会话管理了多个监控客户端的会话和一个头端设备会话。
采用十进制12位即12字节的全局统一标识码,作为协议字段To、From的取值,其格式为类别号+ 设备号+ 通道号,其中类别号为1位,设备号采用8位数字,通道号采用3位数字;
类别号的取值定义如下:
有效值选取区间为[0-9],类别号=9,代表一般的监控客户端,类别号=1,代表一般设备;其它取值为非法标识,会产生400响应即语法错误,或404响应即号码不存在;
设备号的取值定义如下:
有效值选取区间为[00000000-99999999];
其它任何无效取值为非法标识,会产生400响应即语法错误,或404响应即号码不存在;
通道号取值如下:
有效值选取区间为[000-999]或[***];
其它任何无效取值为非法标识,会产生400响应即语法错误,或404响应即号码不存在。
图5是本发明的视频监控会话方法中不同类型消息的对照表。
INVITE请求用于建立视频监控会话。在直连模式下,一般由监控客户端向头端设备发起INVITE请求。在流媒体服务器转发模式下,一般由头端设备和监控客户端分别向流媒体服务器发送会话请求,建立会话。这种情况下,协议实现时,一般建议考虑在头端设备系统启动后,周期性自动向配置好的流媒体服务器发送INVITE请求,直到建立会话为止。周期发送时间自行定义,这里建议的周期发送时间为60秒。INVITE请求可以携带1条或多条SMD会话媒体描述,也可以不携带SMD会话描述。
当监控客户端发起INVITE请求时,SMD会话媒体描述会携带初次希望访问的1个或多个头端设备通道号,1个通道号对应一条SMD会话媒体描述记录。如果被叫号码包含一个有效的通道号号码,则SMD至多包含一条相对应的通道号的媒体描述,这种情况下也可以不携带SMD会话媒体描述,被叫收到该消息后,会自动在返回消息中加入通道号得媒体信息。如果INVITE请求携带多条SMD会话媒体描述,被叫号码的通道号号码应为“***”,即不指明特定的通道号,通道号的访问控制由SMD会话媒体描述提供。
头端设备在向流媒体服务器发送INVITE请求时,主被叫号码相同,其中通道号号码为“***”,INVITE请求中会携带所有通道的SMD会话媒体描述,在本次会话中与流媒体服务器建立所有通道的媒体连接。
REINVITE请求用于在会话期间改变媒体属性。REINVITE请求一般由监控客户端发起,必须携带SMD会话媒体描述。
REINVITE请求可以用于实现呼叫保持功能,这时可以保留会话但不切断,停止媒体流的发送。可以将监控客户端SMD媒体流接收的IP地址设定为“0.0.0.0”,则在该媒体连接上的媒体发送会停止,恢复为有效值后,头端设备会继续发送媒体流。
如果监控客户端与头端设备或者流媒体服务器建立的会话中包含多个通道的媒体流,REINVITE请求可以在会话期间增加或者切断某个通道的媒体流传输。这种情况下,会话发起时的被叫号码中通道号码必须为“***”,否则会话期间不允许增加或者切断媒体流操作。当通过REINVITE携带的会话媒体描述进行某个通道的媒体流的切断操作时,会话中保有的媒体通道数不能少于1个,否则视为无效的媒体属性变更操作。建议协议实现时,在监控客户端的用户输入规则上采取操作限制,比如:当通道数剩为1时,删减操作按钮变为灰色禁用状态。
REINVITE请求的实现可以根据需要而定,并不作为必须的实现。如果不实现REINVITE请求,则系统不支持呼叫保持功能,不支持在会话过程中改变通道媒体属性的功能。
BYE请求用于结束一个已建立的或者正在建立中的会话。发送BYE请求后,应停止UPDATE或UPDATE的200消息响应发送,如果在60秒内未收到BYE请求的200消息响应,则结束并销毁当前会话。
UPDATE用于提供信令链路的心跳检测,在视频监控会话协议中UPDATE发送的时间间隔为10秒。收到UPDATE消息的一方必须返回200消息响应。
UPDATE消息属于会话内消息,UPDATE消息的发送在一个会话建立后由会话的主叫方发出,应在会话建立的10秒后发送。
如果发出UPDATE的主叫方在发送某个UPDATE消息的60秒内都没有收到200响应,则认为与被叫方的通信链路发生故障,则定时器触发时,结束并销毁当前会话。
如果接收UPDATE的被叫方在发送一个200响应的60秒内都没有收到UPDATE消息,则认为与主叫方的通信链路发生故障,立即结束并销毁当前会话。
本协议建议由头端设备向流媒体服务器发送UPDATE消息,由流媒体服务器向监控客户端发送UPDATE消息。
MESSAGE请求一般由监控客户端发出,以实现远程头端设备的参数配置、JPEG图像抓拍和485云台控制协议的传输。
MESSAGE请求既可以用于会话内请求,也可以用于会话外请求(独立于某个会话存在)。MESSAGE请求可以携带文本或者二进制媒体流。MESSAGE请求的200响应不能携带媒体流。
当MESSAGE请求位于会话内时,如果没有收到200消息相应,系统不需要重新发送MESSAGE请求,也不应切断当前会话。是否继续发送新的MESSAGE请求由操作人员确定。
图6是本发明的视频监控会话方法中消息响应的对照表。
如图6,200消息响应,请求成功。所有成功的会话请求都应回复200消息响应。当监控客户端与流媒体服务器建立会话连接时,收到来自流媒体服务器的INVITE消息的200消息响应,该消息可以携带会话媒体描述(SMD),提供被叫头端设备的媒体描述能力。
消息响应,请求消息语法错误。,此消息虽然能够被识别,但是仍旧被拒绝。,被叫不存在。可能的原因是被叫号码没有被定义,或者已经作废删除,或者没有连接流媒体服务器。,当发送一个Session内请求,如:REINVITE、MESSAGE、UPDATE或者BYE时,请求携带的Call-ID无法与会话匹配,则返回此消息响应。,流媒体服务器遇到内部错误,无法处理该消息。主叫端可以在若干秒后重新尝试连接。,服务器不支持请求的方法。,流媒体服务器过载时返回此消息响应。,流媒体服务器不支持请求中所用的VSSP协议版本。,由于媒体能力不匹配,返回此消息响应。
图7是本发明的视频监控会话方法中会话请求的编码格式。
请求分三个部分,信令部分、SMD会话媒体描述、消息体(Message Body)。信令和每个SMD的长度固定,消息体长度不定,可以在信令部分的BodyLength字段设定或读取消息体的长度。信令部分总长度108字节,各字段的意义如下:
(1)32位协议标识头,取值为“0xFF50FF50”。
(2)2字节版本号(Version),版本号分为3个部分,表示为字符串时可以是“1.12”,分为主版本号,次版本号1,取值分别为十进制0~99,各占8位,由高到低分别主版本号、次版本号1。
(3)请求(Request)类型,16位整数值。
(4)序列号(CSeq),消息序列号,第一个会话请求的CSeq为0,会话建立后主被叫所有的每个请求CSeq加1。
(5)被叫号码(To),12字节字符串。
(6)主叫号码(From),12字节字符串。
(7)会话标识(Call-ID),36字节字符串,Linux下可以取值为UUID,Windows下可以取值为GUID。会话标识由主叫方在发起第一个会话请求时创建。所有后续的Session内请求和响应都需要引用该值,媒体流帧头应加入该标识,以建立会话关联。
(8)用户名(UserName),12字节字符串。该值可以不使用,在后续协议扩展时,引入注册功能时使用。
(9)用户密码(Password),12字节字符串。该值可以不使用,在后续协议扩展时,引入注册功能时使用。
(10)会话媒体描述标识字(HasSMD),32位整型值,为1时标识消息带有SMD描述,为0表示不带有SMD描述。
(11)会话描述个数(SMDCount),16位整型值,会话描述的个数。协议解析时,依据是否带有会话描述和会话描述的个数可以获取每个定长会话描述内容起始位置。
(12)消息体类型(BodyType),16位整型值,取值为1时,消息体类型为抓拍数据;取值为2时,消息体类型为参数配置数据;取值为3时,消息体类型为485云台控制数据。其它取值类型,自行定义;取值为0时,无消息体数据,并且消息体长度也为0。
(13)消息体长度(BodyLength),32位整型值,消息体的长度,为0时不带消息体。
会话描述部分48字节,各字段意义如下。
(1)通道号(Channel)。16位整型值,代表头端设备的通道号。缺省的,通道号最高位为0,表示默认的媒体描述是新追加的。如果通道号最高位1,即数值为负的通道号,表示取消该通道该SMD的媒体连接,这种方式一般用于通过REINVITE消息修改会话媒体属性的情况。
(2)媒体类型(MediaType)。16位整型值,为1时代表音品,为2时代表视频。
(3)IP地址类型(IPType)。32位整型值,为1时代表IP V4,为2时代表IP V6。
(4)IP地址。16字节十六进制值。如果IP地址类型为IP V4,则使用前4字节取值,IP地址每个部分分别占8位长度。如IP地址172.28.1.32,对应的16进制值分别为AC、1C、01、20,对应的16进制整型值为0xAC1C0120。剩余的12字节IP地址值取0。如果IP地址类型为IP V6,则IPType字段后的16字节为IP V6地址,取值方式同IP V4。
(5)端口号(Port)。32位整型值。如果媒体端口不采用监听方式,一般不使用该值。
(6)载荷类型(Payload)。32位整型值。常见Payload类型见附录A:表A-1。
(7)媒体流方向(MediaDirection)。32位整型值。取值为1时代表在该连接上只接收媒体流,取值为2时代表在该连接上只发送媒体流,取值为3时代表在该连接上即可接收也可发送媒体流。
(8~13)媒体属性。2字节属性值,可以自定义取值。
消息体部分的内容可以自定义,在这里不作描述。UPDATE、REINFVITE、MESSAGE请求可以携带消息体。
在本实施例中仅说明视频监控会话的建立、修改和结束过程。所提供的部分实例仅作为一种可能的通信实现方式,并不代表唯一的实现方式。实例中显示的数值皆为主机字节序。
所提供实例中各实体满足如下的配置条件:
头端设备
IP地址:192.168.1.10
通道数:3
会话号码:123787823000~123787823001、123787823***
音频类型:PCMU 类型值0,采样率8000,声道数 1,量化编码位数 8
视频类型:H.264 类型值98,宽度 1920,高度 1080
流媒体服务器
上行流IP地址:192.168.1.50
上行流信令监听端口号:3000
上行流媒体监听端口号:3001
下行流IP地址:192.168.1.51
下行流监听端口号:3000
下行流媒体监听端口号:3001
监控客户端
IP地址:192.168.1.139
会话号码:918918311000。
图8为本发明的视频监控会话方法中头端设备与流媒体服务器建立会话的示意图。
头端设备连接流媒体服务器时,流媒体服务器工作在监听模式,头端设备工作在主动连接模式,头端设备与流媒体服务器之间的连接步骤为:
(1)头端设备发起INVITE会话请求,头端设备会将自己的媒体能力通过SMD发送至流媒体服务器,流媒体服务器收到SMD后会预先分配媒体流资源,以在媒体流到来后能够立即进行媒体处理;
(2)流媒体服务器回复200消息响应,流媒体服务器会在回复的SMD中加入监听每一个通道每一个媒体流的监听IP地址和端口号,媒体流请求由头端设备发起;
(3)头端设备依次发起通道000的音频和视频的媒体流请求,对于TCP连接,头端设备可以在媒体流的第一个帧中加入会话媒体流会话关联信息,这里应使用Call-ID作为媒体流与会话的关联键;
(4)头端设备依次发起通道001的音频和视频的媒体流请求。
头端设备连接流媒体服务器后,会话一旦建立则将一直保持。指令信消息(抓拍、参数配置、485云台控制)亦从该信令连接收发。
图9为本发明的视频监控会话方法中监控客户端与流媒体服务器建立会话的示意图。
监控客户端连接流媒体服务器时,流媒体服务器工作在监听模式,流媒体服务器与监控客户端之间的连接步骤为:
(1)监控客户端向流媒体服务器发起INVITE请求,流媒体服务器收到INVITE请求后会根据被叫号码,即头端设备+通道号,寻找相关的群组会话,找到头端设备所属的群组会话后,建立与监控客户端的会话,并将该会话加入该群组会话中;
(2)流媒体服务器回复200消息响应,SMD描述的Port字段中有一个0x00000BB9的16进制值,即流媒体服务器的TCP监听端口号3001;
(3)会话建立后由监控客户端向流媒体服务器发起音视频媒体流的TCP连接,TCP连接建立后,监控客户端会发送一个媒体流请求头,流媒体服务器收到该请求头后,会建立媒体流与会话的关联关系,并转发相应的头端设备通道的音视频媒体流。
可以用于会话内的消息有REINVITE和UPDATE,通过流媒体服务器向头端设备发送REINVITE消息改变媒体属性,头端设备与流媒体服务器建立会话连接后,若此时没有监控客户端或者录像设备访问流媒体服务器获取该设备的媒体转发流,则可以将头端设备的媒体流发送暂停,在 REINVITE消息的SMD会话媒体描述中,可以将IP地址设定为“0.0.0.0”,则头端设备将停止向该地址发送媒体流,但会话并不拆除,恢复媒体流发送时,只需再次通过发送REINVITE消息,将SMD中的IP地址恢复为初始有效值。
MESSAGE消息可以在会话外发送,用于会话外的即时通讯。抓拍、参数配置、485云台控制全部采用基于MESSAGE消息的即时通讯方式实现。监控客户端和头端设备可以直接进行端到端的MESSAGE通信,也可以采用基于服务器转发的通信模式。当通过流媒体服务器转发MESSAGE消息时,有两种转发模式,第一种是代理模式,第二种是网关模式。
图10是本发明的视频监控会话方法中流媒体服务器以代理模式转发MESSAGE消息的示意图。
监控客户端与头端设备之间的MESSAGE消息通过流媒体服务器转发,流媒体服务器以代理方式转发MESSAGE消息,MESSAGE消息的发送是独立于任何一个会话的,MESSAGE消息本身也不会引起一个新的VSSP会话的创建,MESSAGE消息的发送采用独立的Call-ID,不与任何会话关联,每个新的MESSAGE消息采用新的Call-ID,200消息响应使用MESSAGE请求的Call-ID,以下是流媒体服务器代理模式下的MESSAGE消息通话过程:
(1)监控客户端发起一个新的MESSAGE消息,在监控客户端和流媒体服务器间会创建一个新的TCP连接,MESSAGE消息可以携带消息体Body,消息体的内容可以是文本内容也可以是任何自定义格式的2进制内容;
(2)流媒体服务器收到MESSAGE消息后,根据TO字段的头端设备被叫号码,向该头端设备转发MESSAGE消息,流媒体服务器会向头端设备发起一个新的TCP连接转发MESSAGE消息,同时将该去话TCP连接与之前的来话TCP连接建立关联,该MESSAGE消息的Call-ID与收到的MESSAGE消息的Call-ID相同;
(3)头端设备收到MESSAGE消息后,回复200消息响应,200消息响应不携带消息体Body;
(4)流媒体服务器转发200消息相到主叫监控客户端,主叫监控客户端收到200消息后结束本次即时消息通话,关闭TCP连接,或者保持此TCP 连接,用于发送和接收新的MESSAGE消息;
(5)头端设备在之前创建的TCP连接上向监控客户端发起了一个新的MESSAGE消息,此时被叫号码为监控客户端的会话ID号码,MESSAGE消息采用一个新的Call-ID;
(6)流媒体服务器根据监控客户端被叫号码,通过连接管理机制,找到之前对应的监控客户端创建的TCP连接,将该MESSAGE消息转发至监控客户端;
(7)监控客户端收到MESSAGE消息后,回复200消息响应,当监控客户端认为可以结束本次即时消息通话,即关闭该TCP连接;TCP 连接的关闭可以由监控客户端软件控制,比如,监控客户端的本次即时消息对话的窗口关闭、或者按下即时消息通信结束按钮等操作,都可以触发TCP连接的关闭;
(8)流媒体服务器转发200消息响应,当发现监控客户端的TCP连接关闭后,随即关闭与头端设备的TCP连接。
图11是本发明的视频监控会话方法中流媒体服务器以网关转发模式转发MESSAGE消息的示意图。
监控客户端与头端设备之间的MESSAGE消息通过流媒体服务器转发,流媒体服务器以网关转发模式转发MESSAGE消息,流媒体服务器收到主叫的MESSAGE消息后,立即回复200响应,然后拷贝MESSAGE消息内容和消息类型,复制到一个新的MESSAGE消息发送到被叫,以下是流媒体服务器网关转发模式下的MESSAGE消息通话过程:
(1)监控客户端发起一个新的MESSAGE消息,在监控客户端和流媒体服务器间会创建一个新的TCP连接,MESSAGE消息可以携带消息体Body,消息体的内容为文本内容或其他二进制内容;
(2)流媒体服务器收到MESSAGE消息后,立即向监控客户端回复200响应;
(3)流媒体服务器根据TO字段的头端设备被叫号码,向该头端设备转发一个新的MESSAGE消息,流媒体服务器会将监控客户端发送的MESSAGE消息体内容Body及其它字段参数值复制到新的MESSAGE中,且在新的MESSAGE消息中使用一个新的Call-ID,流媒体服务器会向头端设备发起一个新的TCP连接转发MESSAGE消息,同时将该去话TCP连接与之前的来话TCP连接建立关联;
(4)头端设备收到MESSAGE消息后,回复200消息相应,200消息相应不能携带消息体Body;
(5)头端设备在之前创建的TCP连接上向监控客户端发起了一个新的MESSAGE消息,此时被叫号码为监控客户端的会话ID号码,MESSAGE消息采用一个新的Call-ID;
(6)流媒体服务器收到MESSAGE消息后,立即向头端设备回复200响应;
(7)流媒体服务器根据监控客户端被叫号码,通过连接管理机制,找到之前对应的监控客户端创建的TCP连接,将该MESSAGE消息复制到一个新的MESSAGE消息中转发至监控客户端,流媒体服务器会在MESSAGE消息中使用一个新的Call-ID;
(8)监控客户端收到MESSAGE消息后,回复200响应,至此,监控客户端结束本次即时消息通话,即可关闭该TCP连接,流媒体服务器发现监控客户端的TCP连接关闭后,也随即关闭与头端设备的TCP连接。
图12是本发明的视频监控会话方法中流媒体服务器以网关转发模式转发MESSAGE消息的另一种示意图。
流媒体服务器始终处于监听状态,头端设备预先创建一个MESSAGE通信连接,该MESSAGE消息并不被转发,只起TCP通信链路建立的作用,流媒体服务器会记录该MESSAGE的消息体类型,发往该头端设备的所有此类型的MESSAGE消息全部从此TCP连接进行转发,MESSAGE消息通话过程为:
(1)头端设备首先向流媒体服务器发送MESSAGE消息,消息体类型为1,表示来自监控客户端的向该头端设备发起的所有MESSAGE消息,只要消息体类型为1,则MESSAGE消息将被转发至该头端设备,头端设备会周期性发送MESSAGE消息,以检测通信链路的是否正常连接,如果链路因故障终端连接,则头端设备会周期性主动发起新的该类型的MESSAGE消息以重新建立连接;
(2)流媒体服务器收到MESSAGE消息后,立即向监控客户端回复200响应;
(3)流媒体服务器根据TO字段的头端设备被叫号码,向该头端设备转发一个新的MESSAGE消息,流媒体服务器会将监控客户端发送的MESSAGE消息体内容Body及其它字段参数值复制到新的MESSAGE中,且在新的MESSAGE消息中使用一个新的Call-ID,流媒体服务器会向头端设备发起一个新的TCP连接转发MESSAGE消息,同时将该去话TCP连接与之前的来话TCP连接建立关联;
(4)头端设备收到MESSAGE消息后,回复200消息相应,200消息相应不能携带消息体Body;
(5)头端设备在之前创建的TCP连接上向监控客户端发起了一个新的MESSAGE消息,此时被叫号码为监控客户端的会话ID号码,MESSAGE消息采用一个新的Call-ID;
(6)流媒体服务器收到MESSAGE消息后,立即向头端设备回复200响应;
(7)流媒体服务器根据监控客户端被叫号码,通过连接管理机制,找到之前对应的监控客户端创建的TCP连接,将该MESSAGE消息复制到一个新的MESSAGE消息中转发至监控客户端,流媒体服务器会在MESSAGE消息中使用一个新的Call-ID;
(8)监控客户端收到MESSAGE消息后,回复200响应,监控客户端关闭此TCP通信连接,流媒体服务器检测到此连接关闭后并不试图关闭与头端设备的连接,仅解除客户端TCP连接与头端TCP连接的对应关系,并清除相关资源。
图13是本发明的视频监控会话方法中流媒体服务器与头端设备断开时的示意图。
当流媒体停止服务时,需要先切断所有会话连接,这时需要流媒体服务器向头端设备发送BYE消息来结束会话。由于在会话建立后,头端设备会发送心跳UPDATE消息,检查信令链路的连接情况,每个UPDATE消息属于Session会话内消息,每发送一个请求(REQUEST),CSeq值会加1,因此上图假设发送BYE消息前的一个UPDATE消息的CSeq值为0xn(十六进制值),因此BYE消息发送时,CSeq值为0xn+1。
在整个会话期间Call-ID值不变。
图14是本发明的视频监控会话方法中流媒体服务器与监控客户端断开时的示意图。
监控客户端BYE消息的发送一般由使用者通过用户界面触发,这时使用者希望主动切断与流媒体服务器的会话时会。
流媒体服务器也可以主动发送BYE消息给监控客户端,切断会话,比如,当流媒体停止服务时,需要先切断所有会话连接,这时需要流媒体服务器向监控客户端和头端设备发送BYE消息来结束会话。
由于在会话建立后,流媒体服务器会发送心跳UPDATE消息,检查信令链路的连接情况,每个UPDATE消息属于Session会话内消息,每发送一个请求(REQUEST),CSeq值会加1,因此上图假设发送BYE消息前的一个UPDATE消息的CSeq值为0xn(十六进制值),因此BYE消息发送时,CSeq值为0xn+1。整个会话期间Call-ID值不变。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例公开如上,然而,并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当然会利用揭示的技术内容作出些许更动或修饰,成为等同变化的等效实施例,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均属于本发明技术方案的范围内。
Claims (11)
1.一种视频监控会话方法,其中监控客户端通过了设备访问的鉴权和认证,获取了头端设备的访问号码、头端设备的信令IP地址和端口号,且监控客户端支持头端设备的音视频媒体格式,当监控客户端发送消息时以用户代理客户端方式运行,头端设备接收消息时以用户代理服务器端方式运行,包括以下步骤:
(1)监控客户端发送会话邀请,即INVITE消息,监控客户端首先与头端设备建立一个TCP连接,并在TCP连接上发送INVITE消息,发起会话邀请,监控客户端在INVITE消息中加入会话媒体描述信息SMD,告知头端设备其自己的媒体能力,监控客户端发送INVITE消息后,等待头端设备回复消息,确定是否成功接收INVITE消息;
(2)头端设备回复200响应,头端设备收到会话邀请后,提取监控客户端INVITE消息中的设备通道号,将该通道的媒体能力填写到会话媒体描述SMD中,随200消息返回至监控客户端;
(3)头端设备发送音频媒体流,监控客户端收到200消息相应后,提取会话媒体描述SMD中的媒体能力信息,准备建立媒体连接,若监控客户端在INVITE消息中加入了会话媒体描述信息SMD,则监控客户端工作在媒体流监听模式,由头端设备从SMD中提取监控客户端的媒体流监听地址和端口号并发起TCP媒体连接;否则头端设备会工作在媒体流监听模式,监控客户端会从SMD中提取头端设备媒体通道的TCP监听地址和端口号,随即向该地址和端口号上先后发起两个TCP媒体连接,以接收音视频媒体流;监控客户端在获取媒体流前,会分别在音视频TCP连接上发送一个媒体流的请求消息,该请求消息携带了本次媒体流的会话标识Call-ID,头端设备收到该请求消息后,会通过会话标识将媒体流与本次会话建立关联;
(4)监控客户端发送BYE消息终止会话,当监控客户端想结束本次会话时,可以发送BYE消息,准备结束本次会话;
(5)头端设备回复BYE消息的200响应,头端设备收到监控客户端的BYE消息后,即可准备结束本次会话,向监控客户端发送200响应后,头端设备可以清除本次会话的所有资源,断开媒体TCP连接和信令TCP连接;客户端收到200响应后,清除本次会话的所有资源,断开媒体TCP连接和信令TCP连接,若客户端发送BYE消息后,在一段时间内没有收到200响应,则客户端应主动清除本次会话的所有资源。
2.根据权利要求1所述的视频监控会话方法,其特征在于:客户端接收BYE消息200响应的延迟时间为30秒。
3.根据权利要求1所述的视频监控会话方法,其特征在于:上述视频监控会话方法建立在视频监控会话协议的基础之上,视频监控会话协议包括VSSP协议栈、会话管理和用户代理;VSSP协议基于TCP协议,在遇到TCP拥塞的情况下,VSSP协议进行干涉,提供了定时器操作,用以结束会话,VSSP协议栈又包括:TCP层,负责协议的发送与接收;协议字段解析层,即Syntax层,负责协议包的解包与打包;对话层,即Dialog层,负责信令控制逻辑,Dialog为信令实体,代表两个用户代理进行会话时建立的信令关系;会话管理实体Session是Dialog层的使用者,Dialog负责Session的建立、状态改变与销毁;用户代理User Agent为逻辑实体,对上提供人机操作接口,下层包装了会话管理Session实体、对话Dialog实体和媒体流实体;一个Dialog由三个关键元素构成,即呼叫标识Call-ID、主叫标识From、被叫标识To。
4.根据权利要求3所述的视频监控会话方法,其特征在于:在头端设备与多个监控客户端之间设置流媒体服务器,一个头端设备被多个监控客户端所访问,流媒体服务器中包含多个群组会话,每个群组会话管理了多个监控客户端的会话和一个头端设备会话。
5.根据权利要求4所述的视频监控会话方法,其特征在于:采用十进制12位即12字节的全局统一标识码,作为协议字段To、From的取值,其格式为类别号+ 设备号+ 通道号,其中类别号为1位,设备号采用8位数字,通道号采用3位数字;
类别号的取值定义如下:
有效值选取区间为[0-9],类别号=9,代表一般的监控客户端,类别号=1,代表一般设备;其它取值为非法标识,会产生400响应即语法错误,或404响应即号码不存在;
设备号的取值定义如下:
有效值选取区间为[00000000-99999999];
其它任何无效取值为非法标识,会产生400响应即语法错误,或404响应即号码不存在;
通道号取值如下:
有效值选取区间为[000-999]或[***];
其它任何无效取值为非法标识,会产生400响应即语法错误,或404响应即号码不存在。
6.根据权利要求4所述的视频监控会话方法,其特征在于:头端设备连接流媒体服务器时,流媒体服务器工作在监听模式,头端设备工作在主动连接模式,头端设备与流媒体服务器之间的连接步骤为:
(1)头端设备发起INVITE会话请求,头端设备会将自己的媒体能力通过SMD发送至流媒体服务器,流媒体服务器收到SMD后会预先分配媒体流资源,以在媒体流到来后能够立即进行媒体处理;
(2)流媒体服务器回复200消息响应,流媒体服务器会在回复的SMD中加入监听每一个通道每一个媒体流的监听IP地址和端口号,媒体流请求由头端设备发起;
(3)头端设备依次发起通道000的音频和视频的媒体流请求,对于TCP连接,头端设备可以在媒体流的第一个帧中加入会话媒体流会话关联信息,这里应使用Call-ID作为媒体流与会话的关联键;
(4)头端设备依次发起通道001的音频和视频的媒体流请求。
7.根据权利要求6所述的视频监控会话方法,其特征在于:监控客户端连接流媒体服务器时,流媒体服务器工作在监听模式,流媒体服务器与监控客户端之间的连接步骤为:
(1)监控客户端向流媒体服务器发起INVITE请求,流媒体服务器收到INVITE请求后会根据被叫号码,即头端设备+通道号,寻找相关的群组会话,找到头端设备所属的群组会话后,建立与监控客户端的会话,并将该会话加入该群组会话中;
(2)流媒体服务器回复200消息响应;
(3)会话建立后由监控客户端向流媒体服务器发起音视频媒体流的TCP连接,TCP连接建立后,监控客户端会发送一个媒体流请求头,流媒体服务器收到该请求头后,会建立媒体流与会话的关联关系,并转发相应的头端设备通道的音视频媒体流。
8.根据权利要求7所述的视频监控会话方法,其特征在于:通过流媒体服务器向头端设备发送REINVITE消息改变媒体属性,头端设备与流媒体服务器建立会话连接后,若此时没有监控客户端或者录像设备访问流媒体服务器获取该设备的媒体转发流,则可以将头端设备的媒体流发送暂停,在 REINVITE消息的SMD会话媒体描述中,可以将IP地址设定为“0.0.0.0”,则头端设备将停止向该地址发送媒体流,但会话并不拆除,恢复媒体流发送时,只需再次通过发送REINVITE消息,将SMD中的IP地址恢复为初始有效值。
9.根据权利要求7所述的视频监控会话方法,其特征在于:监控客户端与头端设备之间的MESSAGE消息通过流媒体服务器转发,流媒体服务器以代理方式转发MESSAGE消息,MESSAGE消息的发送是独立于任何一个会话的,MESSAGE消息本身也不会引起一个新的VSSP会话的创建,MESSAGE消息的发送采用独立的Call-ID,不与任何会话关联,每个新的MESSAGE消息采用新的Call-ID,200消息响应使用MESSAGE请求的Call-ID,以下是流媒体服务器代理模式下的MESSAGE消息通话过程:
(1)监控客户端发起一个新的MESSAGE消息,在监控客户端和流媒体服务器间会创建一个新的TCP连接,MESSAGE消息可以携带消息体Body,消息体的内容可以是文本内容也可以是任何自定义格式的2进制内容;
(2)流媒体服务器收到MESSAGE消息后,根据TO字段的头端设备被叫号码,向该头端设备转发MESSAGE消息,流媒体服务器会向头端设备发起一个新的TCP连接转发MESSAGE消息,同时将该去话TCP连接与之前的来话TCP连接建立关联,该MESSAGE消息的Call-ID与收到的MESSAGE消息的Call-ID相同;
(3)头端设备收到MESSAGE消息后,回复200消息响应,200消息响应不携带消息体Body;
(4)流媒体服务器转发200消息相到主叫监控客户端,主叫监控客户端收到200消息后结束本次即时消息通话,关闭TCP连接,或者保持此TCP 连接,用于发送和接收新的MESSAGE消息;
(5)头端设备在之前创建的TCP连接上向监控客户端发起了一个新的MESSAGE消息,此时被叫号码为监控客户端的会话ID号码,MESSAGE消息采用一个新的Call-ID;
(6)流媒体服务器根据监控客户端被叫号码,通过连接管理机制,找到之前对应的监控客户端创建的TCP连接,将该MESSAGE消息转发至监控客户端;
(7)监控客户端收到MESSAGE消息后,回复200消息响应,当监控客户端认为可以结束本次即时消息通话,即关闭该TCP连接;
(8)流媒体服务器转发200消息响应,当发现监控客户端的TCP连接关闭后,随即关闭与头端设备的TCP连接。
10.根据权利要求7所述的视频监控会话方法,其特征在于:监控客户端与头端设备之间的MESSAGE消息通过流媒体服务器转发,流媒体服务器以网关转发模式转发MESSAGE消息,流媒体服务器收到主叫的MESSAGE消息后,立即回复200响应,然后拷贝MESSAGE消息内容和消息类型,复制到一个新的MESSAGE消息发送到被叫,以下是流媒体服务器网关转发模式下的MESSAGE消息通话过程:
(1)监控客户端发起一个新的MESSAGE消息,在监控客户端和流媒体服务器间会创建一个新的TCP连接,MESSAGE消息可以携带消息体Body,消息体的内容为文本内容或其他二进制内容;
(2)流媒体服务器收到MESSAGE消息后,立即向监控客户端回复200响应;
(3)流媒体服务器根据TO字段的头端设备被叫号码,向该头端设备转发一个新的MESSAGE消息,流媒体服务器会将监控客户端发送的MESSAGE消息体内容Body及其它字段参数值复制到新的MESSAGE中,且在新的MESSAGE消息中使用一个新的Call-ID,流媒体服务器会向头端设备发起一个新的TCP连接转发MESSAGE消息,同时将该去话TCP连接与之前的来话TCP连接建立关联;
(4)头端设备收到MESSAGE消息后,回复200消息相应,200消息相应不能携带消息体Body;
(5)头端设备在之前创建的TCP连接上向监控客户端发起了一个新的MESSAGE消息,此时被叫号码为监控客户端的会话ID号码,MESSAGE消息采用一个新的Call-ID;
(6)流媒体服务器收到MESSAGE消息后,立即向头端设备回复200响应;
(7)流媒体服务器根据监控客户端被叫号码,通过连接管理机制,找到之前对应的监控客户端创建的TCP连接,将该MESSAGE消息复制到一个新的MESSAGE消息中转发至监控客户端,流媒体服务器会在MESSAGE消息中使用一个新的Call-ID;
(8)监控客户端收到MESSAGE消息后,回复200响应,至此,监控客户端结束本次即时消息通话,即可关闭该TCP连接,流媒体服务器发现监控客户端的TCP连接关闭后,也随即关闭与头端设备的TCP连接。
11.根据权利要求7所述的视频监控会话方法,其特征在于:流媒体服务器始终处于监听状态,头端设备预先创建一个MESSAGE通信连接,该MESSAGE消息并不被转发,只起TCP通信链路建立的作用,流媒体服务器会记录该MESSAGE的消息体类型,发往该头端设备的所有此类型的MESSAGE消息全部从此TCP连接进行转发,MESSAGE消息通话过程为:
(1)头端设备首先向流媒体服务器发送MESSAGE消息,消息体类型为1,表示来自监控客户端的向该头端设备发起的所有MESSAGE消息,只要消息体类型为1,则MESSAGE消息将被转发至该头端设备,头端设备会周期性发送MESSAGE消息,以检测通信链路的是否正常连接,如果链路因故障终端连接,则头端设备会周期性主动发起新的该类型的MESSAGE消息以重新建立连接;
(2)流媒体服务器收到MESSAGE消息后,立即向监控客户端回复200响应;
(3)流媒体服务器根据TO字段的头端设备被叫号码,向该头端设备转发一个新的MESSAGE消息,流媒体服务器会将监控客户端发送的MESSAGE消息体内容Body及其它字段参数值复制到新的MESSAGE中,且在新的MESSAGE消息中使用一个新的Call-ID,流媒体服务器会向头端设备发起一个新的TCP连接转发MESSAGE消息,同时将该去话TCP连接与之前的来话TCP连接建立关联;
(4)头端设备收到MESSAGE消息后,回复200消息相应,200消息相应不能携带消息体Body;
(5)头端设备在之前创建的TCP连接上向监控客户端发起了一个新的MESSAGE消息,此时被叫号码为监控客户端的会话ID号码,MESSAGE消息采用一个新的Call-ID;
(6)流媒体服务器收到MESSAGE消息后,立即向头端设备回复200响应;
(7)流媒体服务器根据监控客户端被叫号码,通过连接管理机制,找到之前对应的监控客户端创建的TCP连接,将该MESSAGE消息复制到一个新的MESSAGE消息中转发至监控客户端,流媒体服务器会在MESSAGE消息中使用一个新的Call-ID;
(8)监控客户端收到MESSAGE消息后,回复200响应,监控客户端关闭此TCP通信连接,流媒体服务器检测到此连接关闭后并不试图关闭与头端设备的连接,仅解除客户端TCP连接与头端TCP连接的对应关系,并清除相关资源。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110048367 CN102075737A (zh) | 2011-03-01 | 2011-03-01 | 视频监控会话方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110048367 CN102075737A (zh) | 2011-03-01 | 2011-03-01 | 视频监控会话方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102075737A true CN102075737A (zh) | 2011-05-25 |
Family
ID=44034062
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110048367 Pending CN102075737A (zh) | 2011-03-01 | 2011-03-01 | 视频监控会话方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102075737A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102595054A (zh) * | 2012-02-20 | 2012-07-18 | 深圳市深艾普科技有限公司 | 一种用于矩阵的视频切换方法和装置 |
CN102664868A (zh) * | 2012-03-16 | 2012-09-12 | 福州瑞芯微电子有限公司 | 一种基于流传输的会话协议的方法 |
CN103561281A (zh) * | 2013-10-25 | 2014-02-05 | Tcl集团股份有限公司 | 一种多媒体数据共享的方法及装置 |
CN103685313A (zh) * | 2013-12-26 | 2014-03-26 | 北京中电普华信息技术有限公司 | 一种应用于在线考试的通讯方法及系统 |
CN104519302A (zh) * | 2014-12-25 | 2015-04-15 | 漳州顶竹通讯技术有限公司 | 一种视频信息实时共享与管控的系统及方法 |
CN105262745A (zh) * | 2015-10-10 | 2016-01-20 | 广州市万世德智能装备科技有限公司 | 一种基于tcpip通信协议的自定义帧格式驱动方法及程序 |
WO2016078232A1 (zh) * | 2014-11-18 | 2016-05-26 | 中兴通讯股份有限公司 | 网元间媒体流数据发送、接收方法及发送、接收装置 |
CN107659415A (zh) * | 2016-07-25 | 2018-02-02 | 中兴通讯股份有限公司 | 一种云会议的媒体资源管理方法及装置 |
CN108307149A (zh) * | 2017-12-29 | 2018-07-20 | 上海顶竹通讯技术有限公司 | 一种视频代理系统及监控方法 |
CN109639810A (zh) * | 2018-12-20 | 2019-04-16 | 视联动力信息技术股份有限公司 | 一种国标tcp码流接入到视联网方法和装置 |
CN110971873A (zh) * | 2019-11-20 | 2020-04-07 | 武汉虹信技术服务有限责任公司 | 一种实时监控方法、监控系统及存储介质 |
CN112333088A (zh) * | 2021-01-04 | 2021-02-05 | 满金坝(深圳)科技有限公司 | 一种兼容性即时通信传输方法 |
CN115118762A (zh) * | 2022-05-19 | 2022-09-27 | 北京京东乾石科技有限公司 | 一种会话处理的方法、客户端和系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020124247A1 (en) * | 1999-08-03 | 2002-09-05 | Houghton William C. | Polling interactive television viewers |
CN1874494A (zh) * | 2005-12-21 | 2006-12-06 | 华为技术有限公司 | 远程视频监控系统及方法 |
CN1913533A (zh) * | 2006-09-05 | 2007-02-14 | 北京天地互连信息技术有限公司 | 基于会话初始化协议的远程视频监控系统及其实现方法 |
CN101170679A (zh) * | 2006-10-27 | 2008-04-30 | 中兴通讯股份有限公司 | 使用对等技术的iptv视频监控业务实现方法及其系统 |
US20080158336A1 (en) * | 2006-10-11 | 2008-07-03 | Richard Benson | Real time video streaming to video enabled communication device, with server based processing and optional control |
CN101277434A (zh) * | 2008-04-15 | 2008-10-01 | 北京华纬讯电信技术有限公司 | 利用综合的sip视频监控系统平台操控前端设备的方法 |
-
2011
- 2011-03-01 CN CN 201110048367 patent/CN102075737A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020124247A1 (en) * | 1999-08-03 | 2002-09-05 | Houghton William C. | Polling interactive television viewers |
CN1874494A (zh) * | 2005-12-21 | 2006-12-06 | 华为技术有限公司 | 远程视频监控系统及方法 |
CN1913533A (zh) * | 2006-09-05 | 2007-02-14 | 北京天地互连信息技术有限公司 | 基于会话初始化协议的远程视频监控系统及其实现方法 |
US20080158336A1 (en) * | 2006-10-11 | 2008-07-03 | Richard Benson | Real time video streaming to video enabled communication device, with server based processing and optional control |
CN101170679A (zh) * | 2006-10-27 | 2008-04-30 | 中兴通讯股份有限公司 | 使用对等技术的iptv视频监控业务实现方法及其系统 |
CN101277434A (zh) * | 2008-04-15 | 2008-10-01 | 北京华纬讯电信技术有限公司 | 利用综合的sip视频监控系统平台操控前端设备的方法 |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102595054A (zh) * | 2012-02-20 | 2012-07-18 | 深圳市深艾普科技有限公司 | 一种用于矩阵的视频切换方法和装置 |
CN102664868A (zh) * | 2012-03-16 | 2012-09-12 | 福州瑞芯微电子有限公司 | 一种基于流传输的会话协议的方法 |
CN103561281A (zh) * | 2013-10-25 | 2014-02-05 | Tcl集团股份有限公司 | 一种多媒体数据共享的方法及装置 |
CN103561281B (zh) * | 2013-10-25 | 2017-10-20 | Tcl集团股份有限公司 | 一种多媒体数据共享的方法及装置 |
CN103685313A (zh) * | 2013-12-26 | 2014-03-26 | 北京中电普华信息技术有限公司 | 一种应用于在线考试的通讯方法及系统 |
WO2016078232A1 (zh) * | 2014-11-18 | 2016-05-26 | 中兴通讯股份有限公司 | 网元间媒体流数据发送、接收方法及发送、接收装置 |
CN104519302B (zh) * | 2014-12-25 | 2018-03-20 | 漳州顶竹通讯技术有限公司 | 一种视频信息实时共享与管控的系统及方法 |
CN104519302A (zh) * | 2014-12-25 | 2015-04-15 | 漳州顶竹通讯技术有限公司 | 一种视频信息实时共享与管控的系统及方法 |
CN105262745B (zh) * | 2015-10-10 | 2019-05-10 | 佛山市湘德智能科技有限公司 | 一种基于tcpip通信协议的自定义帧格式驱动方法及程序 |
CN105262745A (zh) * | 2015-10-10 | 2016-01-20 | 广州市万世德智能装备科技有限公司 | 一种基于tcpip通信协议的自定义帧格式驱动方法及程序 |
CN107659415A (zh) * | 2016-07-25 | 2018-02-02 | 中兴通讯股份有限公司 | 一种云会议的媒体资源管理方法及装置 |
CN108307149A (zh) * | 2017-12-29 | 2018-07-20 | 上海顶竹通讯技术有限公司 | 一种视频代理系统及监控方法 |
CN109639810A (zh) * | 2018-12-20 | 2019-04-16 | 视联动力信息技术股份有限公司 | 一种国标tcp码流接入到视联网方法和装置 |
CN110971873A (zh) * | 2019-11-20 | 2020-04-07 | 武汉虹信技术服务有限责任公司 | 一种实时监控方法、监控系统及存储介质 |
CN110971873B (zh) * | 2019-11-20 | 2021-04-20 | 武汉虹信技术服务有限责任公司 | 一种实时监控方法、监控系统及存储介质 |
CN112333088A (zh) * | 2021-01-04 | 2021-02-05 | 满金坝(深圳)科技有限公司 | 一种兼容性即时通信传输方法 |
CN112333088B (zh) * | 2021-01-04 | 2021-04-20 | 满金坝(深圳)科技有限公司 | 一种兼容性即时通信传输方法 |
CN115118762A (zh) * | 2022-05-19 | 2022-09-27 | 北京京东乾石科技有限公司 | 一种会话处理的方法、客户端和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102075737A (zh) | 视频监控会话方法 | |
Andreasen et al. | Media gateway control protocol (MGCP) version 1.0 | |
US7734705B1 (en) | System and method for flexibly managing heterogeneous message delivery | |
US20070153770A1 (en) | System and method for feature-based services control using SIP | |
US20020141381A1 (en) | Session initiation protocol based advanced intelligent network/intelligent network messaging | |
CN101416468A (zh) | 通信系统中由网络发起的ims注册 | |
WO2003058919A1 (en) | Apparatus and method for optimizing message sizes of textual protocols used in multimedia communications | |
WO2006016957A2 (en) | Method and apparatus for interleaving text and media in a real-time transport session | |
CN108881149B (zh) | 一种可视电话设备的接入方法和系统 | |
WO2007068209A1 (fr) | Procede, systeme et dispositif d'envoi de messages instantanes ims | |
CN105429958A (zh) | 一种基于Android开发的企业应用平台系统 | |
WO2019218474A1 (zh) | 一种视频通话服务的响应方法及系统 | |
CN1984132B (zh) | 一种对会话能力信息进行处理的方法和终端 | |
CN103618747B (zh) | 一种实现sip信息服务的方法及系统 | |
CN111614927A (zh) | 视频会话建立法、装置、电子设备及存储介质 | |
CN113301025B (zh) | 一种ims音视频转码及传输控制系统及实现方法 | |
US8331382B2 (en) | Media conversion device for interconnecting communication terminal devices with media converted and a method therefor | |
CN103684970A (zh) | 媒体数据流的传输方法和瘦终端 | |
WO2007093116A1 (fr) | Procédé et système de fourniture de service de simulation et entité adaptative de signalisation d'accès | |
US7408926B1 (en) | Method and apparatus for accessing voice over internet protocol connection | |
EP2747399A1 (en) | Process for delivering redundant, duplicate interaction recordings | |
CN101378535B (zh) | 一种传输媒体流控制消息的方法、系统及装置 | |
CN100401730C (zh) | 使用媒体网关控制协议实现用户自定义录音的方法 | |
CN110166832A (zh) | 一种基于媒体数据的通信方法和视联网系统 | |
CN114679433B (zh) | 视频访问会话管理系统、方法、计算机设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20110525 |