# The fields array specifies command parameter. # - "map": is a unique name for a field. This is required since teamspeak # | sometimes reuses field names with different data or datatypes. # | We usually use the same as "ts" unless disambiguation is needed. # - "ts": is then field name in the command as teamspeak uses it. # - "pretty": is a high-level name for the field which should be better readable # | and make more sense in the object context it is used. # - "type": Descibes a primitive type or enum which can be used for this field. # | We use the primitve type namings of the language 'Rust'. # - "mod": Applies an additional modifier to this field. Current modifiers: # | "array": The field is a comma-seperated list and can be read as an array. fields = [ { map="aclid", ts="aclid", pretty="ClientId", type="ClientId" }, { map="acn", ts="acn", pretty="AcceptedClientName", type="str" }, { map="alpha", ts="alpha", pretty="Alpha", type="str" }, { map="average_speed", ts="average_speed", pretty="AverageSpeed", type="f32" }, { map="banid", ts="banid", pretty="BanId", type="u32" }, # integer, size guessed { map="bantime", ts="bantime", pretty="BanTime", type="DurationSeconds" }, { map="banreason", ts="banreason", pretty="BanReason", type="str" }, { map="begin_pos", ts="begin_pos", pretty="Offset", type="u64" }, # integer, size guessed { map="beta", ts="beta", pretty="Beta", type="str" }, { map="cfid", ts="cfid", pretty="SourceChannelId", type="ChannelId" }, { map="cgi", ts="cgi", pretty="ChannelGroupIndex", type="ChannelGroupId" }, { map="cgid", ts="cgid", pretty="ChannelGroup", type="ChannelGroupId" }, # TODO: Consider name 'ChannelGroup' for consistency { map="channel_banner_gfx_url", ts="channel_banner_gfx_url", pretty="BannerGfxUrl", type="str" }, { map="channel_banner_mode", ts="channel_banner_mode", pretty="BannerMode", type="str" }, # ?? Same as HostBannerMode maybe? There's no ui for this setting { map="channel_codec", ts="channel_codec", pretty="Codec", type="Codec" }, { map="channel_codec_is_unencrypted", ts="channel_codec_is_unencrypted", pretty="IsUnencrypted", type="bool" }, { map="channel_codec_latency_factor", ts="channel_codec_latency_factor", pretty="CodecLatencyFactor", type="i32" }, { map="channel_codec_quality", ts="channel_codec_quality", pretty="CodecQuality", type="u8" }, { map="channel_delete_delay", ts="channel_delete_delay", pretty="DeleteDelay", type="DurationSeconds" }, { map="channel_description", ts="channel_description", pretty="Description", type="str" }, { map="channel_filepath", ts="channel_filepath", pretty="FilePath", type="str" }, { map="channel_flag_default", ts="channel_flag_default", pretty="IsDefault", type="bool" }, { map="channel_flag_maxclients_unlimited", ts="channel_flag_maxclients_unlimited", pretty="IsMaxClientsUnlimited", type="bool" }, { map="channel_flag_maxfamilyclients_inherited", ts="channel_flag_maxfamilyclients_inherited", pretty="InheritsMaxFamilyClients", type="bool" }, { map="channel_flag_maxfamilyclients_unlimited", ts="channel_flag_maxfamilyclients_unlimited", pretty="IsMaxFamilyClientsUnlimited", type="bool" }, { map="channel_flag_password", ts="channel_flag_password", pretty="HasPassword", type="bool" }, { map="channel_flag_permanent", ts="channel_flag_permanent", pretty="IsPermanent", type="bool" }, { map="channel_flag_private", ts="channel_flag_private", pretty="IsPrivate", type="bool" }, { map="channel_flag_semi_permanent", ts="channel_flag_semi_permanent", pretty="IsSemiPermanent", type="bool" }, { map="channel_forced_silence", ts="channel_forced_silence", pretty="ForcedSilence", type="bool" }, { map="channel_icon_id", ts="channel_icon_id", pretty="Icon", type="IconId" }, { map="channel_maxclients", ts="channel_maxclients", pretty="MaxClients", type="i32" }, # should be u16, but teamspeak sometimes sends '-1' { map="channel_maxfamilyclients", ts="channel_maxfamilyclients", pretty="MaxFamilyClients", type="i32" }, # should be u16, but teamspeak sometimes sends '-1' { map="channel_name", ts="channel_name", pretty="Name", type="str" }, { map="channel_name_phonetic", ts="channel_name_phonetic", pretty="PhoneticName", type="str" }, { map="channel_needed_subscribe_power", ts="channel_needed_subscribe_power", pretty="NeededSubscribePower", type="i32" }, { map="channel_needed_talk_power", ts="channel_needed_talk_power", pretty="NeededTalkPower", type="i32" }, { map="channel_order", ts="channel_order", pretty="Order", type="ChannelId" }, { map="channel_password", ts="channel_password", pretty="Password", type="str" }, { map="channel_security_salt", ts="channel_security_salt", pretty="PasswordSalt", type="str" }, { map="channel_topic", ts="channel_topic", pretty="Topic", type="str" }, { map="channel_unique_identifier", ts="channel_unique_identifier", pretty="Guid", type="str" }, { map="cid", ts="cid", pretty="ChannelId", type="ChannelId" }, { map="cldbid", ts="cldbid", pretty="ClientDbId", type="ClientDbId" }, { map="clid", ts="clid", pretty="ClientId", type="ClientId" }, { map="client_away", ts="client_away", pretty="IsAway", type="bool" }, { map="client_away_message", ts="client_away_message", pretty="AwayMessage", type="str" }, { map="client_badges", ts="client_badges", pretty="Badges", type="str" }, { map="client_signed_badges", ts="client_signed_badges", pretty="SignedBadges", type="str" }, { map="client_base64HashClientUID", ts="client_base64HashClientUID", pretty="Base64HashClientUid", type="str" }, { map="client_channel_group_id", ts="client_channel_group_id", pretty="ChannelGroup", type="ChannelGroupId" }, { map="client_channel_group_inherited_channel_id", ts="client_channel_group_inherited_channel_id", pretty="InheritedChannelGroupFromChannel", type="ChannelId" }, { map="client_channel_id", ts="client_channel_id", pretty="ChannelId", type="ChannelId" }, { map="client_country", ts="client_country", pretty="CountryCode", type="str" }, { map="client_created", ts="client_created", pretty="Created", type="DateTime" }, { map="client_database_id", ts="client_database_id", pretty="DatabaseId", type="ClientDbId" }, { map="client_default_channel", ts="client_default_channel", pretty="DefaultChannel", type="str" }, { map="client_default_channel_password", ts="client_default_channel_password", pretty="DefaultChannelPassword", type="str" }, { map="client_default_token", ts="client_default_token", pretty="DefaultToken", type="str" }, { map="client_description", ts="client_description", pretty="Description", type="str" }, { map="client_estimated_location", ts="client_estimated_location", pretty="EstimatedLocation", type="str" }, { map="client_flag_avatar", ts="client_flag_avatar", pretty="AvatarHash", type="str" }, { map="client_flag_talking", ts="client_flag_talking", pretty="IsTalking", type="bool" }, { map="client_icon_id", ts="client_icon_id", pretty="Icon", type="IconId" }, { map="client_id", ts="client_id", pretty="ClientId", type="ClientId" }, { map="client_idle_time", ts="client_idle_time", pretty="ClientIdleTime", type="DurationMilliseconds" }, { map="client_input_hardware", ts="client_input_hardware", pretty="InputHardwareEnabled", type="bool" }, { map="client_input_muted", ts="client_input_muted", pretty="InputMuted", type="bool" }, { map="client_integrations", ts="client_integrations", pretty="Integrations", type="str" }, # type guessed { map="client_active_integrations_info", ts="client_active_integrations_info", pretty="ActiveIntegrationsInfo", type="str" }, # type guessed { map="client_is_channel_commander", ts="client_is_channel_commander", pretty="IsChannelCommander", type="bool" }, { map="client_is_priority_speaker", ts="client_is_priority_speaker", pretty="IsPrioritySpeaker", type="bool" }, { map="client_is_recording", ts="client_is_recording", pretty="IsRecording", type="bool" }, { map="client_is_talker", ts="client_is_talker", pretty="TalkPowerGranted", type="bool" }, { map="client_key_offset", ts="client_key_offset", pretty="ClientKeyOffset", type="u64" }, { map="client_lastconnected", ts="client_lastconnected", pretty="LastConnected", type="DateTime" }, { map="client_lastip", ts="client_lastip", pretty="LastIp", type="str" }, { map="client_login_name", ts="client_login_name", pretty="LoginName", type="str" }, { map="client_login_password", ts="client_login_password", pretty="LoginPassword", type="str" }, { map="client_meta_data", ts="client_meta_data", pretty="Metadata", type="str" }, { map="client_month_bytes_downloaded", ts="client_month_bytes_downloaded", pretty="BytesDownloadedMonth", type="u64" }, { map="client_month_bytes_uploaded", ts="client_month_bytes_uploaded", pretty="BytesUploadedMonth", type="u64" }, { map="client_myteamspeak_id", ts="client_myteamspeak_id", pretty="MyTeamSpeakId", type="str" }, # type guessed { map="client_myteamspeak_avatar", ts="client_myteamspeak_avatar", pretty="MyTeamSpeakAvatar", type="str" }, # type guessed { map="client_needed_serverquery_view_power", ts="client_needed_serverquery_view_power", pretty="NeededServerqueryViewPower", type="i32" }, { map="client_nickname", ts="client_nickname", pretty="Name", type="str" }, { map="client_nickname@initserver", ts="client_nickname", pretty="ClientName", type="str" }, # Mirrored { map="client_nickname_phonetic", ts="client_nickname_phonetic", pretty="PhoneticName", type="str" }, { map="client_nickname_phonetic@initserver", ts="client_nickname_phonetic", pretty="ClientPhoneticName", type="str" }, # Mirrored { map="client_origin_server_id", ts="client_origin_server_id", pretty="OriginServerId", type="u64" }, { map="client_output_hardware", ts="client_output_hardware", pretty="OutputHardwareEnabled", type="bool" }, { map="client_output_muted", ts="client_output_muted", pretty="OutputMuted", type="bool" }, { map="client_outputonly_muted", ts="client_outputonly_muted", pretty="OutputOnlyMuted", type="bool" }, { map="client_platform", ts="client_platform", pretty="Platform", type="str" }, { map="client_platform@initserver", ts="client_platform", pretty="ClientPlatform", type="str" }, # Mirrored { map="client_security_hash", ts="client_security_hash", pretty="SecurityHash", type="str" }, { map="client_server_password", ts="client_server_password", pretty="Password", type="str" }, { map="client_servergroups", ts="client_servergroups", pretty="ServerGroups", type="ServerGroupId", mod="array" }, { map="client_talk_power", ts="client_talk_power", pretty="TalkPower", type="i32" }, { map="client_talk_request", ts="client_talk_request", pretty="TalkPowerRequestTime", type="DateTime" }, # 0 means no talk request { map="client_talk_request@clientupdate", ts="client_talk_request", pretty="TalkPowerRequest", type="bool" }, { map="client_talk_request_msg", ts="client_talk_request_msg", pretty="TalkPowerRequestMessage", type="str" }, { map="client_total_bytes_downloaded", ts="client_total_bytes_downloaded", pretty="BytesDownloadedTotal", type="u64" }, { map="client_total_bytes_uploaded", ts="client_total_bytes_uploaded", pretty="BytesUploadedTotal", type="u64" }, { map="client_totalconnections", ts="client_totalconnections", pretty="ConnectionsTotal", type="u32" }, { map="client_type", ts="client_type", pretty="ClientType", type="ClientType" }, { map="client_unique_identifier", ts="client_unique_identifier", pretty="Uid", type="Uid" }, { map="client_unread_messages", ts="client_unread_messages", pretty="UnreadMessages", type="u32" }, { map="client_version", ts="client_version", pretty="Version", type="str" }, { map="client_version@initserver", ts="client_version", pretty="ClientVersion", type="str" }, # Mirrored { map="client_version_sign", ts="client_version_sign", pretty="VersionSign", type="str" }, { map="client_version_sign@initserver", ts="client_version_sign", pretty="ClientVersionSign", type="str" }, # Mirrored { map="clientftfid", ts="clientftfid", pretty="ClientFiletransferId", type="u16" }, { map="cluid", ts="cluid", pretty="ClientUid", type="Uid" }, { map="connection_bandwidth_received_last_minute_control", ts="connection_bandwidth_received_last_minute_control", pretty="BandwidthReceivedLastMinuteControl", type="u64" }, { map="connection_bandwidth_received_last_minute_keepalive", ts="connection_bandwidth_received_last_minute_keepalive", pretty="BandwidthReceivedLastMinuteKeepalive", type="u64" }, { map="connection_bandwidth_received_last_minute_speech", ts="connection_bandwidth_received_last_minute_speech", pretty="BandwidthReceivedLastMinuteSpeech", type="u64" }, { map="connection_bandwidth_received_last_minute_total", ts="connection_bandwidth_received_last_minute_total", pretty="BandwidthReceivedLastMinuteTotal", type="u64" }, { map="connection_bandwidth_received_last_second_control", ts="connection_bandwidth_received_last_second_control", pretty="BandwidthReceivedLastSecondControl", type="u64" }, { map="connection_bandwidth_received_last_second_keepalive", ts="connection_bandwidth_received_last_second_keepalive", pretty="BandwidthReceivedLastSecondKeepalive", type="u64" }, { map="connection_bandwidth_received_last_second_speech", ts="connection_bandwidth_received_last_second_speech", pretty="BandwidthReceivedLastSecondSpeech", type="u64" }, { map="connection_bandwidth_received_last_second_total", ts="connection_bandwidth_received_last_second_total", pretty="BandwidthReceivedLastSecondTotal", type="u64" }, { map="connection_bandwidth_sent_last_minute_control", ts="connection_bandwidth_sent_last_minute_control", pretty="BandwidthSentLastMinuteControl", type="u64" }, { map="connection_bandwidth_sent_last_minute_keepalive", ts="connection_bandwidth_sent_last_minute_keepalive", pretty="BandwidthSentLastMinuteKeepalive", type="u64" }, { map="connection_bandwidth_sent_last_minute_speech", ts="connection_bandwidth_sent_last_minute_speech", pretty="BandwidthSentLastMinuteSpeech", type="u64" }, { map="connection_bandwidth_sent_last_minute_total", ts="connection_bandwidth_sent_last_minute_total", pretty="BandwidthSentLastMinuteTotal", type="u64" }, { map="connection_bandwidth_sent_last_second_control", ts="connection_bandwidth_sent_last_second_control", pretty="BandwidthSentLastSecondControl", type="u64" }, { map="connection_bandwidth_sent_last_second_keepalive", ts="connection_bandwidth_sent_last_second_keepalive", pretty="BandwidthSentLastSecondKeepalive", type="u64" }, { map="connection_bandwidth_sent_last_second_speech", ts="connection_bandwidth_sent_last_second_speech", pretty="BandwidthSentLastSecondSpeech", type="u64" }, { map="connection_bandwidth_sent_last_second_total", ts="connection_bandwidth_sent_last_second_total", pretty="BandwidthSentLastSecondTotal", type="u64" }, { map="connection_bytes_received_control", ts="connection_bytes_received_control", pretty="BytesReceivedControl", type="u64" }, { map="connection_bytes_received_keepalive", ts="connection_bytes_received_keepalive", pretty="BytesReceivedKeepalive", type="u64" }, { map="connection_bytes_received_speech", ts="connection_bytes_received_speech", pretty="BytesReceivedSpeech", type="u64" }, { map="connection_bytes_received_total", ts="connection_bytes_received_total", pretty="BytesReceivedTotal", type="u64" }, { map="connection_bytes_sent_control", ts="connection_bytes_sent_control", pretty="BytesSentControl", type="u64" }, { map="connection_bytes_sent_keepalive", ts="connection_bytes_sent_keepalive", pretty="BytesSentKeepalive", type="u64" }, { map="connection_bytes_sent_speech", ts="connection_bytes_sent_speech", pretty="BytesSentSpeech", type="u64" }, { map="connection_bytes_sent_total", ts="connection_bytes_sent_total", pretty="BytesSentTotal", type="u64" }, { map="connection_client_ip", ts="connection_client_ip", pretty="Ip", type="str" }, { map="connection_client_port", ts="connection_client_port", pretty="Port", type="u16" }, { map="connection_client2server_packetloss_control", ts="connection_client2server_packetloss_control", pretty="ClientToServerPacketlossControl", type="f32" }, { map="connection_client2server_packetloss_keepalive", ts="connection_client2server_packetloss_keepalive", pretty="ClientToServerPacketlossKeepalive", type="f32" }, { map="connection_client2server_packetloss_speech", ts="connection_client2server_packetloss_speech", pretty="ClientToServerPacketlossSpeech", type="f32" }, { map="connection_client2server_packetloss_total", ts="connection_client2server_packetloss_total", pretty="ClientToServerPacketlossTotal", type="f32" }, { map="connection_connected_time", ts="connection_connected_time", pretty="ConnectedTime", type="DurationMilliseconds" }, { map="connection_filetransfer_bandwidth_received", ts="connection_filetransfer_bandwidth_received", pretty="FiletransferBandwidthReceived", type="u64" }, { map="connection_filetransfer_bandwidth_sent", ts="connection_filetransfer_bandwidth_sent", pretty="FiletransferBandwidthSent", type="u64" }, { map="connection_filetransfer_bytes_received_total", ts="connection_filetransfer_bytes_received_total", pretty="FiletransferBytesReceivedTotal", type="u64" }, { map="connection_filetransfer_bytes_sent_total", ts="connection_filetransfer_bytes_sent_total", pretty="FiletransferBytesSentTotal", type="u64" }, { map="connection_idle_time", ts="connection_idle_time", pretty="IdleTime", type="DurationMilliseconds" }, { map="connection_packetloss_total", ts="connection_packetloss_total", pretty="PacketlossTotal", type="f32" }, { map="connection_packets_received_control", ts="connection_packets_received_control", pretty="PacketsReceivedControl", type="u64" }, { map="connection_packets_received_keepalive", ts="connection_packets_received_keepalive", pretty="PacketsReceivedKeepalive", type="u64" }, { map="connection_packets_received_speech", ts="connection_packets_received_speech", pretty="PacketsReceivedSpeech", type="u64" }, { map="connection_packets_received_total", ts="connection_packets_received_total", pretty="PacketsReceivedTotal", type="u64" }, { map="connection_packets_sent_control", ts="connection_packets_sent_control", pretty="PacketsSentControl", type="u64" }, { map="connection_packets_sent_keepalive", ts="connection_packets_sent_keepalive", pretty="PacketsSentKeepalive", type="u64" }, { map="connection_packets_sent_speech", ts="connection_packets_sent_speech", pretty="PacketsSentSpeech", type="u64" }, { map="connection_packets_sent_total", ts="connection_packets_sent_total", pretty="PacketsSentTotal", type="u64" }, { map="connection_ping", ts="connection_ping", pretty="Ping", type="DurationMillisecondsFloat" }, { map="connection_ping_deviation", ts="connection_ping_deviation", pretty="PingDeviation", type="DurationMillisecondsFloat" }, { map="connection_server2client_packetloss_control", ts="connection_server2client_packetloss_control", pretty="ServerToClientPacketlossControl", type="f32" }, { map="connection_server2client_packetloss_keepalive", ts="connection_server2client_packetloss_keepalive", pretty="ServerToClientPacketlossKeepalive", type="f32" }, { map="connection_server2client_packetloss_speech", ts="connection_server2client_packetloss_speech", pretty="ServerToClientPacketlossSpeech", type="f32" }, { map="connection_server2client_packetloss_total", ts="connection_server2client_packetloss_total", pretty="ServerToClientPacketlossTotal", type="f32" }, { map="cpid", ts="cpid", pretty="ParentId", type="ChannelId" }, { map="cpw", ts="cpw", pretty="ChannelPassword", type="str" }, { map="created", ts="created", pretty="Created", type="DateTime" }, { map="ctid", ts="ctid", pretty="TargetChannelId", type="ChannelId" }, { map="current_speed", ts="current_speed", pretty="CurrentSpeed", type="f32" }, { map="data", ts="data", pretty="Data", type="str" }, { map="datetime", ts="datetime", pretty="DateTime", type="DateTime" }, { map="delete", ts="delete", pretty="Delete", type="bool" }, { map="desc", ts="desc", pretty="Description", type="str" }, { map="dirname", ts="dirname", pretty="DirectoryName", type="str" }, { map="duration@time", ts="duration", pretty="Duration", type="DurationSeconds" }, { map="duration@list", ts="duration", pretty="Limit", type="u32" }, # integer, size guessed # How often a banned client wanted to connect but was denied { map="enforcements", ts="enforcements", pretty="Enforcements", type="u32" }, { map="es", ts="es", pretty="EmptySince", type="DurationSeconds" }, { map="end", ts="end", pretty="End", type="DateTime" }, { map="event", ts="event", pretty="EventType", type="str" }, # {server|channel|textserver|textchannel|textprivate} { map="fcldbid", ts="fcldbid", pretty="FromClientDbId", type="ClientDbId" }, { map="file_size", ts="file_size", pretty="FileSize", type="u64" }, { map="flag", ts="flag", pretty="IsRead", type="bool" }, { map="flags@channel_ph", ts="flags", pretty="Flags", type="ChannelPermissionHint" }, { map="flags@client_ph", ts="flags", pretty="Flags", type="ClientPermissionHint" }, { map="flag_read", ts="flag_read", pretty="IsRead", type="bool" }, { map="fname", ts="fname", pretty="FromName", type="str" }, { map="ftkey", ts="ftkey", pretty="FiletransferKey", type="str" }, { map="force", ts="force", pretty="Force", type="bool" }, { map="group_id_end", ts="group_id_end", pretty="GroupIdEnd", type="PermissionId" }, # describes how permissions are groupd in the client ui { map="hwid", ts="hwid", pretty="HardwareId", type="str" }, { map="iconid", ts="iconid", pretty="Icon", type="IconId" }, { map="id", ts="id", pretty="Id", type="ChannelId" }, { map="id1", ts="id1", pretty="Id1", type="u64" }, # {ServerGroupId|ClientDbId|ChannelId} { map="id2", ts="id2", pretty="Id2", type="u64" }, # {0|ChannelGroupId|ClientDbId} { map="ident", ts="ident", pretty="ExternalIdentity", type="str" }, { map="ip", ts="ip", pretty="Ip", type="IpAddr" }, { map="instance", ts="instance", pretty="InstanceLog", type="bool" }, { map="invokerid", ts="invokerid", pretty="InvokerId", type="ClientId" }, { map="invokercldbid", ts="invokercldbid", pretty="InvokerDatabaseId", type="ClientDbId" }, { map="invokername", ts="invokername", pretty="InvokerName", type="str" }, { map="invokeruid", ts="invokeruid", pretty="InvokerUid", type="Uid" }, { map="lastnickname", ts="lastnickname", pretty="LastNickname", type="str" }, { map="last_pos", ts="last_pos", pretty="LastOffset", type="u64" }, # integer, size guessed { map="lines", ts="lines", pretty="Lines", type="u32" }, # integer, size guessed { map="log", ts="l", pretty="Log", type="str" }, # one argument per line { map="logmsg", ts="logmsg", pretty="LogMessage", type="str" }, { map="loglevel", ts="loglevel", pretty="LogLevel", type="LogLevel" }, { map="lt", ts="lt", pretty="LicenseType", type="LicenseType" }, { map="msg", ts="msg", pretty="Message", type="str" }, { map="msgid", ts="msgid", pretty="MessageId", type="u32" }, # integer, size guessed { map="message", ts="message", pretty="Message", type="str" }, { map="mytsid", ts="mytsid", pretty="MyTsId", type="str" }, { map="n", ts="n", pretty="PermissionNegated", type="bool" }, { map="n_member_addp", ts="n_member_addp", pretty="NeededMemberAddPower", type="i32" }, { map="n_member_removep", ts="n_member_removep", pretty="NeededMemberRemovePower", type="i32" }, { map="n_modifyp", ts="n_modifyp", pretty="NeededModifyPower", type="i32" }, { map="name", ts="name", pretty="Name", type="str" }, { map="namemode", ts="namemode", pretty="NamingMode", type="GroupNamingMode" }, { map="newname", ts="newname", pretty="NewName", type="str" }, { map="nickname", ts="nickname", pretty="Nickname", type="str" }, { map="oldname", ts="oldname", pretty="OldName", type="str" }, { map="omega", ts="omega", pretty="Omega", type="str" }, { map="order", ts="order", pretty="Order", type="ChannelId" }, { map="overwrite", ts="overwrite", pretty="Overwrite", type="bool" }, { map="p", ts="p", pretty="PermissionId", type="PermissionId" }, { map="path", ts="path", pretty="Path", type="str" }, { map="pattern", ts="pattern", pretty="Pattern", type="str" }, # sometimes Regex/SQL Wilcards { map="permid", ts="permid", pretty="PermissionId", type="PermissionId" }, { map="permnegated", ts="permnegated", pretty="PermissionNegated", type="bool" }, { map="permsid", ts="permsid", pretty="PermissionNameId", type="str" }, { map="permskip", ts="permskip", pretty="PermissionSkip", type="bool" }, { map="permvalue", ts="permvalue", pretty="PermissionValue", type="i32" }, { map="permname", ts="permname", pretty="PermissionName", type="str" }, { map="permdesc", ts="permdesc", pretty="PermissionDescription", type="str" }, { map="pid", ts="pid", pretty="ParentChannelId", type="ChannelId" }, { map="port", ts="port", pretty="Port", type="u16" }, { map="proto", ts="proto", pretty="Protocol", type="u8" }, { map="pv", ts="pv", pretty="ProtocolVersion", type="u16" }, { map="pw", ts="pw", pretty="Password", type="str" }, # TODO maybe find better name when know what this is { map="pw_clear", ts="pw_clear", pretty="PasswordClear", type="str" }, { map="reasonid", ts="reasonid", pretty="Reason", type="Reason" }, { map="reason", ts="reason", pretty="Reason", type="str" }, { map="reasonmsg", ts="reasonmsg", pretty="ReasonMessage", type="str" }, { map="resume", ts="resume", pretty="Resume", type="bool" }, { map="reverse", ts="reverse", pretty="Reverse", type="bool" }, { map="runtime", ts="runtime", pretty="Runtime", type="DurationSeconds" }, { map="s", ts="s", pretty="PermissionSkip", type="bool" }, { map="savedb", ts="savedb", pretty="IsPermanent", type="bool" }, { map="scgid", ts="scgid", pretty="SourceChannelGroupId", type="ChannelGroupId" }, { map="seconds_empty", ts="seconds_empty", pretty="DurationEmpty", type="DurationSeconds" }, { map="seekpos", ts="seekpos", pretty="SeekPosition", type="u64" }, # ?? type { map="sender", ts="sender", pretty="Sender", type="u64" }, { map="serverftfid", ts="serverftfid", pretty="ServerFiletransferId", type="u16" }, { map="sgid", ts="sgid", pretty="ServerGroupId", type="ServerGroupId" }, { map="sgtype", ts="sgtype", pretty="ServerGroupType", type="u32" }, # integer, size guessed { map="sid", ts="sid", pretty="ServerId", type="u32" }, # integer, size guessed, maybe own type ServerId ? { map="size", ts="size", pretty="Size", type="u64" }, { map="sizedone", ts="sizedone", pretty="SizeDone", type="i64" }, { map="sortid", ts="sortid", pretty="SortId", type="i32" }, { map="ssgid", ts="ssgid", pretty="SourceServerGroupId", type="ServerGroupId" }, { map="subject", ts="subject", pretty="Subject", type="str" }, { map="subsystem", ts="subsystem", pretty="Subsystem", type="str" }, # {'voice'|'query'|'filetransfer'} { map="status@err", ts="status", pretty="Status", type="Ts3ErrorCode" }, { map="status@ft", ts="status", pretty="Status", type="i32" }, { map="start@list", ts="start", pretty="Offset", type="u32" }, # integer, size guessed { map="start@tmppw", ts="start", pretty="Start", type="DateTime" }, { map="t", ts="t", pretty="PermissionType", type="PermissionType" }, { map="target@msg", ts="target", pretty="TargetClientId", type="ClientId" }, { map="target@plugin", ts="target", pretty="TargetClientId", type="ClientId" }, { map="targetmode@msg", ts="targetmode", pretty="Target", type="TextMessageTargetMode" }, { map="targetmode@plugin", ts="targetmode", pretty="Target", type="PluginTargetMode" }, { map="tcgid", ts="tcgid", pretty="TargetChannelGroupId", type="ChannelGroupId" }, { map="tcid", ts="tcid", pretty="TargetChannelId", type="ChannelId" }, { map="tcpw", ts="tcpw", pretty="TargetChannelPassword", type="str" }, { map="tcldbid", ts="tcldbid", pretty="TargetClientDbId", type="ClientDbId" }, { map="time", ts="time", pretty="Time", type="DurationSeconds" }, { map="timestamp", ts="timestamp", pretty="Timestamp", type="DateTime" }, { map="tname", ts="tname", pretty="TargetName", type="str" }, { map="token", ts="token", pretty="Token", type="str" }, { map="token_created", ts="token_created", pretty="TokenCreateTime", type="DateTime" }, { map="token_description", ts="token_description", pretty="TokenDescription", type="str" }, { map="tokendescription", ts="tokendescription", pretty="TokenDescription", type="str" }, { map="token_id1", ts="token_id1", pretty="TokenId1", type="u64" }, # {ServerGroup|ChannelGroup} { map="tokenid1", ts="tokenid1", pretty="TokenId1", type="u64" }, # {ServerGroup|ChannelGroup} { map="token_id2", ts="token_id2", pretty="TokenId2", type="ChannelId" }, # ChannelId { map="tokenid2", ts="tokenid2", pretty="TokenId2", type="ChannelId" }, # ChannelId { map="token_type", ts="token_type", pretty="TokenType", type="TokenType" }, { map="tokentype", ts="tokentype", pretty="TokenType", type="TokenType" }, { map="token1", ts="token1", pretty="Token1", type="str" }, { map="token2", ts="token2", pretty="Token2", type="str" }, { map="tokencustomset", ts="tokencustomset", pretty="TokenCustomSet", type="str" }, { map="total_clients", ts="total_clients", pretty="ClientsTotal", type="i32" }, { map="total_clients_family", ts="total_clients_family", pretty="FamilyClientsTotal", type="i32" }, { map="tsgid", ts="tsgid", pretty="TargetServerGroupId", type="ServerGroupId" }, { map="type@ft", ts="type", pretty="IsFile", type="bool" }, { map="type@group", ts="type", pretty="GroupType", type="GroupType" }, { map="uid", ts="uid", pretty="Uid", type="Uid" }, { map="v", ts="v", pretty="PermissionValue", type="i32" }, # integer, size guessed { map="value", ts="value", pretty="Value", type="str" }, { map="virtualserver_antiflood_points_tick_reduce", ts="virtualserver_antiflood_points_tick_reduce", pretty="AntifloodPointsTickReduce", type="u32" }, { map="virtualserver_antiflood_points_needed_command_block", ts="virtualserver_antiflood_points_needed_command_block", pretty="AntifloodPointsToCommandBlock", type="u32" }, { map="virtualserver_antiflood_points_needed_ip_block", ts="virtualserver_antiflood_points_needed_ip_block", pretty="AntifloodPointsToIpBlock", type="u32" }, { map="virtualserver_antiflood_points_needed_plugin_block", ts="virtualserver_antiflood_points_needed_plugin_block", pretty="AntifloodPointsToPluginBlock", type="u32" }, { map="virtualserver_ask_for_privilegekey", ts="virtualserver_ask_for_privilegekey", pretty="AskForPrivilegekey", type="bool" }, { map="virtualserver_autostart", ts="virtualserver_autostart", pretty="Autostart", type="bool" }, { map="virtualserver_capability_extensions", ts="virtualserver_capability_extensions", pretty="CapabilityExtensions", type="str" }, # TODO mod="array"? { map="virtualserver_channel_temp_delete_delay_default", ts="virtualserver_channel_temp_delete_delay_default", pretty="TempChannelDefaultDeleteDelay", type="DurationSeconds" }, { map="virtualserver_channelsonline", ts="virtualserver_channelsonline", pretty="ChannelCount", type="u64" }, { map="virtualserver_client_connections", ts="virtualserver_client_connections", pretty="ConnectionCountTotal", type="u64" }, { map="virtualserver_clientsonline", ts="virtualserver_clientsonline", pretty="ClientCount", type="u16" }, { map="virtualserver_codec_encryption_mode", ts="virtualserver_codec_encryption_mode", pretty="CodecEncryptionMode", type="CodecEncryptionMode" }, { map="virtualserver_complain_autoban_count", ts="virtualserver_complain_autoban_count", pretty="ComplainAutobanCount", type="u32" }, { map="virtualserver_complain_autoban_time", ts="virtualserver_complain_autoban_time", pretty="ComplainAutobanTime", type="DurationSeconds" }, { map="virtualserver_complain_remove_time", ts="virtualserver_complain_remove_time", pretty="ComplainRemoveTime", type="DurationSeconds" }, { map="virtualserver_created", ts="virtualserver_created", pretty="Created", type="DateTime" }, { map="virtualserver_default_channel_group", ts="virtualserver_default_channel_group", pretty="DefaultChannelGroup", type="ChannelGroupId" }, { map="virtualserver_default_channel_admin_group", ts="virtualserver_default_channel_admin_group", pretty="DefaultChannelAdminGroup", type="ChannelGroupId" }, { map="virtualserver_default_server_group", ts="virtualserver_default_server_group", pretty="DefaultServerGroup", type="ServerGroupId" }, { map="virtualserver_download_quota", ts="virtualserver_download_quota", pretty="DownloadQuota", type="u64" }, { map="virtualserver_flag_password", ts="virtualserver_flag_password", pretty="HasPassword", type="bool" }, { map="virtualserver_hostbanner_gfx_interval", ts="virtualserver_hostbanner_gfx_interval", pretty="HostbannerGfxInterval", type="DurationSeconds" }, { map="virtualserver_hostbanner_gfx_url", ts="virtualserver_hostbanner_gfx_url", pretty="HostbannerGfxUrl", type="str" }, { map="virtualserver_hostbanner_mode", ts="virtualserver_hostbanner_mode", pretty="HostbannerMode", type="HostBannerMode" }, { map="virtualserver_hostbanner_url", ts="virtualserver_hostbanner_url", pretty="HostbannerUrl", type="str" }, { map="virtualserver_hostbutton_gfx_url", ts="virtualserver_hostbutton_gfx_url", pretty="HostbuttonGfxUrl", type="str" }, { map="virtualserver_hostbutton_tooltip", ts="virtualserver_hostbutton_tooltip", pretty="HostbuttonTooltip", type="str" }, { map="virtualserver_hostbutton_url", ts="virtualserver_hostbutton_url", pretty="HostbuttonUrl", type="str" }, { map="virtualserver_hostmessage", ts="virtualserver_hostmessage", pretty="Hostmessage", type="str" }, { map="virtualserver_hostmessage_mode", ts="virtualserver_hostmessage_mode", pretty="HostmessageMode", type="HostMessageMode" }, { map="virtualserver_icon_id", ts="virtualserver_icon_id", pretty="Icon", type="IconId" }, { map="virtualserver_id", ts="virtualserver_id", pretty="VirtualServerId", type="u64" }, { map="virtualserver_ip", ts="virtualserver_ip", pretty="Ips", type="IpAddr", mod="array" }, { map="virtualserver_log_client", ts="virtualserver_log_client", pretty="LogClient", type="bool" }, { map="virtualserver_log_query", ts="virtualserver_log_query", pretty="LogQuery", type="bool" }, { map="virtualserver_log_channel", ts="virtualserver_log_channel", pretty="LogChannel", type="bool" }, { map="virtualserver_log_permissions", ts="virtualserver_log_permissions", pretty="LogPermissions", type="bool" }, { map="virtualserver_log_server", ts="virtualserver_log_server", pretty="LogServer", type="bool" }, { map="virtualserver_log_filetransfer", ts="virtualserver_log_filetransfer", pretty="LogFiletransfer", type="bool" }, { map="virtualserver_machine_id", ts="virtualserver_machine_id", pretty="MachineId", type="str" }, { map="virtualserver_max_download_total_bandwidth", ts="virtualserver_max_download_total_bandwidth", pretty="MaxDownloadBandwidthTotal", type="u64" }, { map="virtualserver_max_upload_total_bandwidth", ts="virtualserver_max_upload_total_bandwidth", pretty="MaxUploadBandwidthTotal", type="u64" }, { map="virtualserver_maxclients", ts="virtualserver_maxclients", pretty="MaxClients", type="u16" }, { map="virtualserver_min_android_version", ts="virtualserver_min_android_version", pretty="MinAndroidVersion", type="DateTime" }, { map="virtualserver_min_client_version", ts="virtualserver_min_client_version", pretty="MinClientVersion", type="DateTime" }, { map="virtualserver_min_clients_in_channel_before_forced_silence", ts="virtualserver_min_clients_in_channel_before_forced_silence", pretty="MinClientsInChannelBeforeForcedSilence", type="u16" }, { map="virtualserver_min_ios_version", ts="virtualserver_min_ios_version", pretty="MinIosVersion", type="DateTime" }, { map="virtualserver_month_bytes_downloaded", ts="virtualserver_month_bytes_downloaded", pretty="BytesDownloadedMonth", type="u64" }, { map="virtualserver_month_bytes_uploaded", ts="virtualserver_month_bytes_uploaded", pretty="BytesUploadedMonth", type="u64" }, { map="virtualserver_name", ts="virtualserver_name", pretty="Name", type="str" }, { map="virtualserver_name_phonetic", ts="virtualserver_name_phonetic", pretty="PhoneticName", type="str" }, { map="virtualserver_needed_identity_security_level", ts="virtualserver_needed_identity_security_level", pretty="NeededIdentitySecurityLevel", type="u8" }, { map="virtualserver_nickname", ts="virtualserver_nickname", pretty="Nickname", type="str" }, # `:`-separated array { map="virtualserver_password", ts="virtualserver_password", pretty="Password", type="str" }, { map="virtualserver_platform", ts="virtualserver_platform", pretty="Platform", type="str" }, { map="virtualserver_port", ts="virtualserver_port", pretty="Port", type="u16" }, { map="virtualserver_priority_speaker_dimm_modificator", ts="virtualserver_priority_speaker_dimm_modificator", pretty="PrioritySpeakerDimmModificator", type="f32" }, { map="virtualserver_query_client_connections", ts="virtualserver_query_client_connections", pretty="QueryCountTotal", type="u64" }, { map="virtualserver_queryclientsonline", ts="virtualserver_queryclientsonline", pretty="QueryCount", type="u32" }, { map="virtualserver_reserved_slots", ts="virtualserver_reserved_slots", pretty="ReservedSlots", type="u16" }, { map="virtualserver_status", ts="virtualserver_status", pretty="VirtualServerStatus", type="str" }, { map="virtualserver_total_bytes_downloaded", ts="virtualserver_total_bytes_downloaded", pretty="BytesDownloadedTotal", type="u64" }, { map="virtualserver_total_bytes_uploaded", ts="virtualserver_total_bytes_uploaded", pretty="BytesUploadedTotal", type="u64" }, { map="virtualserver_total_packetloss_speech", ts="virtualserver_total_packetloss_speech", pretty="TotalPacketlossSpeech", type="f32" }, { map="virtualserver_total_packetloss_keepalive", ts="virtualserver_total_packetloss_keepalive", pretty="TotalPacketlossKeepalive", type="f32" }, { map="virtualserver_total_packetloss_control", ts="virtualserver_total_packetloss_control", pretty="TotalPacketlossControl", type="f32" }, { map="virtualserver_total_packetloss_total", ts="virtualserver_total_packetloss_total", pretty="TotalPacketloss", type="f32" }, { map="virtualserver_total_ping", ts="virtualserver_total_ping", pretty="TotalPing", type="DurationMillisecondsFloat" }, { map="virtualserver_unique_identifier", ts="virtualserver_unique_identifier", pretty="VirtualServerUid", type="Uid" }, { map="virtualserver_upload_quota", ts="virtualserver_upload_quota", pretty="UploadQuota", type="u64" }, { map="virtualserver_uptime", ts="virtualserver_uptime", pretty="Uptime", type="DurationSeconds" }, { map="virtualserver_version", ts="virtualserver_version", pretty="Version", type="str" }, { map="virtualserver_weblist_enabled", ts="virtualserver_weblist_enabled", pretty="WeblistEnabled", type="bool" }, { map="virtualserver_welcomemessage", ts="virtualserver_welcomemessage", pretty="WelcomeMessage", type="str" }, # Error stuff { map="error_id", ts="id", pretty="Id", type="Ts3ErrorCode" }, { map="failed_permid", ts="failed_permid", pretty="MissingPermissionId", type="PermissionId" }, { map="return_code", ts="return_code", pretty="ReturnCode", type="str" }, { map="extra_msg", ts="extra_msg", pretty="ExtraMessage", type="str" }, # 3.1 { map="l", ts="l", pretty="License", type="str" }, { map="tvd", ts="tvd", pretty="Tvd", type="str" }, { map="proof", ts="proof", pretty="Proof", type="str" }, { map="ot", ts="ot", pretty="Ot", type="bool" }, # TeaSpeak { map="virtualserver_country", ts="virtualserver_country_code", pretty="CountryCode", type="str" }, { map="virtualserver_default_music_group", ts="virtualserver_default_music_group", pretty="DefaultMusicGroup", type="ServerGroupId" }, { map="root", ts="root", pretty="RootKey", type="str" }, ] # The "msg_group: array specifies all messages which can be sent beween client # and server. # They are categorized into message groups whereby each group has a list of # default modifiers which are applied on each message in the group. # [Message structure]: # - "name": The high-level name of the messsage. # - "notify": The event name as teamspeak uses it (can be omitted when # | response=true; this means that it can't be received without request). # - "attributes": The "map"-name from all fields which are a parameter of this # | command. The map name can be suffixed with a '?' to make it optional. # | All non-optional fields must be set when receiving this message, # | otherwise the message can/should be considered as invalid. # [Message modifiers]: # - "s2c": This message can be received as client (read: "server to client") # - "c2s": This message can be received as server (read: "client to server") # - "response": # | - true: This message can appear without the event name as an answer to # | | a request command (see "notify" before). # | - false: This message will always be sent with the notify event name. # - "low": The "lowcommand" packet must be used for this command. (Ignore for # | query). # - "np": The "newprotocol" flag must be set for this command. (Ignore for # | query). # Client: "cid", "client_idle_time", "client_unique_identifier", "client_nickname", "client_version", "client_platform", "client_input_muted", "client_output_muted", "client_outputonly_muted", "client_input_hardware", "client_output_hardware", "client_default_channel", "client_meta_data", "client_is_recording", "client_version_sign", "client_security_hash", "client_login_name", "client_database_id", "client_channel_group_id", "client_servergroups", "client_created", "client_lastconnected", "client_totalconnections", "client_away", "client_away_message", "client_type", "client_flag_avatar", "client_talk_power", "client_talk_request", "client_talk_request_msg", "client_description", "client_is_talker", "client_month_bytes_uploaded", "client_month_bytes_downloaded", "client_total_bytes_uploaded", "client_total_bytes_downloaded", "client_is_priority_speaker", "client_unread_messages", "client_nickname_phonetic", "client_needed_serverquery_view_power", "client_default_token", "client_icon_id", "client_is_channel_commander", "client_country", "client_channel_group_inherited_channel_id", "client_badges", "client_myteamspeak_id", "client_integrations", "client_base64HashClientUID", "connection_filetransfer_bandwidth_sent", "connection_filetransfer_bandwidth_received", "connection_packets_sent_total", "connection_bytes_sent_total", "connection_packets_received_total", "connection_bytes_received_total", "connection_bandwidth_sent_last_second_total", "connection_bandwidth_sent_last_minute_total", "connection_bandwidth_received_last_second_total", "connection_bandwidth_received_last_minute_total", "connection_connected_time", "connection_client_ip" # Channel: "channel_order?", "channel_name?", "channel_topic?", "channel_flag_default?", "channel_flag_password?", "channel_flag_permanent?", "channel_flag_semi_permanent?", "channel_codec?", "channel_codec_quality?", "channel_needed_talk_power?", "channel_icon_id?", "channel_maxclients?", "channel_maxfamilyclients?", "channel_codec_latency_factor?", "channel_codec_is_unencrypted?", "channel_delete_delay?", "channel_flag_maxclients_unlimited?", "channel_flag_maxfamilyclients_unlimited?", "channel_flag_maxfamilyclients_inherited?", "channel_name_phonetic?", "cpid?" # Server to Client Notifications [[msg_group]] default = { s2c=true, c2s=false, response=false, low=false, np=false } msg = [ { name="ChannelChanged", notify="notifychannelchanged", attributes=["cid"] }, { name="ChannelDescriptionChanged", notify="notifychanneldescriptionchanged", attributes=["cid"] }, # TODO check with ChannelData { name="ChannelList", notify="channellist", attributes=["cid", "cpid", "channel_name", "channel_topic", "channel_codec", "channel_codec_quality", "channel_maxclients", "channel_maxfamilyclients", "channel_order", "channel_flag_permanent", "channel_flag_semi_permanent", "channel_flag_default", "channel_flag_password", "channel_codec_latency_factor", "channel_codec_is_unencrypted", "channel_delete_delay", "channel_flag_maxclients_unlimited", "channel_flag_maxfamilyclients_unlimited", "channel_flag_maxfamilyclients_inherited", "channel_needed_talk_power", "channel_forced_silence", "channel_name_phonetic", "channel_icon_id", "channel_flag_private?", "channel_unique_identifier?", "channel_banner_gfx_url?", "channel_banner_mode?"] }, { name="ChannelListFinished", notify="channellistfinished", attributes=[] }, { name="ChannelMoved", notify="notifychannelmoved", attributes=["order", "cid", "invokerid", "invokername", "invokeruid?", "reasonid", "cpid"] }, { name="ChannelPasswordChanged", notify="notifychannelpasswordchanged", attributes=["cid"] }, { name="ChannelPermissionHints", notify="notifychannelpermhints", attributes=["cid", "flags@channel_ph"] }, { name="ChannelSubscribed", notify="notifychannelsubscribed", attributes=["cid", "es?"] }, { name="ChannelUnsubscribed", notify="notifychannelunsubscribed", attributes=["cid"] }, { name="ClientChannelGroupChanged", notify="notifyclientchannelgroupchanged", attributes=["invokerid", "invokername", "invokeruid?", "cgid", "cgi", "cid", "clid"] }, { name="ClientChatClosed", notify="notifyclientchatclosed", attributes=["clid", "cluid"] }, { name="ClientChatComposing", notify="notifyclientchatcomposing", attributes=["clid", "cluid"] }, { name="ClientConnectionInfo", notify="notifyconnectioninfo", attributes=["clid", "connection_ping?", "connection_ping_deviation?", "connection_connected_time?", "connection_client_ip?", "connection_client_port?", "connection_packets_sent_speech?", "connection_packets_sent_keepalive?", "connection_packets_sent_control?", "connection_bytes_sent_speech?", "connection_bytes_sent_keepalive?", "connection_bytes_sent_control?", "connection_packets_received_speech?", "connection_packets_received_keepalive?", "connection_packets_received_control?", "connection_bytes_received_speech?", "connection_bytes_received_keepalive?", "connection_bytes_received_control?", "connection_server2client_packetloss_speech?", "connection_server2client_packetloss_keepalive?", "connection_server2client_packetloss_control?", "connection_server2client_packetloss_total?", "connection_client2server_packetloss_speech", "connection_client2server_packetloss_keepalive", "connection_client2server_packetloss_control", "connection_client2server_packetloss_total", "connection_bandwidth_sent_last_second_speech?", "connection_bandwidth_sent_last_second_keepalive?", "connection_bandwidth_sent_last_second_control?", "connection_bandwidth_sent_last_minute_speech?", "connection_bandwidth_sent_last_minute_keepalive?", "connection_bandwidth_sent_last_minute_control?", "connection_bandwidth_received_last_second_speech?", "connection_bandwidth_received_last_second_keepalive?", "connection_bandwidth_received_last_second_control?", "connection_bandwidth_received_last_minute_speech?", "connection_bandwidth_received_last_minute_keepalive?", "connection_bandwidth_received_last_minute_control?", "connection_filetransfer_bandwidth_sent?", "connection_filetransfer_bandwidth_received?", "connection_idle_time"] }, { name="ClientConnectionInfoUpdateRequest", notify="notifyconnectioninforequest", attributes=[] }, { name="ClientEnterView", notify="notifycliententerview", attributes=["reasonid", "ctid", "invokerid?", "invokername?", "invokeruid?", "clid", "client_database_id", "client_nickname", "client_type", "cfid", "client_unique_identifier", "client_flag_avatar", "client_description", "client_icon_id", "client_input_muted", "client_output_muted", "client_outputonly_muted", "client_input_hardware", "client_output_hardware", "client_meta_data", "client_is_recording", "client_channel_group_id", "client_channel_group_inherited_channel_id", "client_servergroups", "client_away", "client_away_message", "client_talk_power", "client_talk_request", "client_talk_request_msg", "client_is_talker", "client_is_priority_speaker", "client_unread_messages", "client_nickname_phonetic", "client_needed_serverquery_view_power", "client_is_channel_commander", "client_country", "client_badges", "client_myteamspeak_id", "client_integrations", "client_myteamspeak_avatar?", "client_signed_badges?", "client_estimated_location?", "client_totalconnections?"] }, { name="ClientLeftView", notify="notifyclientleftview", attributes=["reasonmsg?", "bantime?", "reasonid?", "ctid", "invokerid?", "invokername?", "invokeruid?", "clid", "cfid"] }, { name="ClientMoved", notify="notifyclientmoved", attributes=["clid", "reasonid", "cfid?", "ctid", "invokerid?", "invokername?", "invokeruid?", "reasonmsg?"] }, { name="ClientNeededPermissions", notify="notifyclientneededpermissions", attributes=["permid", "permvalue?"] }, { name="ClientPermissionHints", notify="notifyclientpermhints", attributes=["clid", "flags@client_ph"] }, { name="ClientServerGroupAdded", notify="notifyservergroupclientadded", attributes=["name", "sgid", "invokerid", "invokername", "invokeruid?", "clid", "cluid"] }, { name="ClientServerGroupRemoved", notify="notifyservergroupclientdeleted", attributes=["name", "sgid", "invokerid", "invokername", "invokeruid?", "clid", "cluid"] }, { name="ClientUpdated", notify="notifyclientupdated", attributes=["clid", "invokerid?", "invokername?", "invokeruid?", "client_nickname?", "client_unread_messages?", "client_version?", "client_platform?", "client_login_name?", "client_created?", "client_lastconnected?", "client_totalconnections?", "client_month_bytes_uploaded?", "client_month_bytes_downloaded?", "client_total_bytes_uploaded?", "client_total_bytes_downloaded?", "client_input_muted?", "client_input_hardware?", "client_output_muted?", "client_output_hardware?", "client_description?", "client_is_priority_speaker?", "client_is_channel_commander?", "client_flag_avatar?", "client_signed_badges?", "client_talk_request?", "client_talk_request_msg?", "client_is_talker?", "client_nickname_phonetic?", "client_is_recording?", "client_servergroups?", "client_myteamspeak_id?", "client_badges?", "client_talk_power?", "client_icon_id?", "client_away?", "client_away_message?", "client_channel_group_inherited_channel_id?", "client_channel_group_id?", "client_needed_serverquery_view_power?"] }, { name="CommandError", notify="error", attributes=["error_id", "msg", "failed_permid?", "return_code?", "extra_msg?"] }, { name="FileListFinished", notify="notifyfilelistfinished", attributes=["cid", "path"] }, { name="FiletransferStatus", notify="notifystatusfiletransfer", attributes=["clientftfid", "status@err", "msg", "size"] }, { name="InitIvExpand", notify="initivexpand", attributes=["alpha", "beta", "omega"] }, { name="InitIvExpand2", notify="initivexpand2", attributes=["l", "beta", "omega", "ot?", "proof", "tvd", "root?"] }, { name="InitServer", notify="initserver", attributes=["virtualserver_name", "virtualserver_welcomemessage", "virtualserver_platform", "virtualserver_version", "virtualserver_maxclients", "virtualserver_created", "virtualserver_codec_encryption_mode", "virtualserver_hostmessage", "virtualserver_hostmessage_mode", "virtualserver_default_server_group", "virtualserver_default_channel_group", "virtualserver_id", "virtualserver_ip?", "virtualserver_ask_for_privilegekey", "lt?", "virtualserver_hostbanner_url", "virtualserver_hostbanner_gfx_url", "virtualserver_hostbanner_gfx_interval", "virtualserver_priority_speaker_dimm_modificator", "virtualserver_hostbutton_tooltip", "virtualserver_hostbutton_url", "virtualserver_hostbutton_gfx_url", "virtualserver_name_phonetic", "virtualserver_icon_id", "virtualserver_hostbanner_mode", "virtualserver_channel_temp_delete_delay_default", "virtualserver_nickname?", "virtualserver_unique_identifier?", "virtualserver_default_music_group?", "virtualserver_default_channel_admin_group?", "virtualserver_weblist_enabled?", "virtualserver_country?", "virtualserver_capability_extensions?", "client_nickname@initserver?", "client_version@initserver?", "client_platform@initserver?", "client_input_muted?", "client_output_muted?", "client_outputonly_muted?", "client_input_hardware?", "client_output_hardware?", "client_default_channel?", "client_default_channel_password?", "client_server_password?", "client_meta_data?", "client_version_sign@initserver?", "client_security_hash?", "client_key_offset?", "client_away?", "client_away_message?", "client_nickname_phonetic@initserver?", "client_default_token?", "client_badges?", "client_myteamspeak_id?", "client_integrations?", "client_active_integrations_info?", "client_myteamspeak_avatar?", "client_signed_badges?", "acn", "aclid", "pv", "client_talk_power", "client_needed_serverquery_view_power"] }, { name="PluginCommand", notify="notifyplugincmd", attributes=["name", "data", "invokerid?", "invokername?", "invokeruid?"] }, { name="ServerEdited", notify="notifyserveredited", attributes=["invokerid", "invokername", "invokeruid?", "reasonid", "virtualserver_name?", "virtualserver_nickname?", "virtualserver_codec_encryption_mode?", "virtualserver_default_server_group?", "virtualserver_default_channel_group?", "virtualserver_hostbanner_url?", "virtualserver_hostbanner_gfx_url?", "virtualserver_hostbanner_gfx_interval?", "virtualserver_priority_speaker_dimm_modificator?", "virtualserver_hostbutton_tooltip?", "virtualserver_hostbutton_url?", "virtualserver_hostbutton_gfx_url?", "virtualserver_name_phonetic?", "virtualserver_icon_id?", "virtualserver_hostbanner_mode?", "virtualserver_channel_temp_delete_delay_default?" ] }, { name="ServerTempPasswordList", notify="notifyservertemppasswordlist", attributes=["nickname", "uid", "desc", "pw_clear", "start@tmppw", "end", "tcid", "tcpw"] }, { name="ServerUpdated", notify="notifyserverupdated", attributes=["virtualserver_welcomemessage", "virtualserver_maxclients", "virtualserver_clientsonline", "virtualserver_channelsonline", "virtualserver_uptime", "virtualserver_hostmessage", "virtualserver_hostmessage_mode", "virtualserver_flag_password", "virtualserver_default_channel_admin_group", "virtualserver_max_download_total_bandwidth", "virtualserver_max_upload_total_bandwidth", "virtualserver_complain_autoban_count", "virtualserver_complain_autoban_time", "virtualserver_complain_remove_time", "virtualserver_min_clients_in_channel_before_forced_silence", "virtualserver_antiflood_points_tick_reduce", "virtualserver_antiflood_points_needed_command_block", "virtualserver_antiflood_points_needed_ip_block", "virtualserver_client_connections", "virtualserver_query_client_connections", "virtualserver_queryclientsonline", "virtualserver_download_quota", "virtualserver_upload_quota", "virtualserver_month_bytes_downloaded", "virtualserver_month_bytes_uploaded", "virtualserver_total_bytes_downloaded", "virtualserver_total_bytes_uploaded", "virtualserver_port", "virtualserver_autostart", "virtualserver_machine_id", "virtualserver_needed_identity_security_level", "virtualserver_log_client", "virtualserver_log_query", "virtualserver_log_channel", "virtualserver_log_permissions", "virtualserver_log_server", "virtualserver_log_filetransfer", "virtualserver_min_client_version", "virtualserver_reserved_slots", "virtualserver_total_packetloss_speech", "virtualserver_total_packetloss_keepalive", "virtualserver_total_packetloss_control", "virtualserver_total_packetloss_total", "virtualserver_total_ping", "virtualserver_weblist_enabled", "virtualserver_min_android_version", "virtualserver_min_ios_version", "virtualserver_antiflood_points_needed_plugin_block"] }, { name="TokenUsed", notify="notifytokenused", attributes=["token", "tokencustomset", "token1", "token2", "clid", "cldbid", "cluid"] }, ] # Server to Client Notifications (Low) [[msg_group]] default = { s2c=true, c2s=false, response=false, low=true, np=false } msg = [ # Response to channelgetdescription { name="ChannelEditedLow", notify="notifychanneledited", attributes=["cid", "reasonid", "channel_description?"] }, { name="ClientPoke", notify="notifyclientpoke", attributes=["invokerid", "invokername", "invokeruid?", "msg"] }, ] # Server to Client Responses [[msg_group]] default = { s2c=true, c2s=false, response=true, low=false, np=false } msg = [ # ChannelCreate { name="ChannelCreateResponse", attributes=["cid"] }, # channelinfo { name="ChannelInfoResponse", attributes=["pid", "channel_name", "channel_topic", "channel_description", "channel_password?", "channel_codec", "channel_codec_quality", "channel_maxclients", "channel_maxfamilyclients", "channel_order", "channel_flag_permanent", "channel_flag_semi_permanent", "channel_flag_default", "channel_flag_password", "channel_codec_latency_factor", "channel_codec_is_unencrypted", "channel_security_salt?", "channel_delete_delay", "channel_unique_identifier?", "channel_flag_maxclients_unlimited", "channel_flag_maxfamilyclients_unlimited", "channel_flag_maxfamilyclients_inherited", "channel_filepath", "channel_needed_talk_power", "channel_forced_silence", "channel_name_phonetic?", "channel_icon_id", "channel_banner_gfx_url?", "channel_banner_mode", "seconds_empty"] }, # channellist { name="ChannelListResponse", attributes=["cid", "pid", "channel_order", "channel_name", "total_clients", "channel_needed_subscribe_power", "channel_topic?", # -topic "channel_flag_default?", # -flags "channel_flag_password?", # -flags "channel_flag_permanent?", # -flags "channel_flag_semi_permanent?", # -flags "channel_codec?", # -voice "channel_codec_quality?", # -voice "channel_needed_talk_power?", # -voice "total_clients_family?", # -limits "channel_maxclients?", # -limits "channel_maxfamilyclients?", # -limits "channel_icon_id?", # -icon "seconds_empty?", # -secondsempty ] }, # channelfind { name="ChannelFind", attributes=["cid", "channel_name"] }, # clientlist { name="ClientList", attributes=["clid", "cid", "client_database_id", "client_nickname", "client_type", "client_unique_identifier?", # -uid "client_away?", # -away "client_away_message?", # -away "client_flag_talking?", # -voice "client_input_muted?", # -voice "client_output_muted?", # -voice "client_input_hardware?", # -voice "client_output_hardware?", # -voice "client_talk_power?", # -voice "client_is_talker?", # -voice "client_is_priority_speaker?", # -voice "client_is_recording?", # -voice "client_is_channel_commander?", # -voice "client_idle_time?", # -times "client_created?", # -times "client_lastconnected?", # -times "client_servergroups?", # -groups "client_channel_group_id?", # -groups "client_channel_group_inherited_channel_id?", # -groups "client_version?", # -info "client_platform?", # -info "client_country?", # -country "connection_client_ip?", # -ip "client_badges?", # - badges ] }, # clientdbinfo { name="ClientDbInfo", attributes=["client_lastip", "clid", "client_unique_identifier", "cid", "client_database_id", "client_nickname", "client_type", "client_flag_avatar", "client_description", "client_icon_id", "client_created", "client_lastconnected", "client_totalconnections", "client_month_bytes_uploaded", "client_month_bytes_downloaded", "client_total_bytes_uploaded", "client_total_bytes_downloaded", "client_base64HashClientUID"] }, # clientinfo { name="ClientInfo", attributes=["client_idle_time", "client_version", "client_version_sign", "client_platform", "client_default_channel", "client_security_hash", "client_login_name", "client_default_token", "connection_filetransfer_bandwidth_sent", "connection_filetransfer_bandwidth_received", "connection_packets_sent_total", "connection_packets_received_total", "connection_bytes_sent_total", "connection_bytes_received_total", "connection_bandwidth_sent_last_second_total", "connection_bandwidth_received_last_second_total", "connection_bandwidth_sent_last_minute_total", "connection_bandwidth_received_last_minute_total", "connection_connected_time", "connection_client_ip", "cid", "client_unique_identifier", "client_database_id", "client_nickname", "client_type", "client_input_muted", "client_output_muted", "client_outputonly_muted", "client_input_hardware", "client_output_hardware", "client_meta_data", "client_is_recording", "client_channel_group_id", "client_channel_group_inherited_channel_id", "client_servergroups", "client_away", "client_away_message", "client_talk_power", "client_talk_request", "client_talk_request_msg", "client_is_talker", "client_is_priority_speaker", "client_unread_messages", "client_nickname_phonetic", "client_needed_serverquery_view_power", "client_is_channel_commander", "client_country", "client_badges", "client_created", "client_lastconnected", "client_totalconnections", "client_month_bytes_uploaded", "client_month_bytes_downloaded", "client_total_bytes_uploaded", "client_total_bytes_downloaded", "client_base64HashClientUID", "client_flag_avatar", "client_description", "client_icon_id", "client_myteamspeak_id?", "client_integrations?"] }, # serverlist { name="ServerListResponse", attributes=["virtualserver_id", "virtualserver_port", "virtualserver_status", "virtualserver_clientsonline?", # not -short "virtualserver_queryclientsonline?", # not -short "virtualserver_maxclients?", # not -short "virtualserver_uptime?", # not -short "virtualserver_autostart?", # not -short "virtualserver_machine_id?", # not -short "virtualserver_name?", # not -short "virtualserver_unique_identifier?", # -uid ] }, # servergroupadd { name="ServerGroupAddResponse", attributes=["sgid"] }, # whoami { name="WhoAmI", attributes=["client_id", "client_channel_id", "client_nickname", "client_database_id", "client_login_name", "client_origin_server_id", "virtualserver_id", "virtualserver_unique_identifier", "virtualserver_port", "virtualserver_status", "client_unique_identifier"] }, ] # Server to Client Hybrid [[msg_group]] default = { s2c=true, c2s=false, response=true, low=false, np=false } msg = [ { name="BanList", notify="notifybanlist", attributes=["banid", "ip", "name", "uid", "mytsid?", "lastnickname", "created", "duration@time", "invokercldbid", "invokername", "invokeruid?", "reason", "enforcements"] }, { name="ChannelClientPermList", notify="notifychannelclientpermlist", attributes=["cid", "cldbid", "permid?", "permsid?", "permvalue", "permnegated", "permskip"] }, { name="ChannelCreated", notify="notifychannelcreated", attributes=["cid", "invokerid", "invokername", "invokeruid?", "channel_order", "channel_name", "channel_topic?", "channel_flag_default?", "channel_flag_password?", "channel_flag_permanent?", "channel_flag_semi_permanent?", "channel_codec?", "channel_codec_quality?", "channel_needed_talk_power?", "channel_icon_id?", "channel_maxclients?", "channel_maxfamilyclients?", "channel_codec_latency_factor?", "channel_codec_is_unencrypted?", "channel_delete_delay?", "channel_flag_maxclients_unlimited?", "channel_flag_maxfamilyclients_unlimited?", "channel_flag_maxfamilyclients_inherited?", "channel_name_phonetic?", "cpid"] }, { name="ChannelDeleted", notify="notifychanneldeleted", attributes=["cid", "invokerid", "invokername", "invokeruid?"] }, # Has no invoker when we requested the description with: channelgetdescription cid=1 { name="ChannelEdited", notify="notifychanneledited", attributes=["cid", "invokerid?", "invokername?", "invokeruid?", "reasonid", "channel_order?", "channel_name?", "channel_topic?", "channel_flag_default?", "channel_flag_password?", "channel_flag_permanent?", "channel_flag_semi_permanent?", "channel_codec?", "channel_codec_quality?", "channel_needed_talk_power?", "channel_icon_id?", "channel_maxclients?", "channel_maxfamilyclients?", "channel_codec_latency_factor?", "channel_codec_is_unencrypted?", "channel_delete_delay?", "channel_flag_maxclients_unlimited?", "channel_flag_maxfamilyclients_unlimited?", "channel_flag_maxfamilyclients_inherited?", "channel_name_phonetic?", "cpid?", "channel_description?"] }, { name="ChannelGroupClientList", notify="notifychannelgroupclientlist", attributes=["cid", "cldbid", "cgid"] }, { name="ChannelGroupList", notify="notifychannelgrouplist", attributes=["cgid", "name", "type@group", "iconid", "savedb", "sortid", "namemode", "n_modifyp", "n_member_addp", "n_member_removep?"] }, { name="ChannelGroupPermList", notify="notifychannelgrouppermlist", attributes=["cgid", "permid?", "permsid?", "permvalue", "permnegated", "permskip"] }, { name="ChannelPermList", notify="notifychannelpermlist", attributes=["cid", "permid", "permvalue", "permnegated", "permskip"] }, { name="ClientDbFind", notify="notifyclientdbfind", attributes=["cldbid", "client_unique_identifier", "client_nickname", "client_lastconnected", "client_totalconnections"] }, { name="ClientDbIdFromUid", notify="notifyclientdbidfromuid", attributes=["cluid", "cldbid"] }, { name="ClientDbList", notify="notifyclientdblist", attributes=["cldbid", "client_unique_identifier", "client_nickname", "client_created", "client_lastconnected", "client_totalconnections", "client_description", "client_lastip"] }, { name="ClientIds", notify="notifyclientids", attributes=["cluid", "clid", "name"] }, { name="ClientNameFromDbId", notify="notifyclientnamefromdbid", attributes=["cluid", "cldbid", "name"] }, { name="ClientNameFromUid", notify="notifyclientnamefromuid", attributes=["cluid", "cldbid", "name"] }, { name="ClientUidFromClid", notify="notifyclientuidfromclid", attributes=["cluid", "clid", "nickname"] }, { name="ClientPermList", notify="notifyclientpermlist", attributes=["cldbid", "permid?", "permsid?", "permvalue", "permnegated", "permskip"] }, { name="ClientSetServerQueryLogin", notify="notifyclientserverqueryloginpassword", attributes=["client_login_password"] }, { name="ComplainList", notify="notifycomplainlist", attributes=["tcldbid", "tname", "fcldbid", "fname", "message", "timestamp"] }, { name="FileDownload", notify="notifystartdownload", attributes=["clientftfid", "serverftfid", "ftkey", "port", "size", "proto", "ip?"] }, { name="FileInfo", notify="notifyfileinfo", attributes=["cid", "path", "name", "size", "datetime"] }, { name="FileList", notify="notifyfilelist", attributes=["cid", "path", "name", "size", "datetime", "type@ft"] }, { name="Filetransfer", notify="notifyfiletransferlist", attributes=["clid", "path", "name", "size", "sizedone", "clientftfid", "serverftfid", "sender", "status@ft", "current_speed", "average_speed", "runtime"] }, { name="FileUpload", notify="notifystartupload", attributes=["clientftfid", "serverftfid", "ftkey", "port", "seekpos", "proto", "ip?"] }, { name="OfflineMessage", notify="notifymessage", attributes=["msgid", "cluid", "subject", "message", "timestamp"] }, { name="OfflineMessageList", notify="notifymessagelist", attributes=["msgid", "cluid", "subject", "timestamp", "flag_read"] }, { name="PermFind", notify="notifypermfind", attributes=["t", "id1", "id2", "p"] }, { name="PermList", notify="notifypermissionlist", attributes=["group_id_end", "permid?", "permname?", "permdesc?"] }, # Note: very weird ordering { name="PermOverview", notify="notifypermoverview", attributes=["cldbid", "cid", "t", "id1", "id2", "p", "v", "n", "s"] }, { name="ServerConnectionInfo", notify="notifyserverconnectioninfo", attributes=["connection_filetransfer_bandwidth_sent", "connection_filetransfer_bandwidth_received", "connection_filetransfer_bytes_sent_total", "connection_filetransfer_bytes_received_total", "connection_packets_sent_total", "connection_bytes_sent_total", "connection_packets_received_total", "connection_bytes_received_total", "connection_bandwidth_sent_last_second_total", "connection_bandwidth_sent_last_minute_total", "connection_bandwidth_received_last_second_total", "connection_bandwidth_received_last_minute_total", "connection_connected_time", "connection_packetloss_total", "connection_ping"] }, { name="ServerGroupClientList", notify="notifyservergroupclientlist", attributes=["sgid", "cldbid", "client_nickname?", "client_unique_identifier?"] }, { name="ServerGroupList", notify="notifyservergrouplist", attributes=["sgid", "name", "type@group", "iconid", "savedb", "sortid", "namemode", "n_modifyp", "n_member_addp", "n_member_removep?"] }, { name="ServerGroupPermList", notify="notifyservergrouppermlist", attributes=["sgid", "permid?", "permsid?", "permvalue", "permnegated", "permskip"] }, { name="ServerGroupsByClientId", notify="notifyservergroupsbyclientid", attributes=["name", "sgid", "cldbid"] }, { name="ServerLog", notify="notifyserverlog", attributes=["last_pos", "file_size", "log"] }, { name="TextMessage", notify="notifytextmessage", attributes=["targetmode@msg", "msg", "target@msg?", "invokerid", "invokername", "invokeruid?", "timestamp?"] }, { name="TokenAdd", notify="notifytokenadd", attributes=["token"] }, { name="TokenList", notify="notifytokenlist", attributes=["token", "token_type", "token_id1", "token_id2", "token_created", "token_description"] }, ] # Client to Server Notifications [[msg_group]] default = { s2c=false, c2s=true, response=false, low=false, np=false } msg = [ { name="ClientInit", notify="clientinit", attributes=["client_nickname", "client_version", "client_platform", "client_input_hardware", "client_output_hardware", "client_input_muted?", "client_output_muted?", "client_away?", "client_away_message?", "client_default_channel", "client_default_channel_password", "client_server_password", "client_meta_data", "client_version_sign", "client_key_offset", "client_nickname_phonetic", "client_default_token", "hwid", "client_badges?", "client_security_hash?", "client_myteamspeak_id?", "client_integrations?", "client_active_integrations_info?", "client_myteamspeak_avatar?", "client_signed_badges?" ] }, { name="ClientInitIv", notify="clientinitiv", attributes=["alpha", "omega", "ip"] }, { name="PluginCommandRequest", notify="plugincmd", attributes=["name", "data", "targetmode@plugin", "target@plugin?"] }, # banadd ip=42\\.42\\.42\\.42 name=test uid=b+P0CqXms5I0C+A66HZ4Sbu\/PNw= time=5 banreason=test # -> void { name="BanAdd", notify="banadd", attributes=["ip?", "name?", "uid?", "time?", "banreason?"] }, # banclient uid=Np\/KHoMinRjzz54VORp6Ks\/3b3c= time=1 banreason=this\sperson # -> void { name="BanClient", notify="banclient", attributes=["clid", "time?", "banreason?"] }, # bandel banid=4 # bandel banid=1 return_code=1:21 return_code=__1:21_1:21 # error id=0 msg=ok return_code=1:21 # -> void { name="BanDel", notify="bandel", attributes=["banid"] }, # bandelall # -> void { name="BanDelAll", notify="bandelall", attributes=[] }, # banlist return_code=1:5 # -> {BanList} notifybanlist banid=3 ip=42\\.42\\.42\\.42 name=test uid=b+P0CqXms5I0C+A66HZ4Sbu\/PNw= lastnickname=AudioBud created=1538835372 duration=5 invokername=Splamy invokercldbid=2 invokeruid=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= reason=test enforcements=0 { name="BanListRequest", notify="banlist", attributes=[] }, # [NOT FULL] { name="BindingList", notify="bindinglist", attributes=["subsystem?"] }, # channeladdperm cid=1 permid=78 permvalue=75 # -> void { name="ChannelAddPerm", notify="channeladdperm", attributes=["cid", "permid?", "permsid?", "permvalue"] }, # channelclientaddperm cid=1 cldbid=2 permid=183 permvalue=1 # -> void { name="ChannelClientAddPerm", notify="channelclientaddperm", attributes=["cid", "cldbid", "permid?", "permsid?", "permvalue"] }, # channelclientdelperm cid=1 cldbid=2 permid=185 # -> void { name="ChannelClientDelPerm", notify="channelclientdelperm", attributes=["cid", "cldbid", "permid?", "permsid?"] }, # channelclientpermlist cid=1 cldbid=2 # -> {ChannelClientPermList} notifychannelclientpermlist cid=1 cldbid=2 permid=183 permvalue=1 permnegated=0 permskip=0 { name="ChannelClientPermListRequest", notify="channelclientpermlist", attributes=["cid", "cldbid"] }, # -permsid # channelcreate cpid=0 channel_name=testcreate channel_codec_quality=6 channel_flag_permanent=1 channel_codec_is_unencrypted=1 channel_flag_maxfamilyclients_unlimited=0 channel_flag_maxfamilyclients_inherited=1 # -> {ChannelCreated} notifychannelcreated cid=2 cpid=0 channel_name=testcreate channel_codec_quality=6 channel_order=1 channel_flag_permanent=1 channel_codec_is_unencrypted=1 channel_flag_maxfamilyclients_unlimited=0 channel_flag_maxfamilyclients_inherited=1 invokerid=3 invokername=Splamy invokeruid=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= { name="ChannelCreate", notify="channelcreate", attributes=["cpid?", "channel_name", "channel_topic?", "channel_description?", "channel_password?", "channel_codec?", "channel_codec_quality?", "channel_maxclients?", "channel_maxfamilyclients?", "channel_order?", "channel_flag_password?", "channel_codec_is_unencrypted?", "channel_delete_delay?", "channel_flag_maxclients_unlimited?", "channel_flag_maxfamilyclients_unlimited?", "channel_flag_maxfamilyclients_inherited?", "channel_name_phonetic?", "channel_flag_permanent?", "channel_flag_semi_permanent?", "channel_flag_default?"] }, # channeldelete cid=2 # -> {ChannelDeleted} notifychanneldeleted invokerid=3 invokername=Splamy invokeruid=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= { name="ChannelDelete", notify="channeldelete", attributes=["cid", "force"] }, # channeldelperm cid=1 permid=78 # -> void { name="ChannelDelPerm", notify="channeldelperm", attributes=[] }, # channelgetdescription cid=1 # -> {ChannelEditedLow} notifychanneledited cid=1 channel_description=blub { name="ChannelDescriptionRequest", notify="channelgetdescription", attributes=["cid"] }, # channeledit cid=2 channel_codec=5 # -> void { name="ChannelEdit", notify="channeledit", attributes=["cid", "channel_order?", "channel_name?", "channel_topic?", "channel_flag_default?", "channel_flag_password?", "channel_password?", "channel_flag_permanent?", "channel_flag_semi_permanent?", "channel_codec?", "channel_codec_quality?", "channel_needed_talk_power?", "channel_icon_id?", "channel_maxclients?", "channel_maxfamilyclients?", "channel_codec_latency_factor?", "channel_codec_is_unencrypted?", "channel_delete_delay?", "channel_flag_maxclients_unlimited?", "channel_flag_maxfamilyclients_unlimited?", "channel_flag_maxfamilyclients_inherited?", "channel_name_phonetic?", "channel_description?"] }, # channelfind pattern=Def # -> {ChannelFind} cid=1 channel_name=Default\sChannel|cid=3 channel_name=Defaukt { name="ChannelFindRequest", notify="channelfind", attributes=["pattern"] }, # channelgroupadd name=TestGroup type=1 # -> {ChannelGroupList} notifychannelgrouplist cgid=1 name=Channel\sAdmin type=0 iconid=100 savedb=1 sortid=0 namemode=0 n_modifyp=75 n_member_addp=50 n_member_removep=50|cgid=2 name=Operator type=0 iconid=200 savedb=1 sortid=0 namemode=0 n_modifyp=75 n_member_addp=30 n_member_removep=30|... { name="ChannelGroupAdd", notify="channelgroupadd", attributes=["name", "type@group?"] }, # channelgroupaddperm cgid=9 permid=146 permvalue=1 # -> void { name="ChannelGroupAddPerm", notify="channelgroupaddperm", attributes=["cgid", "permid?", "permsid?", "permvalue"] }, # channelgroupclientlist cid=1 cgid=9 cldbid=0 # -> {ChannelGroupClientList} notifychannelgroupclientlist cid=1 cldbid=2 cgid=9 { name="ChannelGroupClientListRequest", notify="channelgroupclientlist", attributes=["cid?", "cldbid?", "cgid?"] }, # channelgroupcopy name=TestGroup2\s(Copy) scgid=9 tcgid=0 # -> {ChannelGroupList} notifychannelgrouplist ... { name="ChannelGroupCopy", notify="channelgroupcopy", attributes=["scgid", "tcgid", "name", "type@group"] }, # channelgroupdel cgid=10 force=0 # -> {ChannelGroupList} notifychannelgrouplist ... { name="ChannelGroupDel", notify="channelgroupdel", attributes=["cgid", "force"] }, # channelgroupdelperm cgid=10 permid=146 # -> void { name="ChannelGroupDelPerm", notify="channelgroupdelperm", attributes=["cgid", "permid?", "permsid?"] }, # channelgrouplist # -> {ChannelGroupList} notifychannelgrouplist ... { name="ChannelGroupListRequest", notify="channelgrouplist", attributes=[] }, # channelgrouppermlist cgid=9 # -> {ChannelGroupPermList} notifychannelgrouppermlist cgid=9 permid=164 permvalue=75 permnegated=0 permskip=0|permid=166 permvalue=75 permnegated=0 permskip=0|permid=168 permvalue=75 permnegated=0 permskip=0 { name="ChannelGroupPermListRequest", notify="channelgrouppermlist", attributes=["cgid"] }, # -permsid # channelgrouprename cgid=9 name=TestGroup2 # -> {ChannelGroupList} notifychannelgrouplist ... { name="ChannelGroupRename", notify="channelgrouprename", attributes=["cgid", "name"] }, # channelinfo cid=3 # -> {ChannelInfoResponse} pid=0 channel_name=Defaukt channel_topic channel_description channel_password channel_codec=4 channel_codec_quality=6 channel_maxclients=-1 channel_maxfamilyclients=-1 channel_order=1 channel_flag_permanent=0 channel_flag_semi_permanent=0 channel_flag_default=0 channel_flag_password=0 channel_codec_latency_factor=1 channel_codec_is_unencrypted=1 channel_security_salt channel_delete_delay=0 channel_flag_maxclients_unlimited=1 channel_flag_maxfamilyclients_unlimited=0 channel_flag_maxfamilyclients_inherited=1 channel_filepath=files\\virtualserver_1\\channel_3 channel_needed_talk_power=0 channel_forced_silence=0 channel_name_phonetic channel_icon_id=0 channel_flag_private=0 seconds_empty=-1 { name="ChannelInfoRequest", notify="channelinfo", attributes=["cid"] }, # channellist # -> cid=1 pid=0 channel_order=0 channel_name=Default\sChannel total_clients=0 channel_needed_subscribe_power=0|cid=3 pid=0 channel_order=1 channel_name=Defaukt total_clients=1 channel_needed_subscribe_power=0 { name="ChannelListRequest", notify="channellist", attributes=[] }, # [-topic] [-flags] [-voice] [-limits] [-icon] [-secondsempty] # channelmove cid=3 cpid=1 # -> {ChannelMoved} notifychannelmoved cid=3 cpid=1 order=0 reasonid=1 invokerid=3 invokername=Splamy invokeruid=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= { name="ChannelMove", notify="channelmove", attributes=["cid", "cpid", "order?"] }, # channelpermlist cid=3 # -> {ChannelPermList} notifychannelpermlist cid=3 permid=82 permvalue=75 permnegated=0 permskip=0|permid=132 permvalue=75 permnegated=0 permskip=0 { name="ChannelPermListRequest", notify="channelpermlist", attributes=["cid"] }, # -permsid # channelsubscribe cid=8 # -> {ChannelSubscribed} notifychannelsubscribed cid=8 es=31020 { name="ChannelSubscribe", notify="channelsubscribe", attributes=["cid"] }, # channelsubscribeall # -> {ChannelSubscribed} notifychannelsubscribed cid=5 es=30852|cid=6 es=30852|cid=8 es=30852 { name="ChannelSubscribeAll", notify="channelsubscribeall", attributes=[] }, # channelunsubscribe cid=8 # -> {ChannelUnsubscribed} notifychannelunsubscribed cid=8 { name="ChannelUnsubscribe", notify="channelunsubscribe", attributes=["cid"] }, # channelunsubscribeall # -> {ChannelUnsubscribed} notifychannelunsubscribed cid=5|cid=6|cid=8 { name="ChannelUnsubscribeAll", notify="channelunsubscribeall", attributes=[] }, # clientaddperm cldbid=2 permid=177 permvalue=75 permskip=0 # -> {ClientNeededPermissions} notifyclientneededpermissions permid=177 permvalue=75 { name="ClientAddPerm", notify="clientaddperm", attributes=["cldbid", "permid?", "permsid?", "permvalue", "permskip"] }, # clientchatclosed clid=3 cluid=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= # -> void { name="ClientChatClose", notify="clientchatclosed", attributes=["clid", "cluid"] }, # getconnectioninfo clid=1 # -> notifyconnectioninfo clid=1 connection_client_ip=[::1] connection_client_port=58283 connection_client2server_packetloss_speech=0.0000 connection_client2server_packetloss_keepalive=0.0000 connection_client2server_packetloss_control=0.0000 connection_client2server_packetloss_total=0.0000 connection_idle_time=195951 { name="ClientConnectionInfoRequest", notify="getconnectioninfo", attributes=["clid"] }, # clientdbdelete cldbid=10 # -> void { name="ClientDbDelete", notify="clientdbdelete", attributes=["cldbid"] }, # TODO !!! { name="ClientDbEdit", notify="clientdbedit", attributes=["cldbid"] }, # TODO PROPERTIES ! # clientdbfind pattern=%spl% -details # clientdbfind pattern=%myuid% -uid -details return_code=1:z # -> {ClientDbFind} notifyclientdbfind cldbid=2 client_unique_identifier=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= client_nickname=Splamy client_lastconnected=1539260951 client_totalconnections=20 { name="ClientDbFindRequest", notify="clientdbfind", attributes=["pattern"] }, # -uid, -details || the -details is undocumentd but works in both query/full # clientdbinfo cldbid=2 # -> client_unique_identifier=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= client_nickname=Splamy client_database_id=2 client_created=1537603744 client_lastconnected=1539260951 client_totalconnections=20 client_flag_avatar client_description client_month_bytes_uploaded=0 client_month_bytes_downloaded=131916 client_total_bytes_uploaded=0 client_total_bytes_downloaded=144480 client_base64HashClientUID=lianbeoonoapahbhejofdcohgkllaobnaihipong client_lastip=::1 { name="ClientDbInfoRequest", notify="clientdbinfo", attributes=["cldbid"] }, # clientdblist start=0 duration=10 # -> {ClientDbList} notifyclientdblist cldbid=2 client_unique_identifier=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= client_nickname=Splamy client_created=1537603744 client_lastconnected=1539260951 client_totalconnections=20 client_description client_lastip=::1 | ... { name="ClientDbListRequest", notify="clientdblist", attributes=["start@list?", "duration@list?"] }, # -count # clientdelperm cldbid=2 permid=177 # -> {ClientNeededPermissions} notifyclientneededpermissions permid=177 { name="ClientDelPerm", notify="clientdelperm", attributes=["cldbid", "permid?", "permsid?"] }, # clientedit clid=2 client_description=desc client_is_talker=1 { name="ClientEdit", notify="clientedit", attributes=["clid", "client_description?", "client_is_talker?"] }, # clientfind pattern=Spla # -> clid=1 client_nickname=Splamy { name="ClientFindRequest", notify="clientfind", attributes=["pattern"] }, # clientgetdbidfromuid cluid=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= # -> {ClientDbIdFromUid} notifyclientdbidfromuid cluid=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= cldbid=2 { name="ClientDbIdFromUidRequest", notify="clientgetdbidfromuid", attributes=["cluid"] }, # clientgetids cluid=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= # -> {ClientIds} notifyclientids cluid=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= clid=1 { name="ClientIdsRequest", notify="clientgetids", attributes=["cluid"] }, # clientgetnamefromdbid cldbid=2 # -> {ClientNameFromDbId} notifyclientnamefromdbid cluid=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= cldbid=2 name=Splamy { name="ClientNameFromDbIdRequest", notify="clientgetnamefromdbid", attributes=["cldbid"] }, # clientgetnamefromuid cluid=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= # -> {ClientNameFromUid} notifyclientnamefromuid cluid=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= cldbid=2 name=Splamy { name="ClientNameFromUidRequest", notify="clientgetnamefromuid", attributes=["cluid"] }, # clientgetuidfromclid clid=1 # -> {ClientUidFromClid} notifyclientuidfromclid clid=1 cluid=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= nickname=Splamy { name="ClientUidFromClidRequest", notify="clientgetuidfromclid", attributes=["clid"] }, # clientgetvariables clid=2 # -> {ClientUpdated} notifyclientupdated clid=2 client_version=3.2.3\s[Build:\s1538467030] client_platform=Windows client_login_name client_created=1538835269 client_lastconnected=1539267929 client_totalconnections=3 client_month_bytes_uploaded=0 client_month_bytes_downloaded=0 client_total_bytes_uploaded=0 client_total_bytes_downloaded=0 { name="ClientVariablesRequest", notify="clientgetvariables", attributes=["clid"] }, # clientinfo clid=1 # -> {ClientInfo?} cid=4 client_idle_time=432921 client_unique_identifier=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= client_nickname=Splamy client_version=3.2.3\s[Build:\s1538467030] client_platform=Windows client_input_muted=0 client_output_muted=0 client_outputonly_muted=0 client_input_hardware=0 client_output_hardware=1 client_default_channel=\/3 client_meta_data client_is_recording=0 client_version_sign=dZ1i\/CsCaAh4F7Pi2F\/FfaBpdTmUuNVsAIRnqm86FUR3HhwBRn+xlmbwRF8gObgFMuwFMCLmawncFWplSILKAQ== client_security_hash client_login_name client_database_id=2 client_channel_group_id=5 client_servergroups=6 client_created=1537603744 client_lastconnected=1539260951 client_totalconnections=20 client_away=0 client_away_message client_type=0 client_flag_avatar client_talk_power=75 client_talk_request=0 client_talk_request_msg client_description client_is_talker=0 client_month_bytes_uploaded=0 client_month_bytes_downloaded=131916 client_total_bytes_uploaded=0 client_total_bytes_downloaded=144480 client_is_priority_speaker=0 client_unread_messages=0 client_nickname_phonetic client_needed_serverquery_view_power=75 client_default_token client_icon_id=0 client_is_channel_commander=0 client_country client_channel_group_inherited_channel_id=4 client_badges=overwolf=0 client_myteamspeak_id client_integrations client_base64HashClientUID=lianbeoonoapahbhejofdcohgkllaobnaihipong connection_filetransfer_bandwidth_sent=0 connection_filetransfer_bandwidth_received=0 connection_packets_sent_total=14972 connection_bytes_sent_total=634932 connection_packets_received_total=19657 connection_bytes_received_total=1176471 connection_bandwidth_sent_last_second_total=81 connection_bandwidth_sent_last_minute_total=81 connection_bandwidth_received_last_second_total=83 connection_bandwidth_received_last_minute_total=87 connection_connected_time=7411717 connection_client_ip=[::1] { name="ClientInfoRequest", notify="clientinfo", attributes=["clid"] }, # clientkick reasonid=4 reasonmsg=yo clid=3 # -> {ClientMoved} notifyclientmoved ctid=1 reasonid=4 invokerid=1 invokername=Splamy invokeruid=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= reasonmsg=yo clid=3 { name="ClientKick", notify="clientkick", attributes=["clid", "reasonid", "reasonmsg?"] }, # clientlist # clid=1 cid=4 client_database_id=2 client_nickname=Splamy client_type=0 | ... { name="ClientListRequest", notify="clientlist", attributes=[] }, # [-uid] [-away] [-voice] [-times] [-groups] [-info] [-country] [-ip] [-badges] # clientmove cid=4 cpw clid=2 # -> {ClientMoved} notifyclientmoved ctid=4 reasonid=1 invokerid=1 invokername=Splamy invokeruid=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= clid=3 { name="ClientMove", notify="clientmove", attributes=["clid", "cid", "cpw?"] }, # clientpermlist cldbid=2 # -> {ClientPermList} notifyclientpermlist cldbid=2 permid=177 permvalue=75 permnegated=0 permskip=0 { name="ClientPermListRequest", notify="clientpermlist", attributes=["cldbid"] }, # -permsid # clientpoke clid=3 msg=hi # -> void { name="ClientPokeRequest", notify="clientpoke", attributes=["clid", "msg"] }, # clientsetserverquerylogin cldbid=2 client_login_name=hax client_login_password # -> {ClientSetServerQueryLogin} notifyclientserverqueryloginpassword client_login_password=qm2niw4m { name="ClientSetServerQueryLoginRequest", notify="clientsetserverquerylogin", attributes=["client_login_name", "client_login_password?", "cldbid?"] }, # 'client_login_password' is always ignored, 'cldbid' only exists for full client(?) # clientupdate client_nickname=Seebi1 client_input_muted=1 client_away=1 client_away_message=AFK return_code=__1_ { name="ClientUpdate", notify="clientupdate", attributes=["client_nickname?", "client_input_muted?", "client_output_muted?", "client_away?", "client_away_message?", "client_input_hardware?", "client_output_hardware?", "client_is_channel_commander?", "client_flag_avatar?", "client_nickname_phonetic?", "client_talk_request@clientupdate?", "client_talk_request_msg?", "client_is_recording?", "client_badges?"] }, # complainadd tcldbid=7 message=annoying # -> void { name="ComplainAdd", notify="complainadd", attributes=["tcldbid", "message"] }, # complaindel tcldbid=7 fcldbid=2 # -> void { name="ComplainDel", notify="complaindel", attributes=["tcldbid", "fcldbid"] }, # complaindelall tcldbid=7 # -> void { name="ComplainDelAll", notify="complaindelall", attributes=["tcldbid"] }, # complainlist tcldbid=0 # -> {ComplainList} notifycomplainlist tcldbid=7 tname=Test01 fcldbid=2 fname=Splamy message=annoying timestamp=1539269750 { name="ComplainListRequest", notify="complainlist", attributes=["tcldbid?"] }, # customdelete ident=s cldbid=2 # -> void { name="CustomDelete", notify="customdelete", attributes=["cldbid", "ident"] }, # custominfo cldbid=2 # cldbid=2 ident=s value=1234 { name="CustomInfoRequest", notify="custominfo", attributes=["cldbid"] }, # customsearch ident=s pattern=%1% # -> cldbid=2 ident=s value=1234 { name="CustomSearch", notify="customsearch", attributes=["ident", "pattern"] }, # customset cldbid=2 ident=s value=1234 # -> void { name="CustomSet", notify="customset", attributes=["cldbid", "ident", "value"] }, # ftcreatedir cid=4 cpw dirname=\/test # -> void { name="CreateDirectory", notify="ftcreatedir", attributes=["cid", "cpw", "dirname"] }, # ftdeletefile cid=4 cpw name=\/Doxyfile2 # -> void { name="DeleteFile", notify="ftdeletefile", attributes=["cid", "cpw", "name"] }, # ftgetfileinfo cid=7 name=\/Egg.ogg cpw # -> {FileInfo} notifyfileinfo cid=7 name=\/Egg.ogg size=6009201 datetime=1523479202 { name="FileInfoRequest", notify="ftgetfileinfo", attributes=["cid", "cpw", "name"] }, # ftgetfilelist cid=4 cpw path=\/ # -> {FileList} notifyfilelist cid=4 path=\/ return_code=1:15 name=Doxyfile size=11984 datetime=1539276009 type=1 # -> {FileListFinished} notifyfilelistfinished cid=4 path=\/ { name="FileListRequest", notify="ftgetfilelist", attributes=["cid", "cpw", "path"] }, # ftinitdownload clientftfid=4096 name=\/Doxyfile2 cid=4 cpw seekpos=0 proto=1 # -> {FileDownload} notifystartdownload clientftfid=4096 serverftfid=1 ftkey=YkmvbK7ibKPJPTRONaY68j3S\/fjx7dkO port=30033 size=11984 proto=1 { name="InitDownload", notify="ftinitdownload", attributes=["clientftfid", "name", "cid", "cpw", "seekpos", "proto"] }, # ftinitupload clientftfid=4096 name=\/Doxyfile size=11984 cid=4 cpw overwrite=0 resume=0 proto=1 # -> {FileUpload} notifystartupload clientftfid=4096 serverftfid=1 ftkey=U2VNc4+cRZdCKMdR6JECqfz8Ix1L40SM port=30033 seekpos=0 proto=1 { name="InitUpload", notify="ftinitupload", attributes=["clientftfid", "name", "cid", "cpw", "size", "overwrite", "resume", "proto"] }, # ftlist # -> {Filetransfer} notifyfiletransferlist clid=1 path=files\\virtualserver_1\\channel_4 name=Win10_1709_German_x64_Pro.iso size=3825467392 sizedone=1324744704 clientftfid=4096 serverftfid=1 sender=0 status=1 current_speed=101380912.0000 average_speed=98684800.0000 runtime=13 { name="ListFiletransfers", notify="ftlist", attributes=[] }, # ftrenamefile cid=4 cpw tcid=4 tcpw oldname=\/Doxyfile newname=\/Doxyfile2 # -> void { name="RenameFile", notify="ftrenamefile", attributes=["cid", "cpw", "tcid?", "tcpw?", "oldname", "newname"] }, # ftstop serverftfid=1 clientftfid=4096 delete=1 # -> {FiletransferStatus} notifystatusfiletransfer clientftfid=4096 status=2066 msg=file\stransfer\scanceled size=1736753152 { name="StopFiletransfer", notify="ftstop", attributes=["serverftfid", "delete"] }, # gm msg=test # -> {TextMessage} notifytextmessage targetmode=3 msg=test invokerid=0 invokername=Server { name="GlobalMessage", notify="gm", attributes=["msg"] }, # hostinfo # -> instance_uptime=2654 host_timestamp_utc=1539341335 virtualservers_running_total=1 virtualservers_total_maxclients=32 virtualservers_total_clients_online=1 virtualservers_total_channels_online=1 connection_filetransfer_bandwidth_sent=0 connection_filetransfer_bandwidth_received=0 connection_filetransfer_bytes_sent_total=0 connection_filetransfer_bytes_received_total=0 connection_packets_sent_total=3753 connection_bytes_sent_total=188803 connection_packets_received_total=3755 connection_bytes_received_total=167844 connection_bandwidth_sent_last_second_total=81 connection_bandwidth_sent_last_minute_total=81 connection_bandwidth_received_last_second_total=83 connection_bandwidth_received_last_minute_total=87 { name="HostInfoRequest", notify="hostinfo", attributes=[] }, # TODO !!! { name="InstanceEdit", notify="instanceedit", attributes=[] }, # TODO PROPERTIES ! # instanceinfo # -> serverinstance_database_version=29 serverinstance_filetransfer_port=30033 serverinstance_max_download_total_bandwidth=18446744073709551615 serverinstance_max_upload_total_bandwidth=18446744073709551615 serverinstance_guest_serverquery_group=1 serverinstance_serverquery_flood_commands=10 serverinstance_serverquery_flood_time=3 serverinstance_serverquery_ban_time=600 serverinstance_template_serveradmin_group=3 serverinstance_template_serverdefault_group=5 serverinstance_template_channeladmin_group=1 serverinstance_template_channeldefault_group=4 serverinstance_permissions_version=21 serverinstance_pending_connections_per_ip=0 { name="InstanceInfo", notify="instanceinfo", attributes=[] }, # logadd loglevel=1 logmsg=test # -> void { name="LogAdd", notify="logadd", attributes=["loglevel", "logmsg"] }, # login $ # -> void { name="Login", notify="login", attributes=["client_login_name", "client_login_password"] }, # logout # -> void { name="Logout", notify="logout", attributes=[] }, # logview lines=100 begin_pos=0 reverse=1 instance=0 # -> {ServerLog} notifyserverlog last_pos=0 file_size=9148 l=2018-10-12\s10:52:30.795253\pERROR\s\s\s\pCustom\s\s\s\s\s\s\s\s\p1\s\s\ptest|l=2018-10-12\s10:48:55.130491\pINFO\s\s\s\s\pVirtualServerBase\p1\s\s\pquery\sclient\sdisconnected\s'serveradmin\sfrom\s127.0.0.1:51093'(id:1)\sreason\s'reasonmsg=connection\slost'| ... { name="LogView", notify="logview", attributes=["lines?", "reverse?", "instance?", "begin_pos?"] }, # messageadd cluid=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= subject=hrad message=ms # -> void { name="OfflineMessageAdd", notify="messageadd", attributes=["cluid", "subject", "message"] }, # messagedel msgid=1 # -> {ClientUpdated} notifyclientupdated clid=4 client_unread_messages=0 { name="OfflineMessageDel", notify="messagedel", attributes=["msgid"] }, # messageget msgid=1 # -> {OfflineMessage} notifymessage msgid=1 cluid=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= subject=hrad message=ms timestamp=1539341886 { name="OfflineMessageGet", notify="messageget", attributes=["msgid"] }, # messagelist # -> {OfflineMessageList} notifymessagelist msgid=1 cluid=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= subject=hrad timestamp=1539341886 flag_read=0 { name="OfflineMessageListRequest", notify="messagelist", attributes=[] }, # messageupdateflag msgid=1 flag=1 # -> {ClientUpdated} notifyclientupdated clid=4 client_unread_messages=0 { name="OfflineMessageUpdateFlag", notify="messageupdateflag", attributes=["msgid", "flag"] }, # permfind permid=1 # -> {PermFind} notifypermfind t=0 id1=6 id2=0 p=1 { name="PermFindRequest", notify="permfind", attributes=["permid?", "permsid?"] }, # permget permid=1 # -> permsid=b_serverinstance_help_view permid=1 permvalue=1 { name="PermRequest", notify="permget", attributes=["permid"] }, # permidgetbyname permsid=b_serverinstance_permission_list # -> permsid=b_serverinstance_permission_list permid=6 { name="PermIdByNameRequest", notify="permidgetbyname", attributes=["permsid"] }, # permissionlist # -> {PermList} notifypermissionlist group_id_end=0|group_id_end=7|group_id_end=13|group_id_end=18|group_id_end=21|group_id_end=21|group_id_end=33|group_id_end=47|group_id_end=77|group_id_end=82|group_id_end=83|group_id_end=106|group_id_end=126|group_id_end=132|group_id_end=143|group_id_end=151|group_id_end=160|group_id_end=162|group_id_end=170|group_id_end=172|group_id_end=190|group_id_end=197|group_id_end=215|group_id_end=227|group_id_end=232|group_id_end=248|permname=b_serverinstance_help_view permdesc=Retrieve\sinformation\sabout\sServerQuery\scommands|permname=b_serverinstance_version_view permdesc=Retrieve\sglobal\sserver\sversion\s(including\splatform\sand\sbuild\snumber)|permname=b_serverinstance_info_view permdesc=Retrieve\sglobal\sserver\sinformation|permname=b_serverinstance_virtualserver_list permdesc=List\svirtual\sservers\sstored\sin\sthe\sdatabase|... { name="PermListRequest", notify="permissionlist", attributes=[] }, # permoverview cid=1 cldbid=2 permid=1 # -> {PermOverview} notifypermoverview cldbid=2 cid=1 t=0 id1=6 id2=0 p=1 v=1 n=0 s=0 { name="PermOverviewRequest", notify="permoverview", attributes=["cid", "cldbid", "permid?", "permsid?"] }, # TODO { name="PermReset", notify="permreset", attributes=[] }, # {TokenAddRequest} # -> (same) { name="PrivilegeKeyAddRequest", notify="privilegekeyadd", attributes=["tokentype", "tokenid1", "tokenid2", "tokendescription?", "tokencustomset?"] }, # {TokenDelete} # -> (same) { name="PrivilegeKeyDelete", notify="privilegekeydelete", attributes=["token"] }, # {TokenListRequest} # -> (same) { name="PrivilegeKeyListRequest", notify="privilegekeylist", attributes=[] }, # {TokenUse} # -> (same) { name="PrivilegeKeyUse", notify="privilegekeyuse", attributes=["token"] }, # quit $ # -> void { name="Quit", notify="quit", attributes=[] }, # sendtextmessage targetmode=2 msg=hi # -> {TextMessage} notifytextmessage targetmode=2 msg=hi invokerid=4 invokername=Splamy invokeruid=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= { name="SendTextMessage", notify="sendtextmessage", attributes=["targetmode@msg", "target@msg?", "msg"] }, # TODO { name="ServerCreate", notify="servercreate", attributes=["virtualserver_name"] }, # TODO PROPERTIES ! # TODO { name="ServerDelete", notify="serverdelete", attributes=["sid"] }, # virtualserver_password is sent two times in this message by the official client { name="ServerEdit", notify="serveredit", attributes=["sid?", "virtualserver_name?", "virtualserver_welcomemessage?", "virtualserver_maxclients?", "virtualserver_password?", "virtualserver_hostmessage?", "virtualserver_hostmessage_mode?", "virtualserver_hostbanner_url?", "virtualserver_hostbanner_gfx_url?", "virtualserver_hostbanner_gfx_interval?", "virtualserver_hostbutton_tooltip?", "virtualserver_hostbutton_url?", "virtualserver_hostbutton_gfx_url?", "virtualserver_icon_id?", "virtualserver_reserved_slots?", "virtualserver_hostbanner_mode?", "virtualserver_nickname?", "virtualserver_max_download_total_bandwidth?", "virtualserver_max_upload_total_bandwidth?", "virtualserver_download_quota?", "virtualserver_upload_quota?", "virtualserver_antiflood_points_tick_reduce?", "virtualserver_antiflood_points_needed_command_block?", "virtualserver_antiflood_points_needed_ip_block?", "virtualserver_codec_encryption_mode?", "virtualserver_needed_identity_security_level?", "virtualserver_default_server_group?", "virtualserver_default_channel_group?", "virtualserver_default_channel_admin_group?", "virtualserver_complain_autoban_count?", "virtualserver_complain_autoban_time?", "virtualserver_complain_remove_time?", "virtualserver_min_clients_in_channel_before_forced_silence?", "virtualserver_priority_speaker_dimm_modificator?", "virtualserver_name_phonetic?", "virtualserver_channel_temp_delete_delay_default?", "virtualserver_weblist_enabled?", "virtualserver_log_client?", "virtualserver_log_query?", "virtualserver_log_channel?", "virtualserver_log_permissions?", "virtualserver_log_server?", "virtualserver_log_filetransfer?"] }, # servergetvariables # -> {ServerUpdated} notifyserverupdated virtualserver_welcomemessage=Welcome\sto\sTeamSpeak,\scheck\s[URL]www.teamspeak.com[\/URL]\sfor\slatest\sinformation virtualserver_maxclients=32 virtualserver_clientsonline=2 virtualserver_channelsonline=1 virtualserver_uptime=1523 virtualserver_hostmessage virtualserver_hostmessage_mode=0 virtualserver_flag_password=0 virtualserver_default_channel_admin_group=5 virtualserver_max_download_total_bandwidth=18446744073709551615 virtualserver_max_upload_total_bandwidth=18446744073709551615 virtualserver_complain_autoban_count=5 virtualserver_complain_autoban_time=1200 virtualserver_complain_remove_time=3600 virtualserver_min_clients_in_channel_before_forced_silence=100 virtualserver_antiflood_points_tick_reduce=5 virtualserver_antiflood_points_needed_command_block=150 virtualserver_antiflood_points_needed_ip_block=250 virtualserver_client_connections=1 virtualserver_query_client_connections=1 virtualserver_queryclientsonline=1 virtualserver_download_quota=18446744073709551615 virtualserver_upload_quota=18446744073709551615 virtualserver_month_bytes_downloaded=143900 virtualserver_month_bytes_uploaded=1737584828 virtualserver_total_bytes_downloaded=156464 virtualserver_total_bytes_uploaded=1737647648 virtualserver_port=9987 virtualserver_autostart=1 virtualserver_machine_id virtualserver_needed_identity_security_level=8 virtualserver_log_client=1 virtualserver_log_query=1 virtualserver_log_channel=1 virtualserver_log_permissions=1 virtualserver_log_server=1 virtualserver_log_filetransfer=1 virtualserver_min_client_version=1513163251 virtualserver_reserved_slots=0 virtualserver_total_packetloss_speech=0.0000 virtualserver_total_packetloss_keepalive=0.0000 virtualserver_total_packetloss_control=0.0000 virtualserver_total_packetloss_total=0.0000 virtualserver_total_ping=0.0000 virtualserver_weblist_enabled=1 virtualserver_min_android_version=1502275280 virtualserver_min_ios_version=1502275280 virtualserver_antiflood_points_needed_plugin_block=0 { name="ServerVariablesRequest", notify="servergetvariables", attributes=[] }, # servergroupadd name=test type=1 # -> {ServerGroupList} notifyservergrouplist sgid=1 name=Guest\sServer\sQuery type=2 iconid=0 savedb=0 sortid=0 namemode=0 n_modifyp=100 n_member_addp=0 n_member_removep=0|... { name="ServerGroupAdd", notify="servergroupadd", attributes=["name", "type@group?"] }, # servergroupaddclient sgid=9 cldbid=2 # -> void { name="ServerGroupAddClient", notify="servergroupaddclient", attributes=["sgid", "cldbid"] }, # servergroupaddperm sgid=9 permid=179 permvalue=1 permnegated=0 permskip=0 # -> void { name="ServerGroupAddPerm", notify="servergroupaddperm", attributes=["sgid", "permid?", "permsid?", "permvalue", "permnegated", "permskip"] }, # TODO { name="ServerGroupAutoAddPerm", notify="servergroupautoaddperm", attributes=["sgtype", "permid?", "permsid?", "permvalue", "permnegated", "permskip"] }, # TODO { name="ServerGroupAutoDelPerm", notify="servergroupautodelperm", attributes=["sgtype", "permid?", "permsid?"] }, # servergroupclientlist sgid=6 -names # -> {ServerGroupClientList} notifyservergroupclientlist sgid=6 cldbid=2 client_nickname=Splamy client_unique_identifier=uA0U7t4PBxdJ5TLnarsOHQh4\/tY=|cldbid=4 client_nickname=AudioBud client_unique_identifier=b+P0CqXms5I0C+A66HZ4Sbu\/PNw=|cldbid=8 client_nickname=Bot client_unique_identifier=lks7QL5OVMKo4pZ79cEOI5r5oEA=|cldbid=48 client_nickname=TestClient1 client_unique_identifier=r6YwpyjxGM7nJp21NlgCoaLRg9I= { name="ServerGroupClientListRequest", notify="servergroupclientlist", attributes=["sgid"] }, # -names # servergroupcopy name=test\s(Copy) ssgid=9 tsgid=0 type=1 # -> {ServerGroupList} notifyservergrouplist ... { name="ServerGroupCopy", notify="servergroupcopy", attributes=["ssgid", "tsgid", "name", "type@group"] }, # servergroupdel sgid=10 force=0 # -> void { name="ServerGroupDel", notify="servergroupdel", attributes=["sgid", "force"] }, # servergroupdelclient sgid=9 cldbid=2 # -> void { name="ServerGroupDelClient", notify="servergroupdelclient", attributes=["sgid", "cldbid"] }, # servergroupdelperm sgid=9 permid=179 # -> void { name="ServerGroupDelPerm", notify="servergroupdelperm", attributes=["sgid", "permid?", "permsid?"] }, # servergrouplist # -> {ServerGroupList} notifyservergrouplist ... { name="ServerGroupListRequest", notify="servergrouplist", attributes=[] }, # servergrouppermlist sgid=7 # -> {ServerGroupPermList} notifyservergrouppermlist sgid=7 permid=23 permvalue=1 permnegated=0 permskip=0|permid=24 permvalue=1 permnegated=0 permskip=0|... { name="ServerGroupPermListRequest", notify="servergrouppermlist", attributes=["sgid"] }, # -permsid # servergrouprename sgid=9 name=testYY # -> {ServerGroupList} notifyservergrouplist ... { name="ServerGroupRename", notify="servergrouprename", attributes=["sgid", "name"] }, # servergroupsbyclientid cldbid=2 # -> {ServerGroupsByClientId} notifyservergroupsbyclientid name=Server\sAdmin sgid=6 cldbid=2|name=Normal sgid=7 cldbid=2|name=testYY sgid=9 cldbid=2 { name="ServerGroupsByClientIdRequest", notify="servergroupsbyclientid", attributes=["cldbid"] }, # serveridgetbyport virtualserver_port=9987 # -> server_id=1 { name="ServerIdGetByPort", notify="serveridgetbyport", attributes=["virtualserver_port"] }, # serverinfo # -> virtualserver_unique_identifier=SwHpaSmzsKpQ4ksmdkMFOMpBhqA= virtualserver_name=TeamSpeak\s]I[\sServer virtualserver_welcomemessage=Welcome\sto\sTeamSpeak,\scheck\s[URL]www.teamspeak.com[\/URL]\sfor\slatest\sinformation virtualserver_platform=Windows virtualserver_version=3.4.0\s[Build:\s1536564584] virtualserver_maxclients=32 virtualserver_password virtualserver_clientsonline=1 virtualserver_channelsonline=1 virtualserver_created=1537603734 virtualserver_uptime=7590 virtualserver_codec_encryption_mode=0 virtualserver_hostmessage virtualserver_hostmessage_mode=0 virtualserver_filebase=files\\virtualserver_1 virtualserver_default_server_group=8 virtualserver_default_channel_group=8 virtualserver_flag_password=0 virtualserver_default_channel_admin_group=5 virtualserver_max_download_total_bandwidth=18446744073709551615 virtualserver_max_upload_total_bandwidth=18446744073709551615 virtualserver_hostbanner_url virtualserver_hostbanner_gfx_url virtualserver_hostbanner_gfx_interval=0 virtualserver_complain_autoban_count=5 virtualserver_complain_autoban_time=1200 virtualserver_complain_remove_time=3600 virtualserver_min_clients_in_channel_before_forced_silence=100 virtualserver_priority_speaker_dimm_modificator=-18.0000 virtualserver_id=1 virtualserver_antiflood_points_tick_reduce=5 virtualserver_antiflood_points_needed_command_block=150 virtualserver_antiflood_points_needed_ip_block=250 virtualserver_client_connections=5 virtualserver_query_client_connections=4 virtualserver_hostbutton_tooltip virtualserver_hostbutton_url virtualserver_hostbutton_gfx_url virtualserver_queryclientsonline=0 virtualserver_download_quota=18446744073709551615 virtualserver_upload_quota=18446744073709551615 virtualserver_month_bytes_downloaded=143900 virtualserver_month_bytes_uploaded=1737584828 virtualserver_total_bytes_downloaded=156464 virtualserver_total_bytes_uploaded=1737647648 virtualserver_port=9987 virtualserver_autostart=1 virtualserver_machine_id virtualserver_needed_identity_security_level=8 virtualserver_log_client=1 virtualserver_log_query=1 virtualserver_log_channel=1 virtualserver_log_permissions=1 virtualserver_log_server=1 virtualserver_log_filetransfer=1 virtualserver_min_client_version=1513163251 virtualserver_name_phonetic virtualserver_icon_id=0 virtualserver_reserved_slots=0 virtualserver_total_packetloss_speech=0.0000 virtualserver_total_packetloss_keepalive=0.0000 virtualserver_total_packetloss_control=0.0000 virtualserver_total_packetloss_total=0.0000 virtualserver_total_ping=0.0000 virtualserver_ip=0.0.0.0,\s:: virtualserver_weblist_enabled=1 virtualserver_ask_for_privilegekey=0 virtualserver_hostbanner_mode=0 virtualserver_channel_temp_delete_delay_default=0 virtualserver_min_android_version=1502275280 virtualserver_min_ios_version=1502275280 virtualserver_nickname virtualserver_antiflood_points_needed_plugin_block=0 virtualserver_status=online connection_filetransfer_bandwidth_sent=0 connection_filetransfer_bandwidth_received=0 connection_filetransfer_bytes_sent_total=0 connection_filetransfer_bytes_received_total=0 connection_packets_sent_speech=0 connection_bytes_sent_speech=0 connection_packets_received_speech=0 connection_bytes_received_speech=0 connection_packets_sent_keepalive=17990 connection_bytes_sent_keepalive=737590 connection_packets_received_keepalive=17990 connection_bytes_received_keepalive=755578 connection_packets_sent_control=620 connection_bytes_sent_control=121323 connection_packets_received_control=636 connection_bytes_received_control=78134 connection_packets_sent_total=18610 connection_bytes_sent_total=858913 connection_packets_received_total=18626 connection_bytes_received_total=833712 connection_bandwidth_sent_last_second_total=81 connection_bandwidth_sent_last_minute_total=83 connection_bandwidth_received_last_second_total=83 connection_bandwidth_received_last_minute_total=90 { name="ServerInfo", notify="serverinfo", attributes=[] }, # serverlist # -> {ServerListResponse} virtualserver_id=1 virtualserver_port=9987 virtualserver_status=online virtualserver_clientsonline=1 virtualserver_queryclientsonline=0 virtualserver_maxclients=32 virtualserver_uptime=7629 virtualserver_name=TeamSpeak\s]I[\sServer virtualserver_autostart=1 virtualserver_machine_id { name="ServerListRequest", notify="serverlist", attributes=[] }, # -uid -short -all -onlyoffline # [NOT FULL] { name="ServerNotifyRegister", notify="servernotifyregister", attributes=["event", "id?"] }, # [NOT FULL] { name="ServerNotifyUnregister", notify="servernotifyunregister", attributes=[] }, # TODO { name="ServerProcessStop", notify="serverprocessstop", attributes=["reasonmsg?"] }, # serverrequestconnectioninfo # -> {ServerConnectionInfo} notifyserverconnectioninfo connection_filetransfer_bandwidth_sent=0 connection_filetransfer_bandwidth_received=0 connection_filetransfer_bytes_sent_total=0 connection_filetransfer_bytes_received_total=0 connection_packets_sent_total=1789 connection_bytes_sent_total=94989 connection_packets_received_total=1791 connection_bytes_received_total=81239 connection_bandwidth_sent_last_second_total=863 connection_bandwidth_sent_last_minute_total=107 connection_bandwidth_received_last_second_total=251 connection_bandwidth_received_last_minute_total=93 connection_connected_time=1703 connection_packetloss_total=0.0000 connection_ping=0.0000 { name="ServerConnectionInfoRequest", notify="serverrequestconnectioninfo", attributes=[] }, # TODO { name="ServerSnapshotCreate", notify="serversnapshotcreate", attributes=[] }, # TODO { name="ServerSnapshotDeploy", notify="serversnapshotdeploy", attributes=[] }, # -mapping # TODO { name="ServerStart", notify="serverstart", attributes=["sid"] }, # TODO { name="ServerStop", notify="serverstop", attributes=["sid", "reasonmsg?"] }, # servertemppasswordadd pw=1234 desc=asdf duration=42 tcid=1 tcpw=4321 # -> void { name="ServerTempPasswordAdd", notify="servertemppasswordadd", attributes=["pw", "desc", "duration@time", "tcid", "tcpw"] }, # servertemppassworddel pw=1234 # -> void { name="ServerTempPasswordDel", notify="servertemppassworddel", attributes=["pw"] }, # servertemppasswordlist # -> {ServerTempPasswordList} notifyservertemppasswordlist nickname=Splamy uid=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= desc=asdf pw_clear=1234 start=1539346669 end=1539346711 tcid=1 tcpw=4321 { name="ServerTempPasswordListRequest", notify="servertemppasswordlist", attributes=[] }, # setclientchannelgroup cgid=9 cid=1 cldbid=2 # -> {ClientChannelGroupChanged} notifyclientchannelgroupchanged invokerid=3 invokername=Splamy invokeruid=uA0U7t4PBxdJ5TLnarsOHQh4\/tY= cgid=9 cid=3 clid=3 cgi=3 { name="SetClientChannelGroup", notify="setclientchannelgroup", attributes=["cgid", "cid", "cldbid"] }, # setconnectioninfo connection_ping=0.0000 connection_ping_deviation=0.3143 connection_packets_sent_speech=1 connection_packets_sent_keepalive=10 connection_packets_sent_control=44 connection_bytes_sent_speech=44 connection_bytes_sent_keepalive=412 connection_bytes_sent_control=5830 connection_packets_received_speech=0 connection_packets_received_keepalive=10 connection_packets_received_control=40 connection_bytes_received_speech=0 connection_bytes_received_keepalive=408 connection_bytes_received_control=5421 connection_server2client_packetloss_speech=0.0000 connection_server2client_packetloss_keepalive=0.0000 connection_server2client_packetloss_control=0.0000 connection_server2client_packetloss_total=0.0000 connection_bandwidth_sent_last_second_speech=0 connection_bandwidth_sent_last_second_keepalive=40 connection_bandwidth_sent_last_second_control=552 connection_bandwidth_sent_last_minute_speech=4 connection_bandwidth_sent_last_minute_keepalive=41 connection_bandwidth_sent_last_minute_control=639 connection_bandwidth_received_last_second_speech=0 connection_bandwidth_received_last_second_keepalive=40 connection_bandwidth_received_last_second_control=147 connection_bandwidth_received_last_minute_speech=0 connection_bandwidth_received_last_minute_keepalive=41 connection_bandwidth_received_last_minute_control=595 { name="SetConnectionInfo", notify="setconnectioninfo", attributes=["connection_ping", "connection_ping_deviation", "connection_packets_sent_speech", "connection_packets_sent_keepalive", "connection_packets_sent_control", "connection_bytes_sent_speech", "connection_bytes_sent_keepalive", "connection_bytes_sent_control", "connection_packets_received_speech", "connection_packets_received_keepalive", "connection_packets_received_control", "connection_bytes_received_speech", "connection_bytes_received_keepalive", "connection_bytes_received_control", "connection_server2client_packetloss_speech", "connection_server2client_packetloss_keepalive", "connection_server2client_packetloss_control", "connection_server2client_packetloss_total", "connection_bandwidth_sent_last_second_speech", "connection_bandwidth_sent_last_second_keepalive", "connection_bandwidth_sent_last_second_control", "connection_bandwidth_sent_last_minute_speech", "connection_bandwidth_sent_last_minute_keepalive", "connection_bandwidth_sent_last_minute_control", "connection_bandwidth_received_last_second_speech", "connection_bandwidth_received_last_second_keepalive", "connection_bandwidth_received_last_second_control", "connection_bandwidth_received_last_minute_speech", "connection_bandwidth_received_last_minute_keepalive", "connection_bandwidth_received_last_minute_control"] }, # tokenadd tokentype=0 tokenid1=7 tokenid2=0 tokendescription=test # -> {TokenAdd} notifytokenadd token=jnKIAfA2aiDW9ZMPj5CPmuXLIOR3tdYwDn70B9Hw { name="TokenAddRequest", notify="tokenadd", attributes=["tokentype", "tokenid1", "tokenid2", "tokendescription?", "tokencustomset?"] }, # tokendelete token=ECsX5mdv9YlHRMB90mkfd4SIIJh2W62TRqn8p+RS # -> void { name="TokenDelete", notify="tokendelete", attributes=["token"] }, # tokenlist # -> {TokenList} notifytokenlist token=jnKIAfA2aiDW9ZMPj5CPmuXLIOR3tdYwDn70B9Hw token_type=0 token_id1=7 token_id2=0 token_created=1539343950 token_description=test|... { name="TokenListRequest", notify="tokenlist", attributes=[] }, # tokenuse token=CHu62WH7P5vVhNP3NnLS4hxoVgWdKeAwdU8q7Iaf # -> (vary) { name="TokenUse", notify="tokenuse", attributes=["token"] }, # use $ # -> void { name="Use", notify="use", attributes=["sid?", "port?"] }, # -virtual # version # -> version=3.4.0 build=1536564584 platform=Windows { name="VersionRequest", notify="version", attributes=[] }, # whoami # -> {WhoAmI} virtualserver_status=online virtualserver_id=1 virtualserver_unique_identifier=SwHpaSmzsKpQ4ksmdkMFOMpBhqA= virtualserver_port=9987 client_id=4 client_channel_id=1 client_nickname=Splamy client_database_id=0 client_login_name client_unique_identifier client_origin_server_id=0 { name="WhoAmIRequest", notify="whoami", attributes=[] }, # clientdisconnect reasonid=7 reasonmsg=Client\sdisconnected { name="Disconnect", notify="clientdisconnect", attributes=["reasonid?", "reasonmsg?"] }, ]