コード例 #1
0
        protected override void OnPostApplyResponse()
        {
            CommandParameterGroup firstGroup = BodyCommandParameterGroupList.FirstOrDefault();

            Values = BodyCommandParameterGroupList.Select(currentGroup =>
            {
                TEntity entity = new TEntity();
                entity.ApplyFrom(currentGroup, firstGroup);

                return(entity);
            }).ToList();

            //if (ValueName == null)
            //    throw new InvalidOperationException("ValueName was not set and is null!");

            //if (BodyCommandParameterGroupList.Count == 0 || (ValueName == null && ParseMethod == null))
            //    Value = new List<TEntity>();

            //if (ParseMethod != null)
            //{
            //    CommandParameterGroup firstGroup = BodyCommandParameterGroupList.FirstOrDefault();
            //    Value = BodyCommandParameterGroupList.Select(currentGroup => ParseMethod(currentGroup, firstGroup)).ToList();
            //}
            //else
            //    Value = BodyCommandParameterGroupList.Select(cpg => cpg.GetParameterValue(ValueName).ChangeTypeInvariant(default(TEntity))).ToList();
        }
コード例 #2
0
        protected override void OnPostApplyResponse()
        {
            if (BodyCommandParameterGroupList.Count == 0)
            {
                return;
            }

            Uptime                           = TimeSpan.FromSeconds(BodyCommandParameterGroupList.GetParameterValue <ulong>("INSTANCE_UPTIME"));
            UtcTimeStamp                     = new DateTime(1970, 1, 1).AddSeconds(BodyCommandParameterGroupList.GetParameterValue <ulong>("HOST_TIMESTAMP_UTC"));
            VirtualServersCount              = BodyCommandParameterGroupList.GetParameterValue <uint>("VIRTUALSERVERS_RUNNING_TOTAL");
            FileTransferBandwidthSent        = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_FILETRANSFER_BANDWIDTH_SENT");
            FileTransferBandwidthReceived    = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_FILETRANSFER_BANDWIDTH_RECEIVED");
            AmountOfPacketsSendTotal         = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_PACKETS_SENT_TOTAL");
            AmountOfPacketsReceivedTotal     = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_PACKETS_RECEIVED_TOTAL");
            AmountOfBytesSendTotal           = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_BYTES_SENT_TOTAL");
            AmountOfBytesReceivedTotal       = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_BYTES_RECEIVED_TOTAL");
            BandWidthSentLastSecondTotal     = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_BANDWIDTH_SENT_LAST_SECOND_TOTAL");
            BandWidthReceivedLastSecondTotal = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_BANDWIDTH_RECEIVED_LAST_SECOND_TOTAL");
            BandWidthSentLastMinuteTotal     = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_BANDWIDTH_SENT_LAST_MINUTE_TOTAL");
            BandWidthReceivedLastMinuteTotal = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_BANDWIDTH_RECEIVED_LAST_MINUTE_TOTAL");
            TotalMaxClients                  = BodyCommandParameterGroupList.GetParameterValue <uint>("virtualservers_total_maxclients");
            TotalClientsOnline               = BodyCommandParameterGroupList.GetParameterValue <uint>("virtualservers_total_clients_online");
            TotalChannelsOnline              = BodyCommandParameterGroupList.GetParameterValue <uint>("virtualservers_total_channels_online");

            FileTransferBytesSentTotal     = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_filetransfer_bytes_sent_total");
            FileTransferBytesReceivedTotal = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_filetransfer_bytes_received_total");
        }
コード例 #3
0
        protected override void OnPostApplyResponse()
        {
            if (ValueKey == null)
            {
                throw new InvalidOperationException($"{nameof(ValueKey)} was not set and is null!");
            }

            Value = BodyCommandParameterGroupList.Count == 0 ? default(TValueType) : BodyCommandParameterGroupList.GetParameterValue(ValueKey).ChangeTypeInvariant(default(TValueType));
        }
        protected override void OnPostApplyResponse()
        {
            if (BodyCommandParameterGroupList.Count == 0)
            {
                return;
            }

            ClientDatabaseId = BodyCommandParameterGroupList.GetParameterValue <uint?>("cldbid");
            NickName         = BodyCommandParameterGroupList.GetParameterValue("name");
        }
