void issue_issueEscalationEvent(object sender, issueEscalateEventArgs e) { Issue issue = (Issue)sender; List <Shift> sl = shifts.getShifts(DateTime.Now.TimeOfDay); List <int> slID = new List <int>(); foreach (Shift s in sl) { slID.Add(s.ID); } List <Contact> receivers = contacts.getContactList(issue.Line, slID, issue.Department, e.escalationLevel); foreach (Contact c in receivers) { dataAccess.insertSmsTrigger(c.Number, issue.Message + "-- Escalation Level" + e.escalationLevel.ToString(), 1, DateTime.Now.ToString("MM-dd-yyyy HH:mm:ss")); } if (e.escalationLevel > 0) { tbMsg.Dispatcher.BeginInvoke(DispatcherPriority.Background, new Action(() => { tbMsg.Text += issue.Message + "-- Escalation Level" + e.escalationLevel.ToString() + Environment.NewLine; })); } }
void timer_Elapsed(object sender, ElapsedEventArgs e) { timer.Stop(); State = ISSUE_STATE.CRITICAL; this.criticalLevel++; if (issueEscalationEvent != null) { issueEscalateEventArgs args = new issueEscalateEventArgs(this.criticalLevel); issueEscalationEvent(this, args); } if (this.criticalLevel < 4) { timer.Interval = timeout[criticalLevel] * 60 * 1000;; timer.Start(); } }