IRC-dokumentation · Avancerad
Förhandla funktioner med CAP
CAP låter klienten välja tillägg den kan hantera. Serverlistan är ett erbjudande, inte automatisk aktivering. En korrekt tillståndsmaskin är viktig när SASL eller uppdelade funktionslistor används.
Dialovas team · Kontrollerat den
Läs hela listan #
CAP LS 302 begär modern annonsering. Servern kan skicka flera rader. Parametern * efter LS betyder fortsättning. Samla hela listan före beslut. sasl=PLAIN,EXTERNAL anger mekanismer, men funktionsnamnet att begära är sasl.
C: CAP LS 302
C: NICK Alice
C: USER alice 0 * :Alice
S: :irc.example CAP * LS * :message-tags server-time
S: :irc.example CAP * LS :batch sasl=PLAIN,EXTERNALAktivera bara det som stöds #
Klienten väljer en lista och skickar CAP REQ. ACK bekräftar och NAK nekar. En annonserad funktion är inte aktiv. Kopiera inte LS-värden blint till REQ.
C: CAP REQ :server-time sasl
S: :irc.example CAP Alice ACK :server-time saslUnder registrering pausar CAP slutförandet. Utför avsedd autentisering och skicka sedan CAP END. Gränssnittet ska inte visa ansluten bara för att TLS-socketen är öppen.
Efter registrering och vid förändringar #
CAP LIST visar aktiva funktioner. CAP REQ kan även användas efter registrering. CAP NEW och CAP DEL ingår i cap-notify. Otillgängliga tjänster kan ändra serverns erbjudande. Klienten måste uppdatera tillståndet och inte fortsätta använda borttagna funktioner.
Äldre servrar utan CAP kan hanteras med klassisk anslutning. Om policyn kräver autentisering före åtkomst är tyst degradering inte acceptabel.
Ett konkret exempel #
På Ergo kan förhandling av uttrycklig historik stänga av automatisk leverans av missade meddelanden. En klient som begär funktionen måste därför hantera återupptagandet, inte bara känna igen namnet. Dialova sparar sina privata webbmeddelanden i separat historik. Serverns och appens ansvar är skilda.
Källor och kontroll
Exemplen använder påhittade smeknamn och domäner, utom uttryckligen dokumenterade anslutningspunkter. Nätverksspecifika tillägg och inställningar anges i texten.
- IRCv3 — förhandling av klientfunktioner ↗Källa specifikation · kontrollerad den 2026-10-29
- Ergo — officiell presentation ↗Källa officiell · kontrollerad den 2026-10-29
- IRCv3 — chathistory, specifikation under utveckling ↗Källa specifikation · kontrollerad den 2026-10-29