Vai al contenuto
Dialova

Documentazione IRC · Intermedio

Server-time: datare i messaggi con l’ora del server

server-time permette al server di allegare l’istante di un evento in un tag time. Il client può così mostrare l’ora originale invece di quella di ricezione, particolarmente utile quando si recupera la cronologia.

Il team di Dialova · Verificato il

Attivare server-time #

Scambio IRC: C = client, S = server
C: CAP REQ :server-time
S: :irc.example CAP Alice ACK :server-time
S: @time=2026-10-29T10:00:00.123Z :Bob!u@cloak.example PRIVMSG Alice :Bonjour

L’estensione presuppone il supporto del formato dei message tag. Dopo l’attivazione, il server può aggiungere time ai messaggi interessati. Un tag mancante non dimostra un errore: la specifica non ne garantisce l’uso su ogni riga.

UTC sul protocollo, ora locale nel client #

Il formato annunciato è una data e un’ora UTC con precisione al millisecondo e suffisso Z. Il client mostra poi il valore nel fuso orario scelto. La stringa non è un contatore di millisecondi né una durata di inattività.

Un messaggio ricevuto alle 14:00 può avere un’ora precedente se proviene dalla cronologia. L’ora di ricezione e quella dell’evento sono quindi dati distinti. Un server può anche rappresentare un secondo intercalare: un parser troppo rigido deve prevedere come gestirlo.

Conservare gli identificativi, non solo gli orari #

Due messaggi possono avere la stessa data; ordinarli o deduplicarli solo in base a time farebbe sparire contenuti. Conserva gli identificativi quando esistono, il contesto del batch e le garanzie di ordinamento effettivamente fornite dalla fonte.

Con echo-message anche il mittente riceve la versione elaborata dal server, consentendo una visualizzazione cronologica più coerente. Resta diverso da una conferma di lettura del destinatario.

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.