/// <summary>Sets all the basic data for a Teamspeak server.</summary> /// <param name="serverInfo">The server's information to set from.</param> public void setBasicData(TeamspeakResponseGroup serverInfo) { String value; Int32 iValue; Boolean bValue; tsName = serverInfo["virtualserver_name"]; if ((value = serverInfo["virtualserver_id"]) != null) if (Int32.TryParse(value, out iValue)) tsId = iValue; else tsId = null; else tsId = null; if ((value = serverInfo["virtualserver_port"]) != null) if (Int32.TryParse(value, out iValue)) tsPort = iValue; else tsPort = null; else tsPort = null; if ((value = serverInfo["virtualserver_machine_id"]) != null) if (Int32.TryParse(value, out iValue)) tsMachineId = iValue; else tsMachineId = null; else tsMachineId = null; tsStatus = serverInfo["virtualserver_status"]; if ((value = serverInfo["virtualserver_uptime"]) != null) if (Int32.TryParse(value, out iValue)) tsUpTime = iValue; else tsUpTime = null; else tsUpTime = null; if ((value = serverInfo["virtualserver_clientsonline"]) != null) if (Int32.TryParse(value, out iValue)) tsClientsOnline = iValue; else tsClientsOnline = null; else tsClientsOnline = null; if ((value = serverInfo["virtualserver_queryclientsonline"]) != null) if (Int32.TryParse(value, out iValue)) tsQueryClientsOnline = iValue; else tsQueryClientsOnline = null; else tsQueryClientsOnline = null; if ((value = serverInfo["virtualserver_maxclients"]) != null) if (Int32.TryParse(value, out iValue)) tsQueryMaxClients = iValue; else tsQueryMaxClients = null; else tsQueryMaxClients = null; if ((value = serverInfo["virtualserver_autostart"]) != null) if (Boolean.TryParse(value, out bValue)) tsAutoStart = bValue; else tsAutoStart = null; else tsAutoStart = null; }
/// <summary>Takes a raw response and parses it into sections.</summary> private void parse(string raw) { // Set Class Variables. tsRaw = raw.Replace("\n", @"\n").Replace("\r", @"\r"); tsError = new TeamspeakResponseGroup("empty"); tsSections = new List<TeamspeakResponseSection>(); // Split the response up into sections and remove invalid lines. foreach (String section in raw.Replace("\n\r", "\n").Split('\n')) if (section.Contains("error id=")) tsError = new TeamspeakResponseGroup(section.Trim()); else if (!String.IsNullOrEmpty(section.Trim())) tsSections.Add(new TeamspeakResponseSection(section.Trim())); }
/// <summary>Attempts to set all the data from the passed in response.</summary> /// <param name="serverInfo">The server's information to set from.</param> public TeamspeakServer(TeamspeakResponseGroup serverInfo) { setBasicData(serverInfo); }
/// <summary>Sets all the basic data for a Teamspeak client.</summary> /// <param name="clientInfo">The client's information to set from.</param> public void setBasicData(TeamspeakResponseGroup clientInfo) { String value; Int32 iValue; tsName = clientInfo["client_nickname"]; if ((value = clientInfo["clid"]) != null) if (Int32.TryParse(value, out iValue)) tsId = iValue; else tsId = null; else tsId = null; }
/// <summary>Sets all the medium data for a Teamspeak client.</summary> /// <param name="clientInfo">The client's information to set from.</param> public void setMediumData(TeamspeakResponseGroup clientInfo) { String value; Int32 iValue; if ((value = clientInfo["client_database_id"]) != null) if (Int32.TryParse(value, out iValue)) medDatabaseId = iValue; else medDatabaseId = null; else medDatabaseId = null; if ((value = clientInfo["cid"]) != null) if (Int32.TryParse(value, out iValue)) medChannelId = iValue; else medChannelId = null; else medChannelId = null; if ((value = clientInfo["client_type"]) != null) if (Int32.TryParse(value, out iValue)) medType = iValue; else medType = null; else medType = null; }
/// <summary>Sets all the advanced data for a Teamspeak client.</summary> /// <param name="clientInfo">The client's information to set from.</param> public void setAdvancedData(TeamspeakResponseGroup clientInfo) { String value; Int32 iValue; Boolean bValue; advLoginName = clientInfo["client_login_name"]; advUniqueId = clientInfo["client_unique_identifier"]; advIpAddress = clientInfo["connection_client_ip"]; advVersion = clientInfo["client_version"]; advPlatform = clientInfo["client_platform"]; advDescription = clientInfo["client_description"]; advCountry = clientInfo["client_country"]; advMetaData = clientInfo["client_meta_data"]; if ((value = clientInfo["client_channel_group_id"]) != null) if (Int32.TryParse(value, out iValue)) advChannelGroupId = iValue; else advChannelGroupId = null; else advChannelGroupId = null; if ((value = clientInfo["client_servergroups"]) != null) if (Int32.TryParse(value, out iValue)) advServerGroupId = iValue; else advServerGroupId = null; else advServerGroupId = null; if ((value = clientInfo["client_is_channel_commander"]) != null) if (Boolean.TryParse(value, out bValue)) advIsChannelCommander = bValue; else advIsChannelCommander = null; else advIsChannelCommander = null; advDefaultChannel = clientInfo["client_default_channel"]; if ((value = clientInfo["connection_connected_time"]) != null) if (Int32.TryParse(value, out iValue)) advConnectionTime = iValue; else advConnectionTime = null; else advConnectionTime = null; if ((value = clientInfo["client_idle_time"]) != null) if (Int32.TryParse(value, out iValue)) advIdleTime = iValue; else advIdleTime = null; else advIdleTime = null; if ((value = clientInfo["client_created"]) != null) if (Int32.TryParse(value, out iValue)) advCreationTime = iValue; else advCreationTime = null; else advCreationTime = null; if ((value = clientInfo["client_lastconnected"]) != null) if (Int32.TryParse(value, out iValue)) advLastConnected = iValue; else advLastConnected = null; else advLastConnected = null; if ((value = clientInfo["client_totalconnections"]) != null) if (Int32.TryParse(value, out iValue)) advTotalConnections = iValue; else advTotalConnections = null; else advTotalConnections = null; if ((value = clientInfo["client_input_muted"]) != null) if (Boolean.TryParse(value, out bValue)) advInputMuted = bValue; else advInputMuted = null; else advInputMuted = null; if ((value = clientInfo["client_output_muted"]) != null) if (Boolean.TryParse(value, out bValue)) advOutputMuted = bValue; else advOutputMuted = null; else advOutputMuted = null; if ((value = clientInfo["client_outputonly_muted"]) != null) if (Boolean.TryParse(value, out bValue)) advOutputMutedOnly = bValue; else advOutputMutedOnly = null; else advOutputMutedOnly = null; if ((value = clientInfo["client_input_hardware"]) != null) if (Boolean.TryParse(value, out bValue)) advInputHardware = bValue; else advInputHardware = null; else advInputHardware = null; if ((value = clientInfo["client_output_hardware"]) != null) if (Boolean.TryParse(value, out bValue)) advOutputHardware = bValue; else advOutputHardware = null; else advOutputHardware = null; if ((value = clientInfo["client_is_recording"]) != null) if (Boolean.TryParse(value, out bValue)) advIsRecording = bValue; else advIsRecording = null; else advIsRecording = null; advFlagAvatar = clientInfo["client_flag_avatar"]; advAwayMessage = clientInfo["client_away_message"]; advTalkMessage = clientInfo["client_talke_request_msg"]; advPhoneticNick = clientInfo["client_nickname_phonetic"]; advDefaultToken = clientInfo["client_default_token"]; advBase64Hash = clientInfo["client_base64HashClientUID"]; if ((value = clientInfo["client_talk_power"]) != null) if (Int32.TryParse(value, out iValue)) advTalkPower = iValue; else advTalkPower = null; else advTalkPower = null; if ((value = clientInfo["client_needed_serverquery_view_power"]) != null) if (Int32.TryParse(value, out iValue)) advQueryViewPower = iValue; else advQueryViewPower = null; else advQueryViewPower = null; if ((value = clientInfo["client_unread_messages"]) != null) if (Int32.TryParse(value, out iValue)) advUnreadMessages = iValue; else advUnreadMessages = null; else advUnreadMessages = null; if ((value = clientInfo["client_icon_id"]) != null) if (Int32.TryParse(value, out iValue)) advIconId = iValue; else advIconId = null; else advIconId = null; if ((value = clientInfo["client_away"]) != null) if (Boolean.TryParse(value, out bValue)) advIsAway = bValue; else advIsAway = null; else advIsAway = null; if ((value = clientInfo["client_talk_request"]) != null) if (Boolean.TryParse(value, out bValue)) advTalkRequest = bValue; else advTalkRequest = null; else advTalkRequest = null; if ((value = clientInfo["client_is_talker"]) != null) if (Boolean.TryParse(value, out bValue)) advIsTalker = bValue; else advIsTalker = null; else advIsTalker = null; if ((value = clientInfo["client_is_priority_speaker"]) != null) if (Boolean.TryParse(value, out bValue)) advIsPriority = bValue; else advIsPriority = null; else advIsPriority = null; if ((value = clientInfo["client_month_bytes_uploaded"]) != null) if (Int32.TryParse(value, out iValue)) advBytesUpMonth = iValue; else advBytesUpMonth = null; else advBytesUpMonth = null; if ((value = clientInfo["client_month_bytes_downloaded"]) != null) if (Int32.TryParse(value, out iValue)) advBytesDownMonth = iValue; else advBytesDownMonth = null; else advBytesDownMonth = null; if ((value = clientInfo["client_total_bytes_uploaded"]) != null) if (Int32.TryParse(value, out iValue)) advBytesUpTotal = iValue; else advBytesUpTotal = null; else advBytesUpTotal = null; if ((value = clientInfo["client_total_bytes_downloaded"]) != null) if (Int32.TryParse(value, out iValue)) advBytesDownTotal = iValue; else advBytesDownTotal = null; else advBytesDownTotal = null; if ((value = clientInfo["connection_filetransfer_bandwidth_sent"]) != null) if (Int32.TryParse(value, out iValue)) advFileBandwidthSent = iValue; else advFileBandwidthSent = null; else advFileBandwidthSent = null; if ((value = clientInfo["connection_filetransfer_bandwidth_received"]) != null) if (Int32.TryParse(value, out iValue)) advFileBandwidthRec = iValue; else advFileBandwidthRec = null; else advFileBandwidthRec = null; if ((value = clientInfo["connection_packets_sent_total"]) != null) if (Int32.TryParse(value, out iValue)) advPacketsTotalSent = iValue; else advUnreadMessages = null; else advUnreadMessages = null; if ((value = clientInfo["connection_packets_received_total"]) != null) if (Int32.TryParse(value, out iValue)) advPacketsTotalSent = iValue; else advPacketsTotalSent = null; else advPacketsTotalSent = null; if ((value = clientInfo["connection_bytes_sent_total"]) != null) if (Int32.TryParse(value, out iValue)) advBytesTotalSent = iValue; else advBytesTotalSent = null; else advBytesTotalSent = null; if ((value = clientInfo["connection_bytes_received_total"]) != null) if (Int32.TryParse(value, out iValue)) advBytesTotalRec = iValue; else advBytesTotalRec = null; else advBytesTotalRec = null; if ((value = clientInfo["connection_bandwidth_sent_last_second_total"]) != null) if (Int32.TryParse(value, out iValue)) advBndwdthSecondSent = iValue; else advBndwdthSecondSent = null; else advBndwdthSecondSent = null; if ((value = clientInfo["connection_bandwidth_received_last_second_total"]) != null) if (Int32.TryParse(value, out iValue)) advBndwdthSecondRec = iValue; else advBndwdthSecondRec = null; else advBndwdthSecondRec = null; if ((value = clientInfo["connection_bandwidth_sent_last_minute_total"]) != null) if (Int32.TryParse(value, out iValue)) advBndwdthMinuteSent = iValue; else advBndwdthMinuteSent = null; else advBndwdthMinuteSent = null; if ((value = clientInfo["connection_bandwidth_received_last_minute_total"]) != null) if (Int32.TryParse(value, out iValue)) advBndwdthMinuteRec = iValue; else advBndwdthMinuteRec = null; else advBndwdthMinuteRec = null; }
/// <summary>Attempts to set all the data from the passed in response.</summary> /// <param name="clientInfo">The client's information to set from.</param> public TeamspeakClient(TeamspeakResponseGroup clientInfo) { setBasicData(clientInfo); setMediumData(clientInfo); setAdvancedData(clientInfo); }
/// <summary>Sets all the medium data for a Teamspeak channel.</summary> /// <param name="channelInfo">The channel's information to set from.</param> public void setMediumData(TeamspeakResponseGroup channelInfo) { String value; Int32 iValue; if ((value = channelInfo["pid"]) != null) if (Int32.TryParse(value, out iValue)) medPId = iValue; else medPId = null; else medPId = null; if ((value = channelInfo["channel_order"]) != null) if (Int32.TryParse(value, out iValue)) medOrder = iValue; else medOrder = null; else medOrder = null; if ((value = channelInfo["total_clients"]) != null) if (Int32.TryParse(value, out iValue)) medTotalClients = iValue; else medTotalClients = null; else medTotalClients = null; if ((value = channelInfo["channel_needed_subscribe_power"]) != null) if (Int32.TryParse(value, out iValue)) medPowerNeededToSub = iValue; else medPowerNeededToSub = null; else medPowerNeededToSub = null; }
/// <summary>Sets all the advanced data for a Teamspeak channel.</summary> /// <param name="channelInfo">The channel's information to set from.</param> public void setAdvancedData(TeamspeakResponseGroup channelInfo) { String value; Int32 iValue; Boolean bValue; advTopic = channelInfo["channel_topic"]; advDescription = channelInfo["channel_description"]; advPassword = channelInfo["channel_password"]; advFilepath = channelInfo["channel_filepath"]; advPhoneticName = channelInfo["channel_name_phonetic"]; if ((value = channelInfo["channel_codec"]) != null) if (Int32.TryParse(value, out iValue)) advCodec = iValue; else advCodec = null; else advCodec = null; if ((value = channelInfo["channel_codec_quality"]) != null) if (Int32.TryParse(value, out iValue)) advCodecQuality = iValue; else advCodecQuality = null; else advCodecQuality = null; if ((value = channelInfo["channel_codec_latency_factor"]) != null) if (Int32.TryParse(value, out iValue)) advCodecLatencyFactor = iValue; else advCodecLatencyFactor = null; else advCodecLatencyFactor = null; if ((value = channelInfo["channel_maxclients"]) != null) if (Int32.TryParse(value, out iValue)) advMaxClients = iValue; else advMaxClients = null; else advMaxClients = null; if ((value = channelInfo["channel_maxfamilyclients"]) != null) if (Int32.TryParse(value, out iValue)) advMaxFamilyClients = iValue; else advMaxFamilyClients = null; else advMaxFamilyClients = null; if ((value = channelInfo["channel_needed_talk_power"]) != null) if (Int32.TryParse(value, out iValue)) advNeededTalkPower = iValue; else advNeededTalkPower = null; else advNeededTalkPower = null; if ((value = channelInfo["channel_icon_id"]) != null) if (Int32.TryParse(value, out iValue)) advIconId = iValue; else advIconId = null; else advIconId = null; if ((value = channelInfo["channel_flag_permanent"]) != null) if (Boolean.TryParse(value, out bValue)) advFlagPermanent = bValue; else advFlagPermanent = null; else advFlagPermanent = null; if ((value = channelInfo["channel_flag_semi_permanent"]) != null) if (Boolean.TryParse(value, out bValue)) advFlagSemiPermanent = bValue; else advFlagSemiPermanent = null; else advFlagSemiPermanent = null; if ((value = channelInfo["channel_flag_default"]) != null) if (Boolean.TryParse(value, out bValue)) advFlagDefault = bValue; else advFlagDefault = null; else advFlagDefault = null; if ((value = channelInfo["channel_flag_password"]) != null) if (Boolean.TryParse(value, out bValue)) advFlagPassword = bValue; else advFlagPassword = null; else advFlagPassword = null; if ((value = channelInfo["channel_flag_maxclients_unlimited"]) != null) if (Boolean.TryParse(value, out bValue)) advFlagMaxClientsUnlimited = bValue; else advFlagMaxClientsUnlimited = null; else advFlagMaxClientsUnlimited = null; if ((value = channelInfo["channel_flag_maxfamilyclients_unlimited"]) != null) if (Boolean.TryParse(value, out bValue)) advFlagMaxFamilyClientsUnlimited = bValue; else advFlagMaxFamilyClientsUnlimited = null; else advFlagMaxFamilyClientsUnlimited = null; if ((value = channelInfo["channel_flag_maxfamilyclients_inherited"]) != null) if (Boolean.TryParse(value, out bValue)) advFlagMaxFamilyClientsInherited = bValue; else advFlagMaxFamilyClientsInherited = null; else advFlagMaxFamilyClientsInherited = null; if ((value = channelInfo["channel_forced_silence"]) != null) if (Boolean.TryParse(value, out bValue)) advForcedSilence = bValue; else advForcedSilence = null; else advForcedSilence = null; }
/// <summary>Attempts to set all the data from the passed in response.</summary> /// <param name="channelInfo">The channel's information to set from.</param> public TeamspeakChannel(TeamspeakResponseGroup channelInfo) { setBasicData(channelInfo); setMediumData(channelInfo); setAdvancedData(channelInfo); }