README: ServerQuery, Gruppe Bridge, Query-Flood

This commit is contained in:
MineTec committed 2026-10-18 15:43:47 +02:00
1 parent 5bf3b845e4
commit e452c9b4d3
1 file changed
+10 -2
+10 -2
View File
@@ -27,8 +27,11 @@ im Spiel kommt jeder externe Sprecher einzeln an (Lautstärke-Kategorie „Disco
- Ein Raum ist aktiv, sobald auf mindestens zwei Seiten jemand ist.
- Bots verbinden sich nur, wenn der Raum aktiv ist und auf ihrer Seite jemand sitzt; danach bleiben
sie `lingerSeconds` (Standard 15) verbunden.
- TeamSpeak: ein Beobachter-Client ist dauerhaft verbunden (1 Slot), Raum-Clients nur bei Bedarf.
Fehlende Channels legt die Bridge unter `parentChannel` an (braucht Rechte zum Anlegen).
- TeamSpeak: eine ServerQuery über SSH (Port 10022) sieht alle Clients und Channels und belegt keinen
Slot. Raum-Clients verbinden sich nur bei Bedarf. Fehlende Channels legt die Query unter `parentChannel` an.
- Rechte: Servergruppe „Bridge“ (Kopie von „Normal“) plus `b_channel_create_permanent`, `b_channel_create_child`,
`b_channel_create_modify_with_codec_opusvoice`, `b_client_ignore_antiflood`, `i_client_talk_power` 75.
Darin: die Identität des Query-Logins und alle Raum-Identitäten. Kein Serveradmin nötig.
- Discord: ein Bot pro Raum (ein Bot kann pro Server nur in einem Voice-Channel sein). Fehlende
Channels legt der Bot in `category` an. Einladen mit
`https://discord.com/oauth2/authorize?client_id=APP_ID&scope=bot&permissions=70255632`
@@ -48,6 +51,11 @@ Vorlage: `bridge/config.example.yml`. Die echte `config.yml` enthält Bot-Tokens
- **TeamSpeak 6 (mhsl.eu)**: verlangt Security-Level 15, Nicknames höchstens 30 Zeichen.
Schnelle Reconnects lösen den Flood-Schutz aus (IP-Bann), deshalb Backoff beim Verbinden.
Den Bot-Identitäten am besten `b_client_ignore_antiflood` geben.
- **TeamSpeak-Query-Flood**: Die Query sperrt die IP schon nach wenigen schnellen Befehlen (Instanz-Bann,
nicht in der Bann-Liste des Servers, läuft nach einigen Minuten ab). Die Bridge hält mindestens 1 s Abstand;
sauberer ist es, ihre IP in `query_ip_allowlist.txt` des TS-Servers einzutragen.
- **UIDs**: ts3j rechnet die UID einer Identität anders als der TS6-Server. Eigene Clients erkennt die Bridge
deshalb an ihrer Client-ID, nicht an der UID.
- **Discord**: Die ersten Pakete nach dem Beitritt schlagen beim Entschlüsseln fehl
(„Decrypt failed“), bis DAVE die Schlüssel ausgehandelt hat. Das ist normal.
- Mit `-Dvoicebridge.ts3debug=true` loggt ts3j das TeamSpeak-Protokoll (Fehlercodes vom Server).