private void updateSwitchState(SwitchStateMessage message) { Application.Current.Dispatcher.Invoke(new Action(() => { Devices.Clear(); var devices = message.Devices.Where(d => d.Agent != null && !d.Agent.IsSystemProcess); foreach (var device in devices) { Devices.Add(device); } })); }
public void HandleMessage(CtiServiceSwitch @switch, Message message) { var switchMessage = message as SwitchMessage; if (switchMessage != null) { var device = @switch.Devices.FirstOrDefault(d => d.Id == switchMessage.DeviceId); var response = new SwitchStateMessage { Devices = new List <Device>(@switch.Devices) }; @switch.SendMessage(device, response); } }