diff --git a/dvmconsole/Controls/ChannelBox.xaml.cs b/dvmconsole/Controls/ChannelBox.xaml.cs index 5022560..56bffc7 100644 --- a/dvmconsole/Controls/ChannelBox.xaml.cs +++ b/dvmconsole/Controls/ChannelBox.xaml.cs @@ -47,7 +47,6 @@ namespace dvmconsole.Controls private bool pttState; private bool pageState; private bool holdState; - private bool emergency; private string lastSrcId = "0"; private double volume = 1.0; private bool isSelected; @@ -231,26 +230,6 @@ namespace dvmconsole.Controls set => pttToggleMode = value; } - /// - /// Flag indicating the emergency state of this channel. - /// - public bool Emergency - { - get => emergency; - set - { - emergency = value; - - Dispatcher.Invoke(() => - { - if (value) - flashingBackgroundManager.Start(); - else - flashingBackgroundManager.Stop(); - }); - } - } - /// /// /// diff --git a/dvmconsole/MainWindow.P25.cs b/dvmconsole/MainWindow.P25.cs index baa01db..6b0b05e 100644 --- a/dvmconsole/MainWindow.P25.cs +++ b/dvmconsole/MainWindow.P25.cs @@ -308,9 +308,8 @@ namespace dvmconsole /// /// /// - /// /// - private void P25DecodeAudioFrame(byte[] ldu, P25DataReceivedEvent e, PeerSystem system, ChannelBox channel, bool emergency = false, P25DUID duid = P25DUID.LDU1) + private void P25DecodeAudioFrame(byte[] ldu, P25DataReceivedEvent e, PeerSystem system, ChannelBox channel, P25DUID duid = P25DUID.LDU1) { try { @@ -366,14 +365,6 @@ namespace dvmconsole else channel.p25Errs = channel.Decoder.decode(imbe, samples); - if (emergency && !channel.Emergency) - { - Task.Run(() => - { - HandleEmergency(e.DstId.ToString(), e.SrcId.ToString()); - }); - } - if (samples != null) { Log.WriteLine($"P25D: Traffic *VOICE FRAME * PEER {e.PeerId} SRC_ID {e.SrcId} TGID {e.DstId} VC{n} [STREAM ID {e.StreamId}]"); @@ -447,7 +438,6 @@ namespace dvmconsole if (cpgChannel.GetChannelMode() != Codeplug.ChannelMode.P25) continue; - bool isEmergency = false; bool encrypted = false; PeerSystem handler = fneSystemManager.GetFneSystem(system.Name); @@ -561,7 +551,6 @@ namespace dvmconsole // The '64' record - IMBE Voice 3 + Link Control Buffer.BlockCopy(data, count, channel.netLDU1, 50, 17); byte serviceOptions = data[count + 3]; - isEmergency = (serviceOptions & 0x80) == 0x80; count += 17; // The '65' record - IMBE Voice 4 + Link Control @@ -589,7 +578,7 @@ namespace dvmconsole count += 16; // decode 9 IMBE codewords into PCM samples - P25DecodeAudioFrame(channel.netLDU1, e, handler, channel, isEmergency); + P25DecodeAudioFrame(channel.netLDU1, e, handler, channel); } } break; @@ -655,7 +644,7 @@ namespace dvmconsole Array.Copy(newMI, channel.mi, P25Defines.P25_MI_LENGTH); // decode 9 IMBE codewords into PCM samples - P25DecodeAudioFrame(channel.netLDU2, e, handler, channel, isEmergency, P25DUID.LDU2); + P25DecodeAudioFrame(channel.netLDU2, e, handler, channel, P25DUID.LDU2); } } break; diff --git a/dvmconsole/MainWindow.xaml.cs b/dvmconsole/MainWindow.xaml.cs index dab1a22..83da291 100644 --- a/dvmconsole/MainWindow.xaml.cs +++ b/dvmconsole/MainWindow.xaml.cs @@ -102,7 +102,6 @@ namespace dvmconsole private SettingsManager settingsManager = new SettingsManager(); private SelectedChannelsManager selectedChannelsManager; private FlashingBackgroundManager flashingManager; - private WaveFilePlaybackManager emergencyAlertPlayback; private Brush btnGlobalPttDefaultBg; @@ -154,7 +153,6 @@ namespace dvmconsole selectedChannelsManager = new SelectedChannelsManager(); flashingManager = new FlashingBackgroundManager(null, channelsCanvas, null, this); - emergencyAlertPlayback = new WaveFilePlaybackManager(System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Audio/emergency.wav")); channelHoldTimer = new System.Timers.Timer(10000); channelHoldTimer.Elapsed += OnHoldTimerElapsed; @@ -825,38 +823,6 @@ namespace dvmconsole MessageBox.Show("Alert file not set or file not found.", "Alert", MessageBoxButton.OK, MessageBoxImage.Warning); } - /// - /// - /// - /// - /// - private void HandleEmergency(string dstId, string srcId) - { - bool forUs = false; - - foreach (ChannelBox channel in selectedChannelsManager.GetSelectedChannels()) - { - Codeplug.System system = Codeplug.GetSystemForChannel(channel.ChannelName); - Codeplug.Channel cpgChannel = Codeplug.GetChannelByName(channel.ChannelName); - - if (dstId == cpgChannel.Tgid) - { - forUs = true; - channel.Emergency = true; - channel.LastSrcId = srcId; - } - } - - if (forUs) - { - Dispatcher.Invoke(() => - { - flashingManager.Start(); - emergencyAlertPlayback.Start(); - }); - } - } - /// /// /// @@ -2029,20 +1995,6 @@ namespace dvmconsole /** WPF Ribbon Controls */ - /// - /// - /// - /// - /// - private void ClearEmergency_Click(object sender, RoutedEventArgs e) - { - emergencyAlertPlayback.Stop(); - flashingManager.Stop(); - - foreach (ChannelBox channel in selectedChannelsManager.GetSelectedChannels()) - channel.Emergency = false; - } - /// /// ///