private void LaunchRRCountyFeedSearch(string countyId)
 {
     if (string.IsNullOrWhiteSpace(tbRRUserName.Text) || string.IsNullOrWhiteSpace(tbRRPassword.Password) || string.IsNullOrWhiteSpace(countyId))
     {
         return;
     }
     ShowProgress(true);
     _feedAPI.UpdateUserInfo(tbRRUserName.Text, tbRRPassword.Password);
     System.Threading.Tasks.Task t = new Task(() =>
     {
         string errorMsg = string.Empty;
         List <Broadcastify.FeedItemHolder> _rrRslt = _feedAPI.SearchForFeedsInCounty(countyId, out errorMsg);
         if (_rrRslt != null)
         {
             _rrFeeds.Clear();
             foreach (Broadcastify.FeedItemHolder f in _rrRslt)
             {
                 _rrFeeds.Add(f);
             }
         }
         ShowProgress(false);
         ShowErrorMessage(_rrRslt == null, errorMsg);
     });
     t.Start();
 }
 private void ProcessResults(List <string> feedResults)
 {
     if (!Dispatcher.CheckAccess())
     {
         Dispatcher.BeginInvoke(new RadioLog.FeedUtils.FeedFinder.ProcessUrlCompleteDelegate(ProcessResults), feedResults);
     }
     else
     {
         int iTotalCnt    = 0;
         int iFilteredCnt = 0;
         pbProcessing.Visibility = System.Windows.Visibility.Collapsed;
         btnOk.IsEnabled         = true;
         btnFind.IsEnabled       = true;
         _feeds.Clear();
         if (feedResults != null)
         {
             foreach (string s in feedResults)
             {
                 iTotalCnt++;
                 if (Common.AppSettings.Instance.SignalSources.FirstOrDefault(f => f.SourceLocation == s && f.SourceType == Common.SignalingSourceType.Streaming) == null)
                 {
                     _feeds.Add(new FoundFeedHolder()
                     {
                         FeedURL = s
                     });
                 }
                 else
                 {
                     iFilteredCnt++;
                 }
             }
         }
         tbStatus.Text = string.Format("{0} Feeds found, {1} already setup...", iTotalCnt, iFilteredCnt);
     }
 }
        public SingleRadioEditorViewModel(RadioSignalItemModel radioSignal)
        {
            if (radioSignal == null)
                throw new ArgumentNullException();

            _radioSignal = radioSignal;
            SignalingFormat = _radioSignal.SignalingFormat;
            SignalingUnitId = _radioSignal.UnitId;
            _unitName = _radioSignal.UnitName;
            _agencyName = _radioSignal.AgencyName;

            _radioTypes = new WPFCommon.ThreadSafeObservableCollection<SingleRadioEditorRadioType>();
            _radioTypes.Add(new SingleRadioEditorRadioType() { RadioType = Common.RadioTypeCode.Unknown, RadioTypeName = "<UNASSIGNED>" });
            _radioTypes.Add(new SingleRadioEditorRadioType() { RadioType = Common.RadioTypeCode.Mobile, RadioTypeName = "Mobile" });
            _radioTypes.Add(new SingleRadioEditorRadioType() { RadioType = Common.RadioTypeCode.Portable, RadioTypeName = "Portable" });
            _radioTypes.Add(new SingleRadioEditorRadioType() { RadioType = Common.RadioTypeCode.BaseStation, RadioTypeName = "Base Station" });

            _agencies = new WPFCommon.ThreadSafeObservableCollection<SingleRadioEditorAgency>();
            _agencies.Add(new SingleRadioEditorAgency() { AgencyId = Guid.Empty, AgencyName = "<UNASSIGNED>" });
            foreach (Common.AgencyInfo aInfo in RadioLog.Common.RadioInfoLookupHelper.Instance.AgencyList.OrderBy(a => a.AgencyName))
            {
                _agencies.Add(new SingleRadioEditorAgency() { AgencyId = aInfo.AgencyId, AgencyName = aInfo.AgencyName });
            }

            _units = new WPFCommon.ThreadSafeObservableCollection<SingleRadioEditorUnit>();
            _units.Add(new SingleRadioEditorUnit() { UnitId = Guid.Empty, AgencyId = Guid.Empty, UnitName = "<UNASSIGNED>" });
            foreach (Common.UnitInfo uInfo in RadioLog.Common.RadioInfoLookupHelper.Instance.UnitList.OrderBy(u => u.UnitName))
            {
                _units.Add(new SingleRadioEditorUnit() { UnitId = uInfo.UnitKeyId, AgencyId = uInfo.AgencyKeyId, UnitName = uInfo.UnitName });
            }

            if (!string.IsNullOrWhiteSpace(_radioSignal.SignalingFormat)&&!string.IsNullOrWhiteSpace(_radioSignal.UnitId))
            {
                Common.RadioInfo radioInfo = Common.RadioInfoLookupHelper.Instance.RadioList.FirstOrDefault(r => r.SignalingLookupKey == _radioSignal.SignalingLookupKey);
                if (radioInfo != null)
                {
                    _unitId = radioInfo.UnitKeyId;
                    _agencyId = radioInfo.AgencyKeyId;
                    _radioName = radioInfo.RadioName;
                    _roleName = radioInfo.RoleName;
                    _personnelName = radioInfo.PersonnelName;
                    _radioType = radioInfo.RadioType;
                    SignalingFormat = radioInfo.SignalingFormat;
                    SignalingUnitId = radioInfo.SignalingUnitId;
                }
            }
        }
