private async Task GetPingData(object parameter)
        {
            IsPinging = true;
            OnPropertyChanged(nameof(IsPinging));
            while (IsPinging)
            {
                var result = await _pingStatus.PingServer();

                _totalNumberOfPingsCollected++;

                if (result.Status != IPStatus.Success)
                {
                    PacketsLost++;
                    OnPropertyChanged(nameof(PacketsLost), nameof(PercentageOfLostPackets));
                }
                else
                {
                    PingPoints.Add(result.RoundtripTime);

                    if (PingPoints.Count > 20)
                    {
                        PingPoints.RemoveAt(0);
                    }

                    AveragePing = PingPoints.Average();
                    OnPropertyChanged(nameof(AveragePing));

                    if (PacketsLost != 0)
                    {
                        OnPropertyChanged(nameof(PercentageOfLostPackets));
                    }
                }
            }
        }