コード例 #5
0
        protected override void OnPostApplyResponse()
        {
            if (BodyCommandParameterGroupList.Count == 0)
            {
                return;
            }

            ClientId  = BodyCommandParameterGroupList.GetParameterValue <uint>("clid");
            ChannelId = BodyCommandParameterGroupList.GetParameterValue <uint>("cid");
        }
コード例 #6
0
        protected override void OnPostApplyResponse()
        {
            if (BodyCommandParameterGroupList.Count == 0)
            {
                return;
            }

            Version  = BodyCommandParameterGroupList.GetParameterValue("version");
            Build    = BodyCommandParameterGroupList.GetParameterValue("build");
            Platform = BodyCommandParameterGroupList.GetParameterValue("platform");
        }
コード例 #7
0
        protected override void OnPostApplyResponse()
        {
            if (BodyCommandParameterGroupList.Count == 0)
            {
                return;
            }

            PermissionId    = BodyCommandParameterGroupList.GetParameterValue <uint>("permid");
            PermissionName  = BodyCommandParameterGroupList.GetParameterValue("permsid");
            PermissionValue = BodyCommandParameterGroupList.GetParameterValue <int>("permvalue");
        }
コード例 #8
0
        protected override void OnPostApplyResponse()
        {
            base.OnPostApplyResponse();
            if (BodyCommandParameterGroupList.Count == 0)
            {
                return;
            }

            Version           = BodyCommandParameterGroupList.GetParameterValue("client_version");
            Platform          = BodyCommandParameterGroupList.GetParameterValue("client_platform");
            InputMuted        = BodyCommandParameterGroupList.GetParameterValue("client_input_muted").ToBool();
            OutputMuted       = BodyCommandParameterGroupList.GetParameterValue("client_output_muted").ToBool();
            OuputOnlyMuted    = BodyCommandParameterGroupList.GetParameterValue("client_outputonly_muted").ToBool();
            HasInputHardware  = BodyCommandParameterGroupList.GetParameterValue("client_input_hardware").ToBool();
            HasOutputHardware = BodyCommandParameterGroupList.GetParameterValue("client_output_hardware").ToBool();
            IsRecording       = BodyCommandParameterGroupList.GetParameterValue("client_is_recording").ToBool();
            IsAway            = BodyCommandParameterGroupList.GetParameterValue("client_away").ToBool();
            IsTalker          = BodyCommandParameterGroupList.GetParameterValue("client_is_talker").ToBool();
            IsPrioritySpeaker = BodyCommandParameterGroupList.GetParameterValue("client_is_priority_speaker").ToBool();
            AwayMessage       = BodyCommandParameterGroupList.GetParameterValue("client_away_message");

            DefaultChannel     = BodyCommandParameterGroupList.GetParameterValue("client_default_channel");
            MetaData           = BodyCommandParameterGroupList.GetParameterValue("client_meta_data");
            LoginName          = BodyCommandParameterGroupList.GetParameterValue("client_login_name");
            TalkRequestMessage = BodyCommandParameterGroupList.GetParameterValue("client_talk_request_msg");
            NicknamePhonetic   = BodyCommandParameterGroupList.GetParameterValue("client_nickname_phonetic");

            FileTransferBandwidthSent        = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_FILETRANSFER_BANDWIDTH_SENT");
            FileTransferBandwidthReceived    = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_FILETRANSFER_BANDWIDTH_RECEIVED");
            AmountOfPacketsSendTotal         = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_PACKETS_SENT_TOTAL");
            AmountOfPacketsReceivedTotal     = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_PACKETS_RECEIVED_TOTAL");
            AmountOfBytesSendTotal           = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_BYTES_SENT_TOTAL");
            AmountOfBytesReceivedTotal       = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_BYTES_RECEIVED_TOTAL");
            BandWidthSentLastSecondTotal     = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_BANDWIDTH_SENT_LAST_SECOND_TOTAL");
            BandWidthReceivedLastSecondTotal = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_BANDWIDTH_RECEIVED_LAST_SECOND_TOTAL");
            BandWidthSentLastMinuteTotal     = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_BANDWIDTH_SENT_LAST_MINUTE_TOTAL");
            BandWidthReceivedLastMinuteTotal = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_BANDWIDTH_RECEIVED_LAST_MINUTE_TOTAL");

            DatabaseId     = BodyCommandParameterGroupList.GetParameterValue <uint>("client_database_id");
            ChannelId      = BodyCommandParameterGroupList.GetParameterValue <uint>("cid");
            ChannelGroupId = BodyCommandParameterGroupList.GetParameterValue <uint>("client_channel_group_id");

            ServerGroups = BodyCommandParameterGroupList.GetParameterValue("client_servergroups").ToIdList();
            Type         = BodyCommandParameterGroupList.GetParameterValue <uint>("client_type");
            TalkPower    = BodyCommandParameterGroupList.GetParameterValue <uint>("client_talk_power");
            TalkRequests = BodyCommandParameterGroupList.GetParameterValue <uint>("client_talk_request");
            NeededServerQueryViewPower = BodyCommandParameterGroupList.GetParameterValue <uint>("client_needed_serverquery_view_power");

            Avatar        = BodyCommandParameterGroupList.GetParameterValue("client_flag_avatar");
            IdleTime      = TimeSpan.FromMilliseconds(BodyCommandParameterGroupList.GetParameterValue <uint>("client_idle_time"));
            ConnectedTime = TimeSpan.FromMilliseconds(BodyCommandParameterGroupList.GetParameterValue <uint>("connection_connected_time"));
            ClientIP      = BodyCommandParameterGroupList.GetParameterValue("connection_client_ip");
            ClientCountry = BodyCommandParameterGroupList.GetParameterValue("client_country");
        }
        protected override void OnPostApplyResponse()
        {
            if (BodyCommandParameterGroupList.Count == 0)
            {
                return;
            }

            ServerId   = BodyCommandParameterGroupList.GetParameterValue <uint>("sid");
            ServerPort = BodyCommandParameterGroupList.GetParameterValue <ushort>("virtualserver_port");
            Token      = BodyCommandParameterGroupList.GetParameterValue("token");
        }
