public void SomeTerminalEndCall(object sender, EndCallTerminalEventArgs eventargs) { if (sender is TerminalUnit) { if ((sender as TerminalUnit).LinkOnATSPort.PortStatus == PortStatusEnum.BUSY) { (sender as TerminalUnit).LinkOnATSPort.BillingRecord.EndCall = eventargs.EndCallTime; Billing.Add((sender as TerminalUnit).LinkOnATSPort.BillingRecord); (sender as TerminalUnit).LinkOnATSPort.BillingRecord.Terminal.LinkOnATSPort.PortStatus = PortStatusEnum.ON; (sender as TerminalUnit).LinkOnATSPort.BillingRecord.toTerminal.LinkOnATSPort.PortStatus = PortStatusEnum.ON; eventargs.ResultOperationMessage = "Звонок окончен!"; } else { eventargs.ResultOperationMessage = "Терминал не звонит!"; } } }
public void EndCall(out string result, DateTime end_call_time) { if ((LinkOnATSPort != null) && (OnEndCall != null)) { if (LinkOnATSPort.PortStatus == PortStatusEnum.BUSY) { EndCallTerminalEventArgs eventargs = new EndCallTerminalEventArgs(end_call_time); OnEndCall(this, eventargs); result = eventargs.ResultOperationMessage; } else { result = "Абонент не разговаривает - некого отключать!"; } } else { result = "Терминал не зарегистрирован!"; } }