private static void SendInitialData() { try { LogService.Logger.Debug("Start sending init data."); System.Threading.Thread.Sleep(10000); SerialComm.SwitchComm.SendSimpleMessage(eControl.UpdateStatus); SerialComm.SwitchComm.SendDateTime(DateTime.Now); System.Threading.Thread.Sleep(800); if (GlobalSetting.Instance.AlarmOnSwitch) { SerialComm.SendDayTypes(); System.Threading.Thread.Sleep(800); SerialComm.SendAlarms(); } if (GlobalSetting.Instance.UseSwitchPortForLP) { SerialComm.SendAllResultBySwitchComm(); } LogService.Logger.Debug("Finish sending init data."); } catch (Exception ex) { LogService.Logger.Error("Send init data error", ex); } }
void INovaAlertService.UpdateTask(int unitId, Task task, long?duration, eTaskType taskType) { var unit = _resources.UnitPhones.FirstOrDefault(u => u.Id == unitId); if (unit != null) { unit.Task.TaskObj = task; NovaAlertCommon.UpdateTask(unit.UnitPhone, duration, taskType); // Cap nhat bang den if (GlobalSetting.Instance.UseSwitchPortForLP) { SerialComm.SendAllResultBySwitchComm(unit.UnitPhone.PhoneNumberId); } else { SerialComm.LPComm.SendAllResults(unit.UnitPhone.PhoneNumberId); } foreach (var c in _resources.GetActiveClients()) { try { c.Callback.OnTaskChanged(new TaskChangedEventArgs(unitId, task)); } catch (CommunicationObjectAbortedException ex) { } catch (Exception ex) { } } } }
void INovaAlertConfigService.SetAlarmConfig(bool alarmOnSwitch) { var settings = GlobalSetting.Instance; settings.AlarmOnSwitch = alarmOnSwitch; settings.Save(); SerialComm.SwitchComm.SendAlarmConfig(settings.AlarmOnSwitch); if (alarmOnSwitch) { SerialComm.SendAlarms(); SerialComm.SendDayTypes(); } }
protected override void ProcessPresentationEvent(PresentationEventArgs e) { var msg = e.Data as MessageBase; switch (msg.Control) { case eControl.LineStatus: OnLineStatusChanged(msg as LineStatusMessageBase); break; case eControl.AllStatus: OnUpdateAllStatus(msg as AllStatusMessage); break; case eControl.DialCompleted: OnDialCompleted(msg as SimpleMessage); break; // Led Panel case eControl.LP_ACK: break; case eControl.LP_NAK: break; case eControl.LP_Update: var ack = new SimpleMessage(eControl.LP_ACK) { TypeDest = eDevice.LedPanel, Address = msg.Address }; this.Presentation.SendData(ack); System.Threading.Thread.Sleep(50); SerialComm.SendResults(this.Presentation, msg.Address, eTaskType.CTT); break; } this.LastReceived = DateTime.Now; }
void INovaAlertConfigService.SaveAlarms(List <Alarm> list) { NovaAlertCommon.Instance.SaveAlarms(list); SerialComm.SendAlarms(list.Select(a => a.DayType).Distinct().ToList()); }
void INovaAlertConfigService.SaveDayTypes(List <DayTypeConfig> dts) { NovaAlertCommon.Instance.SaveDayTypes(dts); SerialComm.SendDayTypes(); }
public void SendResults(byte address) { SerialComm.SendResults(this.Presentation, address, eTaskType.CTT); }