Hackware

Switch to dark theme

keepalive

The bare liveness signal a quiet client sends so its stream isn't reaped as idle.

The bare liveness signal. A connected client that has nothing to say still POSTs one of these periodically, because inbound traffic is the only proof its stream is alive — the server's own keepalive writes can't distinguish a live peer from a dead socket still accepting bytes. Part of the IRC schema reference.

{
	"type": "keepalive"
}
FieldTypeConstraints
type"keepalive"Discriminator
hoststringOptional, send-side only. The multiplayer server whose stream this keepalive is for; omitted, the x-irc-multiplayer-server header's channel applies. Stripped before delivery — the frame on the wire carries type alone.
Bridges send this too

A bridge stream (a key holding irc.connection.unauthenticated, no Mojang session behind it) proves its liveness the same way. With no account on the POST, the keepalive is attributed to the key itself and refreshes every monitor stream that key holds on the channel — so name the channel the stream was opened with, either via the X-IRC-Multiplayer-Server header or the payload's host field. Send the first one within two minutes of connecting — until a stream has proven itself once, it is held to the standard idle window — and any interval up to about two minutes keeps it comfortably inside the ten-minute window a proven monitor is allowed between proofs.

Peers don't need this

Stream liveness is a property of client connections, and peered users don't hold one — your presence cadence is your liveness. The type is documented because it appears on the subscribe stream, not because you should send it.