示例#1
0
        /// <summary>
        /// 实时视频请求成功事件处理
        /// </summary>
        /// <param name="res"></param>
        private void messageCore_SipInviteVideoOK(SIPResponse res)
        {
            if (_realReqSession == null)
            {
                return;
            }
            //同一会话消息
            if (_realReqSession.Header.CallId == res.Header.CallId)
            {
                RealVideoRes realRes = RealVideoRes.Instance.Read(res.Body);
                GetRemoteRtcp(realRes.Socket);

                SIPRequest ackReq = AckRequest(res);
                _m_sipTransport.SendRequest(_remoteEndPoint, ackReq);
            }
        }
示例#2
0
        /// <summary>
        /// sip响应消息指令
        /// </summary>
        /// <param name="response">sip响应</param>
        private VariableType ResMessageOK(string body)
        {
            DeviceItemsRes devItemRes = DeviceItemsRes.Instance.Read(body);
            DeviceRes      devRes     = DeviceRes.Instance.Read(body);
            RealVideoRes   realRes    = RealVideoRes.Instance.Read(body);

            VariableType variable = VariableType.Unknown;

            if (devItemRes != null && devItemRes.Query != null)         //设备目录查询响应
            {
                variable = devItemRes.Query.Variable;
            }
            else if (devRes != null && devRes.Query != null)        //设备信息查询响应
            {
                variable = devRes.Query.Variable;
            }
            else if (realRes != null && realRes.Variable != VariableType.Unknown)       //实时视频请求响应
            {
                variable = realRes.Variable;
            }
            return(variable);
        }