コード例 #10
0
        protected override void OnPostApplyResponse()
        {
            if (BodyCommandParameterGroupList.Count == 0)
            {
                return;
            }

            ClientFileTransferId = BodyCommandParameterGroupList.GetParameterValue <uint?>("clientftfid");
            ServerFileTransferId = BodyCommandParameterGroupList.GetParameterValue <uint?>("serverftfid");
            FileTransferKey      = BodyCommandParameterGroupList.GetParameterValue("ftkey");
            FileTransferPort     = BodyCommandParameterGroupList.GetParameterValue <ushort?>("port");
            SeekPosition         = BodyCommandParameterGroupList.GetParameterValue <ulong?>("seekpos");
        }
コード例 #11
0
        protected override void OnPostApplyResponse()
        {
            if (BodyCommandParameterGroupList.Count == 0)
            {
                return;
            }

            MessageId      = BodyCommandParameterGroupList.GetParameterValue <uint>("msgid");
            SenderUniqueId = BodyCommandParameterGroupList.GetParameterValue("cluid");
            Subject        = BodyCommandParameterGroupList.GetParameterValue("subject");
            Created        = new DateTime(1970, 1, 1).AddSeconds(BodyCommandParameterGroupList.GetParameterValue <ulong>("timestamp"));
            WasRead        = BodyCommandParameterGroupList.GetParameterValue("flag_read").ToBool();
        }
