IRC-Dokumentation · Fortgeschrittene
IRCv3: Erweiterungen für modernes IRC
IRCv3 ist eine Sammlung von Spezifikationen, die IRC weiterentwickeln, ohne einen gleichzeitigen Wechsel aller Clients zu verlangen. Capabilities werden einzeln ausgehandelt. Ein einfacher Hinweis „IRCv3-kompatibel“ garantiert daher nicht sämtliche Funktionen.
Dialova-Team · Überprüft am
In diesem Bereich
- account-tag: das Konto hinter einer Nachricht erkennenaccount-tag verstehen: das vom Server hinzugefügte account-Tag, der Unterschied zwischen Nickname und Konto, die Aushandlung und Sicherheitsregeln für Bots.
- BATCH: zusammengehörige IRC-Ereignisse gruppierenIRCv3-Batches verstehen: Beginn, Ende, batch-Tag, Verschachtelung und die Unterschiede zwischen Gruppierung, Verlauf und mehrzeiligen Nachrichten.
- Capabilities mit CAP aushandelnIRCv3-CAP-Aushandlung verstehen: LS 302, mehrteilige Listen, REQ, ACK, NAK, END und Änderungen nach der Anmeldung. Mit Beispielen und typischen Implementierungsfehlern.
- Message-Tags: Metadaten in IRC-NachrichtenIRCv3-Tags lesen: @-Abschnitt, Trennung, Escape-Sequenzen, Client-Tags, TAGMSG und Längengrenzen. Metadaten und Nachrichtentext sicher unterscheiden.
- SASL bei IRC: ein Konto authentifizierenSASL bei IRC verstehen: Unterschiede zu TLS und NickServ, PLAIN und EXTERNAL, CAP-Aushandlung und Fehler bei der Authentifizierung.
- server-time: Nachrichten mit der Serverzeit versehenserver-time und das time-Tag verstehen: UTC-Zeitstempel, Aushandlung, Verlauf, lokale Anzeige und Grenzen der Nachrichtenreihenfolge.
Weiterentwicklung mit Rücksicht auf bestehende Clients #
CAP ermittelt und aktiviert Erweiterungen, die Client und Server gemeinsam unterstützen. Entscheidend sind die tatsächlich verwendeten Versionen, Module, Dienste und Einstellungen. Unterscheide zwischen angebotenen, angeforderten und bestätigten Funktionen.
| Bereich | Wichtige Mechanismen |
|---|---|
| Verbindung und Identität | CAP, sasl, account-tag, account-notify, extended-join |
| Darstellung und Status | server-time, echo-message, away-notify, multi-prefix |
| Metadaten und Gruppierung | message-tags, batch, labeled-response |
| Verlauf | draft/chathistory und draft/event-playback, zum Prüfdatum noch in Entwicklung |
Status und Abhängigkeiten beachten #
Der offizielle Katalog unterscheidet finalisierte Spezifikationen und laufende Arbeiten. Eine mit draft/ beginnende Erweiterung kann inkompatible Änderungen erfahren. Capability-Name, Tag-Name und Batch-Typ sind unterschiedliche Kennungen. chathistory ist ein Batch-Typ; die in Entwicklung befindliche Capability heißt draft/chathistory.
Diese erste Fassung behandelt CAP, SASL, message-tags, server-time, account-tag und batch ausführlich. Weitere Capabilities sind zur Einordnung ihrer Aufgaben aufgeführt, erhalten aber keine leeren Einzelseiten. Die vollständigen Texte findest du in den offiziellen Spezifikationen.
Für die Entwicklung eines Clients #
- CAP LS vollständig lesen, einschließlich mehrteiliger Antworten und Werte.
- Nur implementierte Capabilities aktivieren und ACK abwarten.
- Zusätzliche Nachrichten zwischen den Schritten eines Austauschs zulassen.
- Aktuellen Zustand und erneut abgespielte historische Ereignisse unterscheiden.
- Unbekannte Tags verarbeiten, ohne ihnen eine erfundene Wirkung zuzuschreiben.
Quellen und Überprüfung
Die Beispiele verwenden erfundene Nicknames und Domains. Ausgenommen sind ausdrücklich dokumentierte Verbindungsadressen. Netzwerkspezifische Erweiterungen und Einstellungen werden im Text gekennzeichnet.
- IRCv3 — catalogue des spécifications ↗Quelle Spezifikation · abgerufen am 2026-10-29
- IRCv3 — Client Capability Negotiation ↗Quelle Spezifikation · abgerufen am 2026-10-29
- IRCv3 — chathistory, spécification en développement ↗Quelle Spezifikation · abgerufen am 2026-10-29