Пример #1
0
        public void OnSpeakerChanged(object sender, JacksStateMsg e)
        {
            bool altavozRd = e.LeftJack;
            bool altavozLc = e.RightJack;

            _RBAltavozLC.Enabled    = altavozLc;
            _RBAltavozRadio.Enabled = altavozRd;
        }
Пример #2
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="st"></param>
 private void OnJacksChanged(object sender, JacksStateMsg st)
 {
     try
     {
         bool jacks = st.LeftJack || st.RightJack;
         _Logger.Debug("LcManager OnJacksChanged {0} || {1} = {2}", st.LeftJack, st.RightJack, jacks);
         foreach (LcPosition lc in _LcPositions)
         {
             if (lc.TxState == LcTxState.Tx)
             {
                 lc.HangUpTx();
             }
         }
     }
     catch (Exception e)
     {
         _Logger.Debug("Excepcion. Mensaje: {0}", e.Message);
     }
 }
 public void OnSpeakerExtStateEngine(object sender, JacksStateMsg msg)
 {
     _Logger.Trace("Procesando {0}: left {1} right {2}", EventTopicNames.SpeakerExtStateEngine, msg.LeftJack, msg.RightJack);
     _StateManager.HfSpeaker.Presencia = msg.LeftJack;
 }
        public void OnJacksStateEngine(object sender, JacksStateMsg msg)
        {
            _Logger.Trace("Procesando {0}: {1}", EventTopicNames.JacksStateEngine, msg);

            _StateManager.Jacks.Reset(msg.LeftJack, msg.RightJack);

            if (_StateManager.Jacks.SomeJack)
            {
                ResetTimer = false;

                _ScreenSaverTimer.Enabled = false;
                _HangupCallsTimer.Enabled = false;

                _StateManager.Tft.Enabled    = true;
                _StateManager.ScreenSaver.On = false;

                _EngineCmdManager.SendTrapScreenSaver(false);

                _StateManager.Radio.ResetAssignatedState();
            }
            else
            {
                if (_StateManager.Tlf.Priority.State != FunctionState.Idle)
                {
                    _StateManager.Tlf.Priority.Reset();
                }

                if (_StateManager.Tlf.Listen.State == FunctionState.Ready)
                {
                    _StateManager.Tlf.Listen.State = FunctionState.Idle;
                }
                else if (_StateManager.Tlf.Listen.State == FunctionState.Executing)
                {
                    _EngineCmdManager.CancelListen();
                }
                else if (_StateManager.Tlf.Listen.State == FunctionState.Error)
                {
                    _EngineCmdManager.RecognizeListenState();
                }

                if (_StateManager.Tlf.Transfer.State == FunctionState.Ready)
                {
                    _StateManager.Tlf.Transfer.State = FunctionState.Idle;
                }
                else if (_StateManager.Tlf.Transfer.State == FunctionState.Executing)
                {
                    _EngineCmdManager.CancelTransfer();
                }
                else if (_StateManager.Tlf.Transfer.State == FunctionState.Error)
                {
                    _EngineCmdManager.RecognizeTransferState();
                }

                _HangupCallsTimer.Enabled = true;
                if (!_StateManager.ScreenSaver.On)
                {
                    if (ResetTimer)
                    {
                        _StateManager.ScreenSaver.On = true;
                        _EngineCmdManager.SendTrapScreenSaver(true);
                        ResetTimer = false;
                    }
                    else
                    {
                        _ScreenSaverTimer.Enabled = true;
                    }
                }
            }
        }