コード例 #12
0
        protected override void OnPostApplyResponse()
        {
            if (ValueName == null)
            {
                throw new InvalidOperationException("ValueName was not set and is null!");
            }

            if (BodyCommandParameterGroupList.Count == 0 || ValueName == null)
            {
                Values = new List <TValue>();
            }

            Values = BodyCommandParameterGroupList.Select(cpg => cpg.GetParameterValue(ValueName).ChangeTypeInvariant(default(TValue))).ToList();
        }
        protected override void OnPostApplyResponse()
        {
            if (BodyCommandParameterGroupList.Count == 0)
            {
                return;
            }

            UniqueId             = BodyCommandParameterGroupList.GetParameterValue("client_unique_identifier");
            Nickname             = BodyCommandParameterGroupList.GetParameterValue("client_nickname");
            DatabaseId           = BodyCommandParameterGroupList.GetParameterValue <uint>("client_database_id");
            Created              = new DateTime(1970, 1, 1).AddSeconds(BodyCommandParameterGroupList.GetParameterValue <ulong>("client_created"));
            LastConnected        = new DateTime(1970, 1, 1).AddSeconds(BodyCommandParameterGroupList.GetParameterValue <ulong>("client_lastconnected"));
            TotalConnections     = BodyCommandParameterGroupList.GetParameterValue <uint>("client_totalconnections");
            Description          = BodyCommandParameterGroupList.GetParameterValue("client_description");
            MonthBytesUploaded   = BodyCommandParameterGroupList.GetParameterValue <ulong>("client_month_bytes_uploaded");
            MonthBytesDonwloaded = BodyCommandParameterGroupList.GetParameterValue <ulong>("client_month_bytes_downloaded");
            TotalBytesUploaded   = BodyCommandParameterGroupList.GetParameterValue <ulong>("client_total_bytes_uploaded");
            TotalBytesDownloaded = BodyCommandParameterGroupList.GetParameterValue <ulong>("client_total_bytes_downloaded");
            IconId         = BodyCommandParameterGroupList.GetParameterValue <uint>("client_icon_id");
            HashedUniqueId = BodyCommandParameterGroupList.GetParameterValue("client_base64HashClientUID");
        }
コード例 #14
0
        protected override void OnPostApplyResponse()
        {
            if (BodyCommandParameterGroupList.Count == 0)
            {
                return;
            }

            DatabaseVersion               = BodyCommandParameterGroupList.GetParameterValue <uint>("SERVERINSTANCE_DATABASE_VERSION");
            GuestServerQueryGroupId       = BodyCommandParameterGroupList.GetParameterValue <uint>("SERVERINSTANCE_GUEST_SERVERQUERY_GROUP");
            TemplateServerAdminGroupId    = BodyCommandParameterGroupList.GetParameterValue <uint>("SERVERINSTANCE_TEMPLATE_SERVERADMIN_GROUP");
            TemplateServerDefaultGroupId  = BodyCommandParameterGroupList.GetParameterValue <uint>("serverinstance_template_serverdefault_group");
            TemplateChannelAdminGroupId   = BodyCommandParameterGroupList.GetParameterValue <uint>("serverinstance_template_channeladmin_group");
            TemplateChannelDefaultGroupId = BodyCommandParameterGroupList.GetParameterValue <uint>("serverinstance_template_channeldefault_group");
            FileTransferPort              = BodyCommandParameterGroupList.GetParameterValue <ushort>("SERVERINSTANCE_FILETRANSFER_PORT");
            MaxDownloadTotalBandWidth     = BodyCommandParameterGroupList.GetParameterValue <ulong>("SERVERINSTANCE_MAX_DOWNLOAD_TOTAL_BANDWIDTH");
            MaxUploadTotalBandWidth       = BodyCommandParameterGroupList.GetParameterValue <ulong>("SERVERINSTANCE_MAX_UPLOAD_TOTAL_BANDWIDTH");

            ServerQueryFloodCommandsCount  = BodyCommandParameterGroupList.GetParameterValue <uint>("serverinstance_serverquery_flood_commands");
            ServerQueryFloodRatingDuration = TimeSpan.FromSeconds(BodyCommandParameterGroupList.GetParameterValue <double>("serverinstance_serverquery_flood_time"));
            ServerQueryBanDuration         = TimeSpan.FromSeconds(BodyCommandParameterGroupList.GetParameterValue <double>("serverinstance_serverquery_ban_time"));
        }
