IRC-Dokumentation · Experten
Message-Tags: Metadaten in IRC-Nachrichten
Message-Tags ergänzen Metadaten vor dem übrigen Teil einer IRC-Nachricht. Sie können einen Zeitpunkt, ein Konto oder eine Batch-Zuordnung enthalten. Unbekannte Tags dürfen in der Oberfläche ignoriert werden; ihr Format muss trotzdem korrekt analysiert werden.
Dialova-Team · Überprüft am
Den Tag-Abschnitt lesen #
@time=2026-10-29T10:00:00.000Z;account=alice :Alice!u@cloak.example PRIVMSG #atelier :BonjourDer Abschnitt beginnt mit @ und endet am ersten nicht maskierten Leerzeichen. Tags werden durch ; getrennt. Nach jedem Schlüssel kann mit = ein Wert folgen. Die Reihenfolge hat keine Bedeutung, die Schlüssel unterscheiden Groß- und Kleinschreibung. Trenne die Nachrichtenparameter erst, nachdem du diesen Abschnitt abgetrennt hast.
Werte genau einmal dekodieren #
| Übertragene Sequenz | Dekodierter Wert |
|---|---|
| \: | Semikolon |
| \s | Leerzeichen |
| \\ | Backslash |
| \r | Wagenrücklauf |
| \n | Zeilenumbruch |
Die Maskierung betrifft den Tag-Wert, nicht den gesamten Nachrichtentext. Tag-Werte sind UTF-8-kodiert. Ein leerer Wert und ein fehlender Wert sind hier gleichwertig. Eine Oberfläche darf keinen Bedeutungsunterschied erfinden.
Die allgemeine Capability und spezialisierte Erweiterungen #
message-tags signalisiert die Unterstützung des vollständigen Formats und ermöglicht insbesondere Client-Tags und TAGMSG. Auch server-time, account-tag und batch verwenden das Tag-Format. Ihre Aushandlung darf deshalb aber nicht mit der der allgemeinen Capability gleichgesetzt werden.
C: CAP REQ :message-tags
S: :irc.example CAP Alice ACK :message-tags
C: @+example.org/note=bonjour\sici TAGMSG #atelierDas Präfix + kennzeichnet ein Client-Tag. Es macht eine Behauptung des Clients nicht zu einer vom Server bestätigten Information. Ein vom Server gemeldetes Konto und beliebiger Text eines Teilnehmers müssen unterschieden werden.
Begrenzte Metadaten, keine unbegrenzten Nachrichten #
Für Tags gilt eine eigene Längengrenze neben dem historischen Nachrichtenteil. Ihre Verwendung hebt das Textlimit von PRIVMSG nicht auf. Unbekannte Tags, ungültige Escape-Sequenzen und doppelte Schlüssel sind nach Spezifikation zu behandeln. Vermeide Parser, die jede Erweiterung ablehnen oder unbegrenzt Daten aufbewahren.
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 — Message Tags ↗Quelle Spezifikation · abgerufen am 2026-10-29
- IRCv3 — server-time ↗Quelle Spezifikation · abgerufen am 2026-10-29
- IRCv3 — account-tag ↗Quelle Spezifikation · abgerufen am 2026-10-29
- IRCv3 — batch ↗Quelle Spezifikation · abgerufen am 2026-10-29