Documentazione IRC · Avanzato
Batch: raggruppare eventi IRC collegati
batch segnala che più messaggi IRC appartengono allo stesso insieme. Il tipo di batch ne spiega la relazione: per esempio un netsplit o un estratto della cronologia. Un batch non è automaticamente una conversazione multilinea.
Il team di Dialova · Verificato il
Aprire un batch, associarvi messaggi e chiuderlo #
S: :irc.example BATCH +lot1 netsplit irc-a.example irc-b.example
S: @batch=lot1 :Bob!u@cloak.example QUIT :Connexion interrompue
S: @batch=lot1 :Chloe!u@cloak.example QUIT :Connexion interrompue
S: :irc.example BATCH -lot1Il server apre il batch con + seguito da un identificativo opaco e da un tipo. I messaggi associati portano il tag batch corrispondente. Il batch termina con - seguito dallo stesso identificativo. L’identificativo distingue maiuscole e minuscole e non va interpretato come un dato funzionale.
Negoziazione e tipo di batch #
Il client richiede la capacità batch e attende ACK. Deve comprendere il formato dei tag. I tipi di batch non sono un elenco negoziato tramite CAP: ogni estensione definisce il significato del proprio tipo. Un tipo sconosciuto non autorizza a scartarne il contenuto.
Un batch può essere vuoto. Più batch possono intrecciarsi o essere annidati. Un solo buffer globale, o l’ipotesi che tutti i messaggi successivi appartengano al batch, interpreterebbe male scambi validi.
Cronologia e stato attuale #
Il tipo chathistory raggruppa eventi passati. Non far uscire un utente attualmente presente solo perché un vecchio QUIT compare in un batch storico: la visualizzazione e le modifiche dello stato attuale hanno funzioni diverse.
Alla data della verifica, la capacità per richiedere la cronologia resta draft/chathistory, mentre il tipo di batch chathistory è definitivo. L’estensione draft/multiline descrive un altro uso ancora. Supportare batch non basta a garantire queste funzionalità.
Limitare e completare l’elaborazione #
- Conservare una tabella di batch per identificativo, non una sola variabile.
- Mantenere il collegamento con un eventuale batch padre.
- Limitare dimensione e numero dei batch e gestire le interruzioni del trasporto.
- Non mostrare una riproduzione della cronologia come una nuova azione utente e non rispondere automaticamente agli eventi storici.
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.
- IRCv3 — Message Tags ↗Fonte della specifica · consultata il 2026-10-29
- IRCv3 — batch ↗Fonte della specifica · consultata il 2026-10-29
- IRCv3 — chathistory, spécification en développement ↗Fonte della specifica · consultata il 2026-10-29