games.cavu.tier-madness.subscribeGame

A game's live channel. The socket is bidirectional: the client sends games.cavu.tier-madness.clientFrame frames (#auth then #create/#join to play, or just #spectate to watch); the server sends a #snapshot of the game as that viewer may see it whenever it changes.

Repository @pardy.at did:plc:dp7v5b5kejmmzzpwmqyf5wj6 namespace authority
Details · subscription
Kindsubscription
Authoritytier-madness.cavu.games
Indexed

Subscription

subscription · WebSocket

Parameters

query string

Messages

DAG-CBOR frames

#snapshot

object

#created

object

Reply to #create: the join code to share, and what goes in the host's games.cavu.tier-madness.lobby record.

Errors

GameNotFound

No description in schema.

AuthRequired

No description in schema.

BadFrame

No description in schema.

IllegalAction

No description in schema.

RateLimited

No description in schema.

GameStarted

No description in schema.

WriteFailed

Couldn't record the move in the player's PDS; it wasn't applied.

#created

object

Reply to #create: the join code to share, and what goes in the host's games.cavu.tier-madness.lobby record.

Properties

code

requiredstring
  • minLength: 4
  • maxLength: 4

codeHash

requiredstring
  • maxLength: 128

expiresAt

requiredstring · datetime

game

requiredstring
  • maxLength: 64

spaceHost

string · did

#snapshot

object

Properties

now

requiredinteger

Server time, ms since epoch.

seq

requiredinteger
  • minimum: 0

Similar lexicons

semantic match

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • Frames a client sends up the games.cavu.tier-madness.subscribeGame socket. Intents only: the server validates each, records it in the player's own PDS (secret move + public commitment), and only then applies it.

  • Bidirectional game session. Server->client messages are below; client->server frames are games.cavu.clientFrame.

  • Frames a client sends up the games.cavu.subscribeSession socket (DAG-CBOR event-stream framing: header {op:1, t:'#join'|'#intent'|'#ping'} + body).