Exemplo n.º 4
0
        public AgencyEditorDialog()
        {
            InitializeComponent();

            this.Agencies = new WPFCommon.ThreadSafeObservableCollection <AgencyInfoModel>();
            foreach (RadioLog.Common.AgencyInfo aInfo in RadioLog.Common.RadioInfoLookupHelper.Instance.AgencyList.OrderBy(a => a.AgencyName))
            {
                Agencies.Add(new AgencyInfoModel(aInfo));
            }
            dgAgencies.ItemsSource = this.Agencies;
        }
Exemplo n.º 5
0
        public AgencyEditorDialog()
        {
            InitializeComponent();

            this.Agencies = new WPFCommon.ThreadSafeObservableCollection<AgencyInfoModel>();
            foreach (RadioLog.Common.AgencyInfo aInfo in RadioLog.Common.RadioInfoLookupHelper.Instance.AgencyList.OrderBy(a => a.AgencyName))
            {
                Agencies.Add(new AgencyInfoModel(aInfo));
            }
            dgAgencies.ItemsSource = this.Agencies;
        }
Exemplo n.º 6
0
        internal static void StartMaydayForRadio(string signalingLookupKey)
        {
            if (string.IsNullOrWhiteSpace(signalingLookupKey))
            {
                return;
            }
            RadioSignalItemModel rItemModel = _radioLog.FirstOrDefault(r => r.SignalingLookupKey == signalingLookupKey);

            if (rItemModel == null)
            {
                return;
            }
            EmergencyRadioSignalItemModel mdl = _emergencyRadioLog.FirstOrDefault(r => r.SignalingLookupKey == signalingLookupKey);

            if (mdl != null)
            {
                mdl.EmergencyState = Common.EmergencyState.EmergencyActive;
                mdl.StartedDT      = DateTime.Now;
                mdl.EndedDT        = null;
            }
            else
            {
                mdl = new EmergencyRadioSignalItemModel(rItemModel.RawSignalItem);
                mdl.EmergencyState = Common.EmergencyState.EmergencyActive;
                mdl.StartedDT      = DateTime.Now;
                mdl.EndedDT        = null;
                if (_emergencyRadioLog.Count > 0)
                {
                    _emergencyRadioLog.Insert(0, mdl);
                }
                else
                {
                    _emergencyRadioLog.Add(mdl);
                }
            }
            foreach (RadioSignalItemModel rItem in _radioLog.Where(r => r.SignalingLookupKey == signalingLookupKey))
            {
                rItem.EmergencyState = Common.EmergencyState.EmergencyActive;
            }
        }