コード例 #15
0
        protected override void OnPostApplyResponse()
        {
            if (BodyCommandParameterGroupList.Count == 0)
            {
                return;
            }

            string statusString = BodyCommandParameterGroupList.GetParameterValue("virtualserver_status");

            VirtualServerStatus   = VirtualServerStatusHelper.Parse(statusString);
            ClientId              = BodyCommandParameterGroupList.GetParameterValue <uint>("client_id");
            VirtualServerUniqueId = BodyCommandParameterGroupList.GetParameterValue("virtualserver_unique_identifier");
            VirtualServerId       = BodyCommandParameterGroupList.GetParameterValue <uint>("virtualserver_id");
            ChannelId             = BodyCommandParameterGroupList.GetParameterValue <uint>("client_channel_id");
            ClientDatabaseId      = BodyCommandParameterGroupList.GetParameterValue <uint>("client_database_id");
            ClientNickName        = BodyCommandParameterGroupList.GetParameterValue("client_nickname");
            ClientLoginName       = BodyCommandParameterGroupList.GetParameterValue("client_login_name");
            ClientUniqueId        = BodyCommandParameterGroupList.GetParameterValue("client_unique_identifier");
            ServerPort            = BodyCommandParameterGroupList.GetParameterValue <ushort>("virtualserver_port");
            OriginServerId        = BodyCommandParameterGroupList.GetParameterValue <uint>("client_origin_server_id");
        }
        protected override void OnPostApplyResponse()
        {
            if (BodyCommandParameterGroupList.Count == 0)
            {
                return;
            }

            FileTransferBandwidthSent     = BodyCommandParameterGroupList.GetParameterValue <uint>("connection_filetransfer_bandwidth_sent");
            FileTransferBandwidthReceived = BodyCommandParameterGroupList.GetParameterValue <uint>("connection_filetransfer_bandwidth_received");
            PacketsSentTotal            = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_packets_sent_total");
            PacketsReceivedTotal        = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_bytes_sent_total");
            BytesSentTotal              = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_packets_received_total");
            BytesReceivedTotal          = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_bytes_received_total");
            BandwidthSentLastSecond     = BodyCommandParameterGroupList.GetParameterValue <uint>("connection_bandwidth_sent_last_second_total");
            BandwidthSentLastMinute     = BodyCommandParameterGroupList.GetParameterValue <uint>("connection_bandwidth_sent_last_minute_total");
            BandwidthReceivedLastSecond = BodyCommandParameterGroupList.GetParameterValue <uint>("connection_bandwidth_received_last_second_total");
            BandwidthReceivedLastMinute = BodyCommandParameterGroupList.GetParameterValue <uint>("connection_bandwidth_received_last_minute_total");
            ConnectionDuration          = TimeSpan.FromMilliseconds(BodyCommandParameterGroupList.GetParameterValue <uint>("connection_connected_time"));

            FileTransferBytesSentTotal     = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_filetransfer_bytes_sent_total");
            FileTransferBytesReceivedTotal = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_filetransfer_bytes_received_total");
            PacketLossTotal = BodyCommandParameterGroupList.GetParameterValue <double>("connection_packetloss_total");
            Ping            = BodyCommandParameterGroupList.GetParameterValue <double>("connection_ping");
        }
コード例 #17
0
        protected override void OnPostApplyResponse()
        {
            if (BodyCommandParameterGroupList.Count == 0)
            {
                return;
            }

            ParentChannelId             = BodyCommandParameterGroupList.GetParameterValue <uint>("pid");
            Name                        = BodyCommandParameterGroupList.GetParameterValue("channel_name");
            Topic                       = BodyCommandParameterGroupList.GetParameterValue("channel_topic");
            Description                 = BodyCommandParameterGroupList.GetParameterValue("channel_description");
            PasswordHash                = BodyCommandParameterGroupList.GetParameterValue("channel_password");
            Codec                       = BodyCommandParameterGroupList.GetParameterValue <ushort>("channel_codec");
            CodecQuality                = BodyCommandParameterGroupList.GetParameterValue <double>("channel_codec_quality");
            MaxClients                  = BodyCommandParameterGroupList.GetParameterValue <int>("channel_maxclients");
            MaxFamilyClients            = BodyCommandParameterGroupList.GetParameterValue <int>("channel_maxfamilyclients");
            Order                       = BodyCommandParameterGroupList.GetParameterValue <uint>("channel_order");
            IsPermanent                 = BodyCommandParameterGroupList.GetParameterValue("channel_flag_permanent").ToBool();
            IsSemiPermanent             = BodyCommandParameterGroupList.GetParameterValue("channel_flag_semi_permanent").ToBool();
            IsDefaultChannel            = BodyCommandParameterGroupList.GetParameterValue("channel_flag_default").ToBool();
            IsPasswordProtected         = BodyCommandParameterGroupList.GetParameterValue("channel_flag_password").ToBool();
            LatencyFactor               = BodyCommandParameterGroupList.GetParameterValue <uint>("channel_codec_latency_factor");
            IsUnencrypted               = BodyCommandParameterGroupList.GetParameterValue("channel_codec_is_unencrypted").ToBool();
            SecuritySalt                = BodyCommandParameterGroupList.GetParameterValue("channel_security_salt");
            DeleteDelay                 = BodyCommandParameterGroupList.GetParameterValue <uint>("channel_delete_delay");
            IsMaxClientsUnlimited       = BodyCommandParameterGroupList.GetParameterValue("channel_flag_maxclients_unlimited").ToBool();
            IsMaxFamilyClientsUnlimited = BodyCommandParameterGroupList.GetParameterValue("channel_flag_maxfamilyclients_unlimited").ToBool();
            IsMaxFamilyClientsInherited = BodyCommandParameterGroupList.GetParameterValue("channel_flag_maxfamilyclients_inherited").ToBool();
            FilePath                    = BodyCommandParameterGroupList.GetParameterValue("channel_filepath");
            NeededTalkPower             = BodyCommandParameterGroupList.GetParameterValue <uint>("channel_needed_talk_power");
            ForcedSilence               = BodyCommandParameterGroupList.GetParameterValue("channel_forced_silence").ToBool();
            PhoneticName                = BodyCommandParameterGroupList.GetParameterValue("channel_name_phonetic");
            IconId                      = BodyCommandParameterGroupList.GetParameterValue <uint>("channel_icon_id");
            // channel_flag_private=0 | Not implemented yet by TeamSpeak.
            SecondsEmpty = BodyCommandParameterGroupList.GetParameterValue <int>("seconds_empty");
        }
