Data models and message bus topics

Overview

We document here the message bus topics and the data models associated with ToMCAT. An implicit design decision that we make is that each ‘leaf’ in the topic hierarchy corresponds to a unique schema. So if you subscribe to all the messages at a non-leaf level in the hierarchy, you will get messages corresponding to all the leaves under that level.

We also provide the data models and example JSON output for data that is not necessarily published to the message bus - for example, the SessionMetadata model describes the format of the file metadata.json that is written to each session data directory produced by the run_session script.

The structured documentation below was auto-generated from this YAML file.

Topics and models

Swagger UI

ToMCAT Data Models and Message Topics
 0.1 
OAS3

A formal specification of data models and message bus topics associated with ToMCAT.

Schemas

Position
Velocity
Event
PlayerInteraction
EntityInteraction
MobAttacked
BlockBreakEvent
BlockProperties
BlockInteraction
VillagerSaved
DoorInteraction
LeverEvent
GenericBlockInteraction
ItemPickedUpEvent
ItemStack
EquipmentChangeEvent
EntityDeath
DogBarkEvent
PlayerName
BlockType
StateObservation
Chat
HitControlledDoorOpenedEvent
BlockMaterial
Item
EntityType
ClickType
SessionMetadata

Colophon

The documentation for the topics and the data models above was generated using a version of the Swagger UI generator that was modified to align better with the notion of publishing/subscribing using a message bus.