Exemplo n.º 7
0
        internal static void ProcessRadioSignal(RadioSignalItemModel mdl)
        {
            if (mdl == null)
            {
                return;
            }

            _rollCallService.HandleRadioCall(mdl);

            if (_radioLog.Count > 0)
            {
                _radioLog.Insert(0, mdl);
                while (_radioLog.Count > _maxLogDisplayItems)
                {
                    _radioLog.RemoveAt(_radioLog.Count - 1);
                }
            }
            else
            {
                _radioLog.Add(mdl);
            }
            if (mdl.EmergencyState == Common.EmergencyState.EmergencyActive)
            {
                StartMaydayForRadio(mdl.SignalingLookupKey);
                if (_emergencyAlarmSound != null)
                {
                    _emergencyAlarmSound.PlaySound();
                }
            }
            else
            {
                EmergencyRadioSignalItemModel eMdl = _emergencyRadioLog.FirstOrDefault(m => m.SignalingLookupKey == mdl.SignalingLookupKey);
                if (eMdl != null)
                {
                    mdl.EmergencyState = eMdl.EmergencyState;
                }
            }
        }
        public SingleRadioEditorViewModel(RadioSignalItemModel radioSignal)
        {
            if (radioSignal == null)
            {
                throw new ArgumentNullException();
            }

            _radioSignal    = radioSignal;
            SignalingFormat = _radioSignal.SignalingFormat;
            SignalingUnitId = _radioSignal.UnitId;
            _unitName       = _radioSignal.UnitName;
            _agencyName     = _radioSignal.AgencyName;

            _radioTypes = new WPFCommon.ThreadSafeObservableCollection <SingleRadioEditorRadioType>();
            _radioTypes.Add(new SingleRadioEditorRadioType()
            {
                RadioType = Common.RadioTypeCode.Unknown, RadioTypeName = "<UNASSIGNED>"
            });
            _radioTypes.Add(new SingleRadioEditorRadioType()
            {
                RadioType = Common.RadioTypeCode.Mobile, RadioTypeName = "Mobile"
            });
            _radioTypes.Add(new SingleRadioEditorRadioType()
            {
                RadioType = Common.RadioTypeCode.Portable, RadioTypeName = "Portable"
            });
            _radioTypes.Add(new SingleRadioEditorRadioType()
            {
                RadioType = Common.RadioTypeCode.BaseStation, RadioTypeName = "Base Station"
            });

            _agencies = new WPFCommon.ThreadSafeObservableCollection <SingleRadioEditorAgency>();
            _agencies.Add(new SingleRadioEditorAgency()
            {
                AgencyId = Guid.Empty, AgencyName = "<UNASSIGNED>"
            });
            foreach (Common.AgencyInfo aInfo in RadioLog.Common.RadioInfoLookupHelper.Instance.AgencyList.OrderBy(a => a.AgencyName))
            {
                _agencies.Add(new SingleRadioEditorAgency()
                {
                    AgencyId = aInfo.AgencyId, AgencyName = aInfo.AgencyName
                });
            }

            _units = new WPFCommon.ThreadSafeObservableCollection <SingleRadioEditorUnit>();
            _units.Add(new SingleRadioEditorUnit()
            {
                UnitId = Guid.Empty, AgencyId = Guid.Empty, UnitName = "<UNASSIGNED>"
            });
            foreach (Common.UnitInfo uInfo in RadioLog.Common.RadioInfoLookupHelper.Instance.UnitList.OrderBy(u => u.UnitName))
            {
                _units.Add(new SingleRadioEditorUnit()
                {
                    UnitId = uInfo.UnitKeyId, AgencyId = uInfo.AgencyKeyId, UnitName = uInfo.UnitName
                });
            }

            if (!string.IsNullOrWhiteSpace(_radioSignal.SignalingFormat) && !string.IsNullOrWhiteSpace(_radioSignal.UnitId))
            {
                Common.RadioInfo radioInfo = Common.RadioInfoLookupHelper.Instance.RadioList.FirstOrDefault(r => r.SignalingLookupKey == _radioSignal.SignalingLookupKey);
                if (radioInfo != null)
                {
                    _unitId         = radioInfo.UnitKeyId;
                    _agencyId       = radioInfo.AgencyKeyId;
                    _radioName      = radioInfo.RadioName;
                    _roleName       = radioInfo.RoleName;
                    _personnelName  = radioInfo.PersonnelName;
                    _radioType      = radioInfo.RadioType;
                    SignalingFormat = radioInfo.SignalingFormat;
                    SignalingUnitId = radioInfo.SignalingUnitId;
                }
            }
        }