Vai al contenuto
Dialova

Documentazione IRC · Avanzato

Comando CAP: elencare e negoziare le estensioni IRC

CAP è il comando per negoziare le estensioni IRC. Permette a un client di attivare i meccanismi che comprende. La guida IRCv3 CAP descrive la macchina a stati; questa scheda presenta la sintassi da riconoscere in un log.

Il team di Dialova · Verificato il

Sintassi e parametri #

Sintassi del protocollo, senza la / del client
CAP <LS [302] | LIST | REQ :<capacités> | END>
ParametroSignificato
LS 302Richiede l’elenco con il meccanismo moderno di annuncio, inclusi i valori e le risposte eventualmente suddivise.
REQRichiede l’attivazione delle capacità scelte; ACK o NAK indica se la richiesta è accettata.
LIST / ENDLIST descrive le capacità attive; END termina la sospensione della registrazione IRC.

Esempio commentato #

Scambio IRC: C = client, S = server
C: CAP LS 302
C: NICK Alice
C: USER alice 0 * :Alice
S: :irc.example CAP * LS :message-tags server-time
C: CAP REQ :server-time
S: :irc.example CAP Alice ACK :server-time
C: CAP END

Nickname, host e testi di questo scambio sono fittizi. Il client può mostrare le risposte in una forma più leggibile rispetto alle righe del protocollo qui riportate.

Risposte e possibili errori #

RispostaSignificato
CAP LSElenco proposto; il marcatore * intermedio indica che continua.
CAP ACK / NAKAttivazione accettata o richiesta rifiutata.
CAP LISTElenco delle capacità attive.
ErroreCausa abituale
410Sottocomando CAP non valido, secondo l’implementazione.
421Server storico che non riconosce CAP.

Permessi, compatibilità e precauzioni #

Un annuncio LS non attiva nulla. Il client deve usare una capacità solo dopo l’attivazione. CAP END non invia un messaggio a un canale: è una fase della connessione.

CAP può funzionare anche dopo la registrazione IRC. Sottocomandi, versione annunciata e notifiche NEW/DEL vanno interpretati secondo la specifica. Il valore di una capacità, per esempio sasl=PLAIN, non è il suo nome.

Domande frequenti #

Perché CAP compare senza /? Qui si tratta del protocollo; l’interfaccia gestisce il comando internamente.

CAP e 005 ISUPPORT fanno la stessa cosa? No: ISUPPORT descrive proprietà e limiti; CAP attiva estensioni negoziate.

Fonti e verifica

Gli esempi usano nickname e domini fittizi, tranne gli endpoint esplicitamente documentati. Le estensioni e le impostazioni specifiche di una rete sono indicate nel testo.