Skip to content
Dialova

IRC Documentation · Intermediate

Server-time: date messages with the server's time

server-time allows the server to include the time of an event in a time tag. The client can then display the original time rather than the time it receives the message, which is particularly useful when resuming history.

Dialova Team · Verified on

Enable server-time #

IRC Exchange: 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

The extension assumes support for the message tags format. After activation, the server can include time in relevant messages. Do not consider a missing tag as proof of an error: the specification does not guarantee its use on all lines.

UTC on the wire, local presentation in the client #

The announced format is a UTC date and time with millisecond precision and Z suffix. The client then displays this value in the chosen timezone. The string is neither a millisecond counter nor an idle time.

A message received at 2 PM may carry an older time if it comes from history. The reception time and the event time are therefore two different pieces of data. A server can also represent a leap second: a too strict parser must provide how to handle this case.

Preserve identifiers, not just times #

Two messages can have the same date; sorting or deduplicating only on time would cause content to disappear. Keep identifiers when they exist, the batch context, and the order guarantees actually provided by the source.

With echo-message, the sender also receives the version processed by the server, which allows for a more consistent chronological display. This remains different from a read confirmation by the recipient.

Sources & Verification

Examples use pseudonyms and fictional domains, except for explicitly documented connection points. Network-specific extensions and settings are noted in the text.