コード例 #18
0
        protected override void OnPostApplyResponse()
        {
            base.OnPostApplyResponse();

            LastIP = BodyCommandParameterGroupList.GetParameterValue("client_lastip");
        }
コード例 #19
0
        protected override void OnPostApplyResponse()
        {
            if (BodyCommandParameterGroupList.Count == 0)
            {
                return;
            }

            UniqueId              = BodyCommandParameterGroupList.GetParameterValue("virtualserver_unique_identifier");
            Name                  = BodyCommandParameterGroupList.GetParameterValue("virtualserver_name");
            WelcomeMessage        = BodyCommandParameterGroupList.GetParameterValue("virtualserver_welcomemessage");
            Platform              = BodyCommandParameterGroupList.GetParameterValue("virtualserver_platform");
            Version               = BodyCommandParameterGroupList.GetParameterValue("virtualserver_version");
            MinClientVersion      = BodyCommandParameterGroupList.GetParameterValue("virtualserver_min_client_version");
            PasswordHash          = BodyCommandParameterGroupList.GetParameterValue("virtualserver_password");
            HostMessage           = BodyCommandParameterGroupList.GetParameterValue("virtualserver_hostmessage");
            FileBase              = BodyCommandParameterGroupList.GetParameterValue("virtualserver_filebase");
            HostButtonTooltip     = BodyCommandParameterGroupList.GetParameterValue("virtualserver_hostbutton_tooltip");
            HostButtonUrl         = BodyCommandParameterGroupList.GetParameterValue("virtualserver_hostbutton_url");
            HostBannerUrl         = BodyCommandParameterGroupList.GetParameterValue("virtualserver_hostbanner_url");
            HostBannerGraphicsUrl = BodyCommandParameterGroupList.GetParameterValue("virtualserver_hostbanner_gfx_url");
            DateCreatedUtc        = new DateTime(1970, 1, 1).AddSeconds(BodyCommandParameterGroupList.GetParameterValue <ulong>("virtualserver_created"));

            Id                         = BodyCommandParameterGroupList.GetParameterValue <uint>("virtualserver_id");
            Port                       = BodyCommandParameterGroupList.GetParameterValue <ushort>("virtualserver_port");
            ReservedSlots              = BodyCommandParameterGroupList.GetParameterValue <ushort>("VIRTUALSERVER_RESERVED_SLOTS");
            NumberOfClientsOnline      = BodyCommandParameterGroupList.GetParameterValue <uint>("virtualserver_clientsonline");
            NumberOfQueryClientsOnline = BodyCommandParameterGroupList.GetParameterValue <uint>("virtualserver_queryclientsonline");
            MaximumClientsAllowed      = BodyCommandParameterGroupList.GetParameterValue <uint>("virtualserver_maxclients");
            Uptime                     = TimeSpan.FromSeconds(BodyCommandParameterGroupList.GetParameterValue <uint>("virtualserver_uptime"));
            AutoStart                  = BodyCommandParameterGroupList.GetParameterValue("virtualserver_autostart") == "1";
            MachineId                  = BodyCommandParameterGroupList.GetParameterValue("virtualserver_machine_id");

            AntiFloodPointsTickReduce         = BodyCommandParameterGroupList.GetParameterValue <int>("virtualserver_antiflood_points_tick_reduce");
            AntiFloodPointsNeededIPBlock      = BodyCommandParameterGroupList.GetParameterValue <int>("virtualserver_antiflood_points_needed_ip_block");
            AntiFloodPointsNeededCommandBlock = BodyCommandParameterGroupList.GetParameterValue <int>("virtualserver_antiflood_points_needed_command_block");

            LogClient       = BodyCommandParameterGroupList.GetParameterValue("virtualserver_log_client") == "1";
            LogQuery        = BodyCommandParameterGroupList.GetParameterValue("virtualserver_log_query") == "1";
            LogChannel      = BodyCommandParameterGroupList.GetParameterValue("virtualserver_log_channel") == "1";
            LogPermission   = BodyCommandParameterGroupList.GetParameterValue("virtualserver_log_permissions") == "1";
            LogServer       = BodyCommandParameterGroupList.GetParameterValue("virtualserver_log_server") == "1";
            LogFiletransfer = BodyCommandParameterGroupList.GetParameterValue("virtualserver_log_filetransfer") == "1";

            string statusString = BodyCommandParameterGroupList.GetParameterValue("virtualserver_status");

            ServerStatus = VirtualServerStatusHelper.Parse(statusString);
            FileTransferBandwidthSent        = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_FILETRANSFER_BANDWIDTH_SENT");
            FileTransferBandwidthReceived    = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_FILETRANSFER_BANDWIDTH_RECEIVED");
            AmountOfPacketsSendTotal         = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_PACKETS_SENT_TOTAL");
            AmountOfPacketsReceivedTotal     = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_PACKETS_RECEIVED_TOTAL");
            AmountOfBytesSendTotal           = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_BYTES_SENT_TOTAL");
            AmountOfBytesReceivedTotal       = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_BYTES_RECEIVED_TOTAL");
            BandWidthSentLastSecondTotal     = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_BANDWIDTH_SENT_LAST_SECOND_TOTAL");
            BandWidthReceivedLastSecondTotal = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_BANDWIDTH_RECEIVED_LAST_SECOND_TOTAL");
            BandWidthSentLastMinuteTotal     = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_BANDWIDTH_SENT_LAST_MINUTE_TOTAL");
            BandWidthReceivedLastMinuteTotal = BodyCommandParameterGroupList.GetParameterValue <ulong>("CONNECTION_BANDWIDTH_RECEIVED_LAST_MINUTE_TOTAL");
            PrioritySpeakerDimmModification  = BodyCommandParameterGroupList.GetParameterValue <double>("virtualserver_priority_speaker_dimm_modificator");

            ClientConnections             = BodyCommandParameterGroupList.GetParameterValue <int>("virtualserver_client_connections");
            QueryClientConnections        = BodyCommandParameterGroupList.GetParameterValue <int>("virtualserver_query_client_connections");
            DefaultChannelAdminGroupId    = BodyCommandParameterGroupList.GetParameterValue <int>("virtualserver_default_channel_admin_group");
            DefaultServerGroupId          = BodyCommandParameterGroupList.GetParameterValue <int>("virtualserver_default_server_group");
            DefaultChannelGroupId         = BodyCommandParameterGroupList.GetParameterValue <int>("virtualserver_default_channel_group");
            HostBannerGraphicsInterval    = BodyCommandParameterGroupList.GetParameterValue <int>("virtualserver_hostbanner_gfx_interval");
            ChannelsOnline                = BodyCommandParameterGroupList.GetParameterValue <int>("virtualserver_channelsonline");
            ComplainAutoBanCount          = BodyCommandParameterGroupList.GetParameterValue <int>("virtualserver_complain_autoban_count");
            ComplainAutoBanTime           = BodyCommandParameterGroupList.GetParameterValue <int>("virtualserver_complain_autoban_time");
            ComplainRemoveTime            = BodyCommandParameterGroupList.GetParameterValue <int>("virtualserver_complain_remove_time");
            MinClientsBeforeForcedSilence = BodyCommandParameterGroupList.GetParameterValue <int>("virtualserver_min_clients_in_channel_before_forced_silence");
            NeededIdentitySecurityLevel   = BodyCommandParameterGroupList.GetParameterValue <int>("virtualserver_needed_identity_security_level");

            DownloadQuota             = BodyCommandParameterGroupList.GetParameterValue <ulong>("virtualserver_download_quota");
            UploadQuota               = BodyCommandParameterGroupList.GetParameterValue <ulong>("virtualserver_upload_quota");
            MaxDownloadTotalBandwidth = BodyCommandParameterGroupList.GetParameterValue <ulong>("virtualserver_max_download_total_bandwidth");
            MaxUploadTotalBandwidth   = BodyCommandParameterGroupList.GetParameterValue <ulong>("virtualserver_max_upload_total_bandwidth");
            MonthBytesDownloaded      = BodyCommandParameterGroupList.GetParameterValue <ulong>("virtualserver_month_bytes_downloaded");
            MonthBytesUploaded        = BodyCommandParameterGroupList.GetParameterValue <ulong>("virtualserver_month_bytes_uploaded");
            TotalBytesDownloaded      = BodyCommandParameterGroupList.GetParameterValue <ulong>("virtualserver_total_bytes_downloaded");
            TotalBytesUploaded        = BodyCommandParameterGroupList.GetParameterValue <ulong>("virtualserver_total_bytes_uploaded");

            IsPasswordProtected = BodyCommandParameterGroupList.GetParameterValue("virtualserver_flag_password") == "1";
            HostMessageMode     = (HostMessageMode)BodyCommandParameterGroupList.GetParameterValue <uint>("virtualserver_hostmessage_mode");
            PhoneticName        = BodyCommandParameterGroupList.GetParameterValue("virtualserver_name_phonetic");
            IconId = BodyCommandParameterGroupList.GetParameterValue <uint>("virtualserver_icon_id");
            HostButtonGraphicsUrl = BodyCommandParameterGroupList.GetParameterValue("virtualserver_hostbutton_gfx_url");

            TotalPacketLossSpeech    = BodyCommandParameterGroupList.GetParameterValue <double>("virtualserver_total_packetloss_speech");
            TotalPacketLossKeepalive = BodyCommandParameterGroupList.GetParameterValue <double>("virtualserver_total_packetloss_keepalive");
            TotalPacketLossControl   = BodyCommandParameterGroupList.GetParameterValue <double>("virtualserver_total_packetloss_control");
            TotalPacketLossTotal     = BodyCommandParameterGroupList.GetParameterValue <double>("virtualserver_total_packetloss_total");
            TotalPing                      = BodyCommandParameterGroupList.GetParameterValue <double>("virtualserver_total_ping");
            IP                             = BodyCommandParameterGroupList.GetParameterValue("virtualserver_ip");
            WeblistEnabled                 = BodyCommandParameterGroupList.GetParameterValue("virtualserver_weblist_enabled") == "1";
            AskForPrivilegKey              = BodyCommandParameterGroupList.GetParameterValue("virtualserver_ask_for_privilegekey") == "1";
            HostBannerMode                 = (HostBannerMode)BodyCommandParameterGroupList.GetParameterValue <uint>("virtualserver_hostbanner_mode");
            FileTransferBytesSentTotal     = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_filetransfer_bytes_sent_total");
            FileTransferBytesReceivedTotal = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_filetransfer_bytes_received_total");
            PacketsSentSpeech              = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_packets_sent_speech");
            BytesSentSpeech                = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_bytes_sent_speech");
            PacketsReceivedSpeech          = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_packets_received_speech");
            BytesReceivedSpeech            = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_bytes_received_speech");
            PacketsSentKeepAlive           = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_packets_sent_keepalive");
            BytesSentKeepAlive             = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_bytes_sent_keepalive");
            PacketsReceivedKeepAlive       = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_packets_received_keepalive");
            BytesReceivedKeepAlive         = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_bytes_received_keepalive");
            PacketsSentControl             = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_packets_sent_control");
            BytesSentControl               = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_bytes_sent_control");
            PacketsReceivedControl         = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_packets_received_control");
            BytesReceivedControl           = BodyCommandParameterGroupList.GetParameterValue <ulong>("connection_bytes_received_control");
        }