예제 #1
0
 /// <summary>
 /// SDK事件回调
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="evType"></param>
 /// <param name="strTag"></param>
 public void SDKEventCallBackEvent(object sender, Enum_SDKEventType evType, string strTag)
 {
     if (bolDisplaySDKEvent)
     {
         if (!string.IsNullOrEmpty(strTag))
         {
             DisplayRecord(evType.ToString() + "[" + strTag + "]");
         }
         DisplayRecord(evType.ToString());
     }
 }
        /// <summary>
        /// 云视通_事件回调函数
        /// </summary>
        /// <param name="nLinkID"></param>
        /// <param name="etType"></param>
        /// <param name="pData1"></param>
        /// <param name="pData2"></param>
        /// <param name="pUserData"></param>
        private void CloundSee_JCEventCallback(int nLinkID, SDK_JCSDK.JCEventType etType, IntPtr pData1, IntPtr pData2, IntPtr pUserData)
        {
            string            strTag      = "";
            Enum_SDKEventType videoEvType = Enum_SDKEventType.Unrecognized;

            switch (etType)
            {
            case SDK_JCSDK.JCEventType.JCET_ConnectOK:      //连接成功
                videoEvType = Enum_SDKEventType.ConnectOK;
                CurrentVideoInfo.NetworkState = 1;          //置为在线
                //CloundSee_VideoLPRECTChanged();
                VideoPlay_VideoPreview(false);
                VideoPlayCallback(new VideoPlayCallbackValue {
                    evType = Enum_VideoPlayEventType.VideoPlay
                });
                VideoPlayState = Enum_VideoPlayState.InPlayState;
                break;

            case SDK_JCSDK.JCEventType.JCET_ConTimeout:     //连接超时
                videoEvType = Enum_SDKEventType.ConnectTimeOut;
                VideoPlayCallback(new VideoPlayCallbackValue {
                    evType = Enum_VideoPlayEventType.RequestVideoTimeout
                });
                break;

            case SDK_JCSDK.JCEventType.JCET_DisconOK:       //连接断开
                videoEvType = Enum_SDKEventType.DisconnectOK;
                break;

            case SDK_JCSDK.JCEventType.JCET_ConAbout:
                videoEvType = Enum_SDKEventType.ConnectAbnormally;
                break;

            case SDK_JCSDK.JCEventType.JCET_UserAccessError:
                videoEvType = Enum_SDKEventType.UserAccessError;
                VideoPlayCallback(new VideoPlayCallbackValue {
                    evType = Enum_VideoPlayEventType.UserAccessError
                });
                break;
            }
            if (videoEvType == Enum_SDKEventType.Unrecognized)
            {
                strTag = strTag = etType.ToString();
            }
            //SDKEventCallBack(videoEvType, strTag);
        }
예제 #3
0
        /// <summary>
        /// 消息事件回调
        /// </summary>
        /// <param name="intptrSessionId"></param>
        /// <param name="iMsgType"></param>
        /// <param name="iErrorCode"></param>
        /// <param name="pMessageInfo"></param>
        /// <param name="pUser"></param>
        public void Ezviz_MsgCallback(IntPtr intptrSessionId, SDK_EzvizSDK.EzvizMeesageType iMsgType, uint iErrorCode, string pMessageInfo, IntPtr pUser)
        {
            string Temp_strUserName = Marshal.PtrToStringAnsi(pUser);

            if (Temp_strUserName == strUser)
            {
                string            strTag      = "";
                Enum_SDKEventType videoEvType = Enum_SDKEventType.Unrecognized;
                switch (iMsgType)
                {
                case SDK_EzvizSDK.EzvizMeesageType.INS_PLAY_EXCEPTION:
                    switch (iErrorCode)
                    {
                    case 2012:
                        //密码错误 ,自己测试验证,非官方确认
                        VideoPlayCallback(new VideoPlayCallbackValue {
                            evType = Enum_VideoPlayEventType.UserAccessError
                        });
                        break;

                    case 2651:
                        VideoPlayCallback(new VideoPlayCallbackValue {
                            evType = Enum_VideoPlayEventType.DeviceStreamTypeException
                        });
                        break;

                    case 2604:
                        VideoPlayCallback(new VideoPlayCallbackValue {
                            evType = Enum_VideoPlayEventType.VideoDeviceNotOnline
                        });
                        break;

                    default:
                        VideoPlayCallback(new VideoPlayCallbackValue {
                            evType = (Enum_VideoPlayEventType)iErrorCode
                        });
                        break;
                    }
                    break;

                case SDK_EzvizSDK.EzvizMeesageType.INS_PLAY_RECONNECT:
                    VideoPlayState = Enum_VideoPlayState.Connecting;

                    break;

                case SDK_EzvizSDK.EzvizMeesageType.INS_PLAY_RECONNECT_EXCEPTION:
                    VideoPlayCallback(new VideoPlayCallbackValue {
                        evType = Enum_VideoPlayEventType.ConnFailed
                    });
                    break;

                case SDK_EzvizSDK.EzvizMeesageType.INS_PLAY_START:
                    CurrentVideoInfo.NetworkState = 1;              //置为在线
                    VideoPlayState = Enum_VideoPlayState.InPlayState;
                    VideoPlayCallback(new VideoPlayCallbackValue {
                        evType = Enum_VideoPlayEventType.VideoPlay
                    });
                    break;

                case SDK_EzvizSDK.EzvizMeesageType.INS_PLAY_STOP:

                    VideoPlayState = Enum_VideoPlayState.NotInPlayState;
                    VideoPlayCallback(new VideoPlayCallbackValue {
                        evType = Enum_VideoPlayEventType.VideoClose
                    });
                    break;

                case SDK_EzvizSDK.EzvizMeesageType.INS_PLAY_ARCHIVE_END:
                    //VideoPlayState = Enum_VideoPlayState.NotInPlayState;

                    break;

                case SDK_EzvizSDK.EzvizMeesageType.INS_VOICETALK_START:

                    break;

                case SDK_EzvizSDK.EzvizMeesageType.INS_VOICETALK_STOP:

                    break;

                case SDK_EzvizSDK.EzvizMeesageType.INS_VOICETALK_EXCEPTION:

                    break;

                case SDK_EzvizSDK.EzvizMeesageType.INS_PTZ_EXCEPTION:

                    break;

                case SDK_EzvizSDK.EzvizMeesageType.INS_RECORD_FILE:

                    break;

                case SDK_EzvizSDK.EzvizMeesageType.INS_RECORD_SEARCH_END:

                    break;

                case SDK_EzvizSDK.EzvizMeesageType.INS_RECORD_SEARCH_FAILED:

                    break;

                case SDK_EzvizSDK.EzvizMeesageType.INS_DEFENSE_SUCCESS:

                    break;

                case SDK_EzvizSDK.EzvizMeesageType.INS_DEFENSE_FAILED:

                    break;

                case SDK_EzvizSDK.EzvizMeesageType.INS_PLAY_ARCHIVE_EXCEPTION:

                    break;

                case SDK_EzvizSDK.EzvizMeesageType.INS_PTZCTRL_SUCCESS:

                    break;

                case SDK_EzvizSDK.EzvizMeesageType.INS_PTZCTRL_FAILED:

                    break;
                }
                if (videoEvType == Enum_SDKEventType.Unrecognized)
                {
                    strTag = strTag = iMsgType.ToString();
                }
                //SDKEventCallBack(videoEvType, strTag);
            }
        }