public void ShowPictureInfo(CameraDevController cameraDev, CameraAlarmFollowUI SmallUI, List <CameraAlarmInfo> infoList)
    {
        if (!AlarmPictureWindow.activeSelf)
        {
            AlarmPictureWindow.SetActive(true);
        }
        if (MaxCameraAlarmList.Count != 0)
        {
            MaxCameraAlarmList.Clear();
        }
        CurrentPictureAlarmList = new List <CameraAlarmInfo>();
        CurrentPictureAlarmList.AddRange(infoList);
        CurrentDevID = cameraDev.Info.Id.ToString();
        MaxCameraAlarmList.AddRange(infoList);
        SmallCameraAlarmFollow = SmallUI;
        currentCameraDev       = cameraDev;
        PictureTog.isOn        = true;
        if (infoList.Count != 0)
        {
            Texture2D texture = new Texture2D(width, height);
            byte[]    Pic     = PictureData(infoList[infoList.Count - 1].pic_data);
            texture.LoadImage(Pic);
            Sprite sprite = Sprite.Create(texture, new Rect(0, 0, texture.width, texture.height), new Vector2(0.5f, 0.5f));
            Picture.sprite = sprite;
        }
        //if (!IsInvoking("RefreshCameraAlarmInfo"))
        //{
        //    InvokeRepeating("RefreshCameraAlarmInfo", 0, 2);

        //}
        RefreshCameraAlarmInfo();
    }
    /// <summary>
    /// 打开当前摄像头告警界面
    /// </summary>
    /// <param name="cameraDev"></param>
    public void ShowCurrentCameraDevAlarm(string DevID, CameraAlarmFollowUI SmallUI, CameraDevController cameraDev)
    {
        SmallCameraAlarmFollow = SmallUI;
        DelectChildItem();
        if (MaxCameraAlarmList.Count != 0)
        {
            MaxCameraAlarmList.Clear();
        }
        if (AlarmPushManage.Instance.NewestCameraAlarmPush != null)
        {
            MaxCameraAlarmList.AddRange(AlarmPushManage.Instance.NewestCameraAlarmPush);
        }
        currentCameraDev = cameraDev;
        AlarmTog.isOn    = true;
        CurrentDevID     = DevID;

        if (!AlarmWindow.activeSelf)
        {
            AlarmWindow.SetActive(true);
            AlarmScreen.SetActive(true);
        }
        if (!IsInvoking("RefreshCameraAlarmList"))
        {
            InvokeRepeating("RefreshCameraAlarmList", 0, ReshTime);
        }
    }
    void Start()
    {
        VideoTog.onValueChanged.AddListener(ShowVedioWindow);
        AlarmTog.onValueChanged.AddListener(ShowAlarmWindow);
        AddPageBut.onClick.AddListener(AddDepartmentPage);
        MinusPageBut.onClick.AddListener(MinusDepartmentPage);
        pegeNumText.onValueChanged.AddListener(InputCreamAlarmtPage);
        CloseBut.onClick.AddListener(() =>
        {
            CloseAllWindow();
        });
        MaxBut.onClick.AddListener(ShowSmallCameraAlarmFollowUI);
        SmallCameraAlarmFollow = new global::CameraAlarmFollowUI();
        CameraAlarmAlendarDay.onDayClick.AddListener(ScreenCameraAlarmTime);


        MaxCameraAlarmList = new List <CameraAlarmInfo>();
        PictureTog.onValueChanged.AddListener(ShowPictureWindow);
    }
 public void SetInfo(CameraAlarmFollowUI followUI, CameraDevController dev)
 {
     SmallCameraAlarmFollow = followUI;
     currentCameraDev       = dev;
 }
    /// <summary>
    /// 打开摄像头监控视频
    /// </summary>
    /// <param name="cameraDev"></param>
    public void ShowCameraVedio(CameraDevController cameraDev, CameraAlarmFollowUI SmallUI)
    {
        Log.Debug("ShowCameraVedio", string.Format("{0},{1}", cameraDev, SmallUI));
        if (VedioPrompt != null)
        {
            VedioPrompt.text = "视频连接中...";
        }
        SmallCameraAlarmFollow = SmallUI;
        currentCameraDev       = cameraDev;
        CurrentDevID           = currentCameraDev.Info.Id.ToString();
        if (MaxCameraAlarmList.Count != 0)
        {
            MaxCameraAlarmList.Clear();
        }
        if (AlarmPushManage.Instance.NewestCameraAlarmPush != null)
        {
            MaxCameraAlarmList.AddRange(AlarmPushManage.Instance.NewestCameraAlarmPush);
        }


        if (!VedioWindow.activeSelf)
        {
            VedioWindow.SetActive(true);
        }
        VideoTog.isOn = true;

        TitleText.text = cameraDev.Info.Name;
        if (CameraVideoManage.Instance)
        {
            Dev_CameraInfo camInfo = cameraDev.GetCameraInfo(cameraDev.Info);
            //   if (camInfo != null) CameraVideoManage.Instance.rtspVideo.ShowVideo(camInfo.RtspUrl, cameraDev.Info);
            if (IsPrompt)
            {
                if (string.IsNullOrEmpty(camInfo.RtspUrl))
                {
                    Debug.LogError("Error : RtspVideo.ShowVideo-> rtspURL is null!");
                    if (VedioPrompt)
                    {
                        VedioPrompt.text = "Rtsp地址未输入!";
                    }
                    UGUIMessageBox.Show("Rtsp地址未输入!");
                    if (SmallCameraAlarmFollow.VedioPrompt)
                    {
                        SmallCameraAlarmFollow.VedioPrompt.text = "Rtsp地址未输入!";
                    }

                    return;
                }

                if (!IsEffectiveURL(camInfo.RtspUrl))
                {
                    UGUIMessageBox.Show("Rtsp地址无效!");
                    VedioPrompt.text = "Rtsp地址无效!";

                    return;
                }
            }

            GameObject Obj = Instantiate(VedioPrefabs, PlayParent.transform) as GameObject;
            Obj.transform.SetAsFirstSibling();
            Obj.SetActive(true);
            VedioPrefabs.SetActive(false);
            player = Obj.GetComponent <UniversalMediaPlayer>();
            AddEncounteredEvent(player, () =>
            {
                ShowVideo(camInfo.RtspUrl, player);
            });
        }
    }
