private object ModeChangedHandler(VideoOS.Platform.Messaging.Message message, FQID destination, FQID source) { Paused = false; switch (EnvironmentManager.Instance.Mode) { case Mode.ClientLive: ImageViewerInit(); StartLive(); InLive = true; StartTimer(); break; case Mode.ClientPlayback: StopTimer(); ShowNoCarruoselCamera(); StartBrowse(); InLive = false; break; case Mode.ClientSetup: StopTimer(); ShowNoCarruoselCamera(); StartSetup(); InLive = false; break; } return(null); }
private object VideoWallMessageCommunicationHandler(VideoOS.Platform.Messaging.Message message, FQID destination, FQID sender) { var data = message.Data as VideoWallIndicationData; var action = data.ActionId; var itemFQID = data.FQID; string itemKind = null; if (itemFQID.Kind == Kind.VideoWall) { itemKind = "Smart wall"; } else if (itemFQID.Kind == Kind.VideoWallMonitor) { itemKind = "Smart wall monitor"; } else if (itemFQID.Kind == Kind.View) { itemKind = "View"; } if (string.Equals(action, "DELETED") || itemFQID.Kind == Kind.View) { ShowMessage(string.Format(@"{0} Message: {1} of GUID: {2} is {3}", DateTime.Now, itemKind, itemFQID.ObjectId.ToString(), action), data); } else { ShowMessage(string.Format(@"{0} Message: {1} {2} is {3}", DateTime.Now, itemKind, Configuration.Instance.GetItem(itemFQID).Name, action), data); } return(null); }
private void UpdateCameras() { try { List <Item> cameraItems = new List <Item>(); FindAllCameras(Configuration.Instance.GetItemsByKind(Kind.Camera), cameraItems); cameraItems = ShuffleList(cameraItems); for (int i = 0; i < MAX_MAX_CAMERA_COUNT; i++) { Message setCameraMessage; if (i < SCWorkSpaceDefinition.MaxCameras && i < cameraItems.Count) { setCameraMessage = new Message(MessageId.SmartClient.SetCameraInViewCommand, new SetCameraInViewCommandData() { Index = i, CameraFQID = cameraItems[i].FQID }); } else { setCameraMessage = new Message(MessageId.SmartClient.SetCameraInViewCommand, new SetCameraInViewCommandData() { Index = i, CameraFQID = null }); } EnvironmentManager.Instance.SendMessage(setCameraMessage); } } catch (Exception ex) { EnvironmentManager.Instance.ExceptionDialog("SCWorkSpace:UpdateCameras", ex); } }
/// <summary> /// This method keeps an eye with what view layout the user is selecting, /// stores it under _currentView, and show the name in the read-only textBoxLayoutName textbox. /// </summary> /// <param name="message"></param> /// <param name="s"></param> /// <param name="r"></param> /// <returns></returns> private object ViewChangedHandler(Message message, FQID s, FQID r) { _currentView = message.Data as ViewAndLayoutItem; UpdateIndexes(); return(null); }
/// <summary> /// A new state message has been send by the EventServer - check for any new valued state changes /// </summary> /// <param name="message"></param> /// <param name="dest"></param> /// <param name="source"></param> /// <returns></returns> private object MessageHandler(VideoOS.Platform.Messaging.Message message, FQID dest, FQID source) { if (message.MessageId == VideoOS.Platform.Messaging.MessageId.Server.NewEventIndication) { EventData eventData = message.Data as EventData; string server = message.ExternalMessageSourceEndPoint.ServerId.ServerHostname; if (eventData != null) { BeginInvoke(new MethodInvoker(delegate() { UpdateState(eventData.EventHeader.Source.FQID, eventData.EventHeader.Message, server); })); } else { BaseEvent baseEvent = message.Data as BaseEvent; if (baseEvent != null) { BeginInvoke(new MethodInvoker(delegate() { UpdateState(baseEvent.EventHeader.Source.FQID, baseEvent.EventHeader.Message, server); })); } } } return(null); }
private object PlaybackTimeChangedHandler(Message message, FQID dest, FQID sender) { var time = (DateTime)message.Data; _nextToFetchTime = time; return(null); }
private object IPAddressResponseHandler(VideoOS.Platform.Messaging.Message message, FQID destination, FQID sender) { string ip = (string)message.Data; System.Windows.MessageBox.Show(ip, _selectItem.Name); return(null); }
private object MapResponseHandler(VideoOS.Platform.Messaging.Message message, FQID to, FQID from) { if (InvokeRequired) { BeginInvoke(new MessageReceiver(MapResponseHandler), new object[] { message, to, from }); return(null); } else { MapResponseData data = message.Data as MapResponseData; if (data != null && _selectedNode != null) { _selectedNode.Nodes.Clear(); if (String.IsNullOrEmpty(data.ErrorText)) { foreach (var entry in data.MapCollection) { if (!entry.RecursiveMap) { TreeNode node = _selectedNode.Nodes.Add(entry.Id, entry.DisplayName); node.Nodes.Add("Empty"); } } treeView1.Invalidate(); } else { _selectedNode.Nodes.Add(data.ErrorText); } } return(null); } }
/// <summary> /// A new state message has been send by the EventServer - check for any new valued state changes /// </summary> /// <param name="message"></param> /// <param name="dest"></param> /// <param name="source"></param> /// <returns></returns> private object MessageHandler(VideoOS.Platform.Messaging.Message message, FQID dest, FQID source) { if (message.MessageId == VideoOS.Platform.Messaging.MessageId.Server.NewEventIndication) { EventData eventData = message.Data as EventData; if (eventData != null) { BeginInvoke(new MethodInvoker(delegate() { UpdateState(eventData.EventHeader.Source.FQID, eventData.EventHeader.Message); })); } else { BaseEvent baseEvent = message.Data as BaseEvent; if (baseEvent != null) { BeginInvoke(new MethodInvoker(delegate() { UpdateState(baseEvent.EventHeader.Source.FQID, baseEvent.EventHeader.Message); })); } } } if (message.MessageId == VideoOS.Platform.Messaging.MessageId.System.SystemConfigurationChangedIndication) { BeginInvoke(new MethodInvoker(delegate() { listBoxChanges.Items.Insert(0, DateTime.Now.ToLongTimeString() + ": " + message.MessageId); })); } return(null); }
private object NewAlarmMessageHandler(VideoOS.Platform.Messaging.Message message, FQID dest, FQID source) { if (_viewMode != ViewMode.Alarm) { return(null); } if (InvokeRequired) { Invoke(new MessageReceiver(NewAlarmMessageHandler), message, dest, source); } else { Alarm alarm = message.Data as Alarm; if (alarm != null) { DataGridViewRow row = new DataGridViewRow(); row.Tag = alarm; string alarmDef = alarm.RuleList != null && alarm.RuleList.Count > 0 ? alarm.RuleList[0].Name : ""; row.CreateCells(dataGridViewAlarm, alarm.EventHeader.Source.Name, alarm.EventHeader.Timestamp.ToLocalTime(), alarm.EventHeader.Message, alarm.EventHeader.Priority, alarm.State, alarmDef); dataGridViewAlarm.Rows.Insert(0, row); } } return(null); }
private void Move(MoveCommand c) { if (Camera != null) { VideoOS.Platform.Messaging.Message msg = null; switch (c) { case MoveCommand.Home: msg = new VideoOS.Platform.Messaging.Message(MessageId.Control.PTZMoveCommand, VideoOS.Platform.Messaging.PTZMoveCommandData.Home); break; case MoveCommand.Down: msg = new VideoOS.Platform.Messaging.Message(MessageId.Control.PTZMoveCommand, VideoOS.Platform.Messaging.PTZMoveCommandData.Down); break; case MoveCommand.DownLeft: msg = new VideoOS.Platform.Messaging.Message(MessageId.Control.PTZMoveCommand, VideoOS.Platform.Messaging.PTZMoveCommandData.DownLeft); break; case MoveCommand.DownRight: msg = new VideoOS.Platform.Messaging.Message(MessageId.Control.PTZMoveCommand, VideoOS.Platform.Messaging.PTZMoveCommandData.DownRight); break; case MoveCommand.Up: msg = new VideoOS.Platform.Messaging.Message(MessageId.Control.PTZMoveCommand, VideoOS.Platform.Messaging.PTZMoveCommandData.Up); break; case MoveCommand.UpLeft: msg = new VideoOS.Platform.Messaging.Message(MessageId.Control.PTZMoveCommand, VideoOS.Platform.Messaging.PTZMoveCommandData.UpLeft); break; case MoveCommand.UpRight: msg = new VideoOS.Platform.Messaging.Message(MessageId.Control.PTZMoveCommand, VideoOS.Platform.Messaging.PTZMoveCommandData.UpRight); break; case MoveCommand.Left: msg = new VideoOS.Platform.Messaging.Message(MessageId.Control.PTZMoveCommand, VideoOS.Platform.Messaging.PTZMoveCommandData.Left); break; case MoveCommand.Right: msg = new VideoOS.Platform.Messaging.Message(MessageId.Control.PTZMoveCommand, VideoOS.Platform.Messaging.PTZMoveCommandData.Right); break; case MoveCommand.ZoomIn: msg = new VideoOS.Platform.Messaging.Message(MessageId.Control.PTZMoveCommand, VideoOS.Platform.Messaging.PTZMoveCommandData.ZoomIn); break; case MoveCommand.ZoomOut: msg = new VideoOS.Platform.Messaging.Message(MessageId.Control.PTZMoveCommand, VideoOS.Platform.Messaging.PTZMoveCommandData.ZoomOut); break; default: msg = new VideoOS.Platform.Messaging.Message(MessageId.Control.PTZMoveCommand, VideoOS.Platform.Messaging.PTZMoveCommandData.Home); break; } EnvironmentManager.Instance.PostMessage(msg, Camera.Id); } }
private object PlaybackTimeChangedHandler(VideoOS.Platform.Messaging.Message message, FQID dest, FQID sender) { DateTime time = (DateTime)message.Data; TimeChangedHandler(time); return(null); }
private object MaxCamerasChangedReceiver(Message message, FQID sender, FQID related) { if (_workSpaceViewSelected) { UpdateCameras(); } return(null); }
private object WorkSpaceStateChangedReceiver(Message message, FQID sender, FQID related) { if (_workSpaceSelected && ((WorkSpaceState)message.Data) == WorkSpaceState.Normal) { UpdateCameras(); } return(null); }
private object RecorderErrorHandler(VideoOS.Platform.Messaging.Message message, FQID receiver, FQID sender) { RecorderErrorIndicationData data = message.Data as RecorderErrorIndicationData; toolStripStatusLabel1.Text = "Recorder error: (" + data.Command + ") " + data.ErrorText + ", " + data.RecorderWebInterfaceErrorCode + " - " + data.PtzErrorDetail; return(null); }
public override void Activate() { VideoOS.Platform.Messaging.Message message = new VideoOS.Platform.Messaging.Message(SCToolbarPluginDefinition.SetViewItemBackgroundColor); message.Data = new SCToolbarPluginDefinition.ColorMessageData() { Color = _color, ViewItemInstanceFQID = _viewItemInstance.FQID, WindowFQID = _window.FQID }; EnvironmentManager.Instance.SendMessage(message); }
private object PlaybackTimeHandler(VideoOS.Platform.Messaging.Message message, FQID dest, FQID source) { DateTime dt = (DateTime)message.Data; // Convert to user selected time! DateTime convertedTime = TimeZoneInfo.ConvertTime(dt, ClientControl.Instance.SelectedTimeZoneInfo); textBoxTime.Text = convertedTime.ToLongTimeString(); return(null); }
private object NewEventIndicationMessageHandler(VideoOS.Platform.Messaging.Message message, FQID dest, FQID source) { bool refreshNeeded = false; try { AnalyticsEvent evAnalyt = message.Data as AnalyticsEvent; if (evAnalyt != null) { refreshNeeded = true; for (int i = 2; i > 0; i--) { _AnalyticsEventObjectString[i] = _AnalyticsEventObjectString[i - 1]; _AnalyticsEventCameraFQID[i] = _AnalyticsEventCameraFQID[i - 1]; } _AnalyticsEventCameraFQID[0] = evAnalyt.EventHeader.Source.FQID; _AnalyticsEventObjectString[0] = evAnalyt.EventHeader.Message + " " + evAnalyt.EventHeader.CustomTag; if (evAnalyt.ObjectList != null) { foreach (AnalyticsObject analytObj in evAnalyt.ObjectList) { if (analytObj != null) { _AnalyticsEventObjectString[0] += " " + analytObj.Value; } } } } else { BaseEvent evData = message.Data as BaseEvent; if (evData != null) { refreshNeeded = true; for (int i = 2; i > 0; i--) { _EventName[i] = _EventName[i - 1]; _EventCameraFQID[i] = _EventCameraFQID[i - 1]; } _EventCameraFQID[0] = evData.EventHeader.Source.FQID; _EventName[0] = evData.EventHeader.Name + " " + evData.EventHeader.Source.Name; } } } catch (Exception ex) { EnvironmentManager.Instance.ExceptionDialog("MessageHandler", ex); } if (refreshNeeded) { RefreshOverlay(); } return(null); }
private object SelectedCameraChangedHandler(VideoOS.Platform.Messaging.Message message, FQID destination, FQID source) { _selectedItem = Configuration.Instance.GetItem(message.RelatedFQID); if (_selectedItem != null) { label1.Text = "Camera: " + _selectedItem.Name; _previousSelectedName = _selectedItem.Name; } _stop = true; return(null); }
private object PlaybackTimeChangedHandler(VideoOS.Platform.Messaging.Message message, FQID dest, FQID sender) { DateTime time = ((DateTime)message.Data).ToLocalTime(); textBoxTime.Text = time.ToShortDateString() + " " + time.ToLongTimeString(); if (_imageViewerControl1 != null) { _imageViewerControl1.Invalidate(); } return(null); }
private object PlaybackTimeChangedHandler(VideoOS.Platform.Messaging.Message message, FQID dest, FQID sender) { DateTime time = (DateTime)message.Data; // The built-in PlaybackController has FQID==null if (sender == null) { textBoxTime.Text = time.ToShortDateString() + " " + time.ToLongTimeString(); } return(null); }
private object SystemConfigurationChangedIndicationHandler(VideoOS.Platform.Messaging.Message message, FQID dest, FQID sender) { List <FQID> fqidList = message.Data as List <FQID>; if (fqidList != null) { lock (_userContexts) { foreach (FQID fqid in fqidList) { if (fqid.ServerId.ServerType != "XP") // Ignore unknown servers (e.g. Registered Services) { foreach (UserContext userContext in _userContexts) { Item item = userContext.Configuration.GetItem(fqid.ObjectId, fqid.Kind); if (item == null && fqid.Kind == Kind.Server) { // Could be XPE, then use ParentId (EventServer FQID has XPE-server id in this field) item = userContext.Configuration.GetItem(fqid.ParentId, fqid.Kind); } FQID serverFQID = null; if (fqid.Kind == Kind.Server) { serverFQID = fqid; } else { Item recorderItem = Configuration.Instance.GetItem(fqid.ServerId.Id, Kind.Server); if (recorderItem != null) { serverFQID = recorderItem.FQID; } } if (serverFQID != null) { if (!_recordersToReload.ContainsKey(userContext)) { _recordersToReload.Add(userContext, new HashSet <FQID>()); } _recordersToReload[userContext].Add(serverFQID); } } } } // Set timer to reload in 15 seconds (unless more changes happens, then just extent wait time) _reloadTimer.Change(0, 15000); } ShowMessage("--- Event received to load new configuration"); } return(null); }
private object LocalConfigurationHandler(VideoOS.Platform.Messaging.Message message, FQID f1, FQID f2) { Item siteItem = EnvironmentManager.Instance.GetSiteItem(message.RelatedFQID); if (siteItem != null) { if (_serverNodes.ContainsKey(siteItem.FQID.ServerId.Id)) { RedrawTreeChildren(siteItem, _serverNodes[siteItem.FQID.ServerId.Id]); } } return(null); }
private object SelectedViewChangedReceiver(Message message, FQID sender, FQID related) { if (message.Data is Item && ((Item)message.Data).FQID.ObjectId == ViewAndLayoutItem.FQID.ObjectId) { _workSpaceViewSelected = true; UpdateCameras(); } else { _workSpaceViewSelected = false; } return(null); }
private object PlaybackTimeChangedHandler(VideoOS.Platform.Messaging.Message message, FQID dest, FQID sender) { // Only pick up messages coming from my own PlaybackController (sender is null for the common PlaybackController) if (_playbackFQID.EqualGuids(sender)) { DateTime time = (DateTime)message.Data; //Debug.WriteLine("PlaybackTimeChangedHandler: " + time.ToLongTimeString()); TimeChangedHandler(time); timeLineUserControl1.SetShowTime(time); } return(null); }
private object PlaybackTimeChangedHandler(VideoOS.Platform.Messaging.Message message, FQID dest, FQID sender) { DateTime time = ((DateTime)message.Data).ToLocalTime(); if (InvokeRequired) { BeginInvoke(new Action(() => HandleTimeChanged(time))); } else { HandleTimeChanged(time); } return(null); }
private object ThemeChangedIndicationHandler(VideoOS.Platform.Messaging.Message message, FQID destination, FQID source) { Selected = _selected; lsvBookmarks.BackColor = ClientControl.Instance.Theme.BackgroundColor; lsvBookmarks.ForeColor = ClientControl.Instance.Theme.TextColor; picOpenALPR.Image = ClientControl.Instance.Theme.ThemeType == ThemeType.Dark ? Resources.logo_white_512x93 : Resources.logo_bluegray; picOpenALPR.Refresh(); return(null); }
/// <summary> /// Handling of alarms is not implemeted, only subscribing to events, the alarms where properly created based on an event /// and is therefor already displayed. /// </summary> /// <param name="message"></param> /// <param name="dest"></param> /// <param name="source"></param> /// <returns></returns> private object NewAlarmMessageHandler(VideoOS.Platform.Messaging.Message message, FQID dest, FQID source) { try { Alarm al = message.Data as Alarm; if (al != null) { } } catch (Exception ex) { EnvironmentManager.Instance.ExceptionDialog("NewAlarmMessageHandler", ex); } return(null); }
private object ShownWorkSpaceChangedReceiver(Message message, FQID sender, FQID related) { if (message.Data is Item && ((Item)message.Data).FQID.ObjectId == Id) { _workSpaceSelected = true; Notification = null; _updateInformationTimer.Stop(); } else { _workSpaceSelected = false; _updateInformationTimer.Start(); } return(null); }
private object PlaybackIndicationHandler(VideoOS.Platform.Messaging.Message message, FQID dest, FQID sender) { if ((sender == null && _playbackControllerFQID == null) || _playbackControllerFQID.EqualGuids(sender)) // If message from right hand side control { if (message.Data is PlaybackCommandData) { PlaybackCommandData data = (PlaybackCommandData)message.Data; if (data.Command == PlaybackData.PlayStop) { _speed2 = 0; } } } return(null); }