Vai al contenuto
Dialova

Documentazione IRC · Intermedio

Capire le risposte numeriche IRC

Una risposta numerica è un messaggio il cui comando è un codice a tre cifre. Codice e parametri ne costituiscono la struttura; il testo esplicativo finale è destinato alla visualizzazione e può variare secondo il server o la sua lingua.

Il team di Dialova · Verificato il

Leggere la struttura anziché analizzare una frase #

Risposte NAMES indirizzate al client Alice
:irc.example 353 Alice = #atelier :@Alice Bob
:irc.example 366 Alice #atelier :End of /NAMES list

Qui 353 è il comando numerico. Alice è la destinataria della risposta; #atelier e l’elenco dei nickname sono parametri utili al client. La frase di fine elenco non è un identificativo stabile da riconoscere parola per parola.

Alcuni riferimenti comuni #

CodiceUsoPunto di attenzione
001Benvenuto dopo la registrazione IRCNon equivale alla sola apertura TCP.
005ISUPPORTDescrive proprietà del server; non è CAP ACK.
311 / 318Inizio delle informazioni WHOIS e finePiù risposte possono intercalarsi.
332 / 333Argomento e metadati associati333 è una pratica diffusa, non l’intera risposta TOPIC da sola.
353 / 366Elenco NAMES e fineL’elenco può essere suddiviso.
401Destinatario non trovatoNon autorizza ad aggirare le regole della rete.
482Permessi insufficienti nel canaleVerifica il ruolo effettivo, non solo il menu del client.
903 / 904SASL riuscito / non riuscitoQuindi non tutti i codici 9xx indicano successo.

Risposte storiche ed estensioni #

Le RFC descrivono una base storica, non tutte le risposte attuali. IRCd ed estensioni aggiungono codici; un client deve poterli mostrare o ignorare correttamente senza inventarne l’interpretazione. WHOIS può così esporre informazioni aggiuntive secondo la rete e i permessi.

Le famiglie 4xx e 5xx contengono molti errori, ma questa indicazione non sostituisce la documentazione del meccanismo. Le estensioni moderne usano anche risposte strutturate come FAIL, WARN o NOTE.

Associare la risposta all’azione corretta #

Un client può ricevere eventi e più risposte contemporaneamente. Non supporre che il messaggio successivo risponda all’ultimo comando. Rispetta i parametri di destinazione e i marcatori di fine; labeled-response, quando disponibile, soddisfa esigenze di correlazione più avanzate.

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.