Exemplo n.º 6
0
    private void CameraAlarmHub_OnCameraAlarmsRecieved(List <CameraAlarmInfo> CameraInfo)
    {
        try
        {
            if (CameraInfo == null || CameraInfo.Count == 0)
            {
                return;
            }
            //string json = Newtonsoft.Json.JsonConvert.SerializeObject(obj);
            Log.Info("CameraAlarmHub_OnCameraAlarmsRecieved", "count:" + CameraInfo.Count);
            //Debug.LogError(json);
            IsBaoXin           = true;
            IsNewAlarm         = true;
            AllCameraAlarmPush = new List <CameraAlarmInfo>();

            if (NewestCameraAlarmPush == null)
            {
                NewestCameraAlarmPush = new List <CameraAlarmInfo>();
            }
            CameraAlarmPushList = new List <CameraAlarmInfo>();

            FullViewController mainPage = FullViewController.Instance;
            foreach (var cam in CameraInfo)
            {
                if (cam.status == 1)
                {
                    AllCameraAlarmPush.Add(cam);
                }
                else
                {
                    Log.Error("CameraAlarmHub_OnCameraAlarmsRecieved", "cam.status != 1 :" + cam.status);
                }
            }

            Log.Info("CameraAlarmHub_OnCameraAlarmsRecieved", "AllCameraAlarmPush:" + AllCameraAlarmPush.Count);
            if (mainPage && mainPage.IsFullView)
            {
                return;
            }
            if (ScreenFlashesRedAndAudio.Instance != null)
            {
                ScreenFlashesRedAndAudio.Instance.FlashesRedTweenerPlay();
            }
            foreach (var camAlarm in AllCameraAlarmPush)
            {
                NewestCameraAlarmPush.Add(camAlarm);
                AlarmPushInfo AlarmInformation = new AlarmPushInfo();
                AlarmInformation.SetAlarmInfo(camAlarm);
                CameraAlarmInfo CurrentCameraAlarm  = new CameraAlarmInfo();
                AlarmPushInfo   CompleteCameraAlarm = new AlarmPushInfo();
                AlarmPushInfo   nullData            = CompleteAlarmPushInfoList.Find(i => i.CameraAlarmInfor != null);
                if (nullData != null)
                {
                    if (camAlarm.AlarmType == 2)
                    {
                        CompleteCameraAlarm = CompleteAlarmPushInfoList.Find(i => i.CameraAlarmInfor != null && i.CameraAlarmInfor.cid == camAlarm.cid && i.CameraAlarmInfor.FlameData != null);
                    }
                    else if (camAlarm.AlarmType == 1)
                    {
                        CompleteCameraAlarm = CompleteAlarmPushInfoList.Find(i => i.CameraAlarmInfor != null && i.CameraAlarmInfor.cid == camAlarm.cid && i.CameraAlarmInfor.HeadData != null);
                    }
                    else if (camAlarm.AlarmType == 3)
                    {
                        CompleteCameraAlarm = CompleteAlarmPushInfoList.Find(i => i.CameraAlarmInfor != null && i.CameraAlarmInfor.cid == camAlarm.cid && i.CameraAlarmInfor.SmogData != null);
                    }
                    if (CompleteCameraAlarm == null)
                    {
                        CurrentAlarmPushInfoList.Add(AlarmInformation);
                        CameraAlarmPushList.AddRange(AllCameraAlarmPush);
                    }
                }
                else
                {
                    CurrentAlarmPushInfoList.Add(AlarmInformation);
                    CameraAlarmPushList.AddRange(AllCameraAlarmPush);
                }
                CameraAlarmFollowUI.RefreshAll();
            }
        }
        catch (Exception ex)
        {
            Log.Error("CameraAlarmHub_OnCameraAlarmsRecieved", "Exception :" + ex);
        }
    }