Web Socket Events (Web Socket Chat Bot protocol events)
OnWsCommandResponse
Description:
Sent by the WebSocket Chat Bot when a command was executed.
Response body:
success
Type:
boolean
Description: Flags the command execution as either successful if
true
or not successful iffalse
.requestId
Type:
string
Description: The request Id that was sent when the command was sent to the WebSocket Chat Bot, used to track commands. (Randomly generated on each command sending)
command
Type:
string
Description: The command that was sent.
result
Type:
object
Description: The value that the command has returned.
Example:
{
"event": "OnWsCommandResponse",
"data": {
"success": true,
"requestId": "ZLxcOhfMyf4SzNCqwMTx",
"command": "LogToConsole",
"result": true
}
}
MCC Events
OnBlockBreakAnimation
Description:
Sent when a block is broken in the world.
Parameters:
Entity
Type:
Entity json encoded object
Location
Type:
Location json encoded object
stage
Type:
integer
Example:
{
"event": "OnBlockBreakAnimation",
"data": {}
}
OnEntityAnimation
Description:
Sent when an entity does an animation.
Parameters:
Entity
Type:
Entity json encoded object
animation
Type:
integer
Example:
{
"event": "OnEntityAnimation",
"data": {
"entity": {
"ID":8,
"UUID":"8c0e3dc3-9bcc-3e03-a138-53348330d4ee",
"Name":"someplayer",
"CustomNameJson":null,
"IsCustomNameVisible":false,
"CustomName":null,
"Latency":0,
"Type":77,
"Location":{
"X":-46.08784180879593,
"Y":68,
"Z":147.68046873807907,
"Status":0,
"ChunkX":-3,
"ChunkY":8,
"ChunkZ":9,
"ChunkBlockX":1,
"ChunkBlockY":4,
"ChunkBlockZ":3
},
"Yaw":178.59375,
"Pitch":28.125,
"ObjectData":-1,
"Health":20,
"Item":{
"Type":18,
"Count":0,
"NBT":null,
"IsEmpty":true,
"DisplayName":null,
"Lores":null,
"Damage":0
},
"Pose":0,
"Metadata":{
"6":0
},
"Equipment": {}
},
"animation":0
}
}
OnChatPrivate
Description:
Sent when the MCC receives a private chat message.
Parameters:
sender
Type:
string
message
Type:
string
rawText
Type:
string
Example:
{
"event": "OnChatPublic",
"data": {
"sender":"milutinke",
"message":"hey there",
"rawText":"milutinke whispers to you: hey there"
}
}
OnChatPublic
Description:
Sent when a public message was sent in the chat.
Parameters:
username
Type:
string
message
Type:
string
rawText
Type: string
Example:
{
"event": "OnChatPublic",
"data": {
"username":"milutinke",
"message":"hello world",
"rawText":"<milutinke> hello world"
}
}
OnTeleportRequest
Description:
Sent when the bot gets a teleport request
Parameters:
sender
Type:
string
rawText
Type:
string
Example:
{
"event": "OnTeleportRequest",
"data": {
"sender": "milutinke",
"rawText": "Milutinke want's to teleport to you. Type /tpaccept to accept the teleport request."
}
}
OnChatRaw
Description:
Sent when any kind of chat message was received by the MCC. Can contain JSON.
Parameters:
text
Type:
string
json
Type:
string
Example:
{
"event": "OnChatRaw",
"data": {
"text":"someplayer has made the advancement §a[§aCover Me with Diamonds]",
"json":"{\"translate\":\"chat.type.advancement.task\",\"with\":[{\"insertion\":\"someplayer\",\"clickEvent\":{\"action\":\"suggest_command\",\"value\":\"/tell someplayer \"},\"hoverEvent\":{\"action\":\"show_entity\",\"contents\":{\"type\":\"minecraft:player\",\"id\":\"8c0e3dc3-9bcc-3e03-a138-53348330d4ee\",\"name\":{\"text\":\"someplayer\"}}},\"text\":\"someplayer\"},{\"color\":\"green\",\"translate\":\"chat.square_brackets\",\"with\":[{\"hoverEvent\":{\"action\":\"show_text\",\"contents\":{\"color\":\"green\",\"extra\":[{\"text\":\"\\n\"},{\"translate\":\"advancements.story.shiny_gear.description\"}],\"translate\":\"advancements.story.shiny_gear.title\"}},\"translate\":\"advancements.story.shiny_gear.title\"}]}]}"
}
}
OnDisconnect
Description:
Sent when the bot has disconnected from a server. At this point you can't send commands to the MCC.
Parameters:
reason
Type:
string
message
Type:
string
Example:
{
"event": "OnDisconnect",
"data": {
"reason": "<reason json encoded object>",
"message": "<message json encoded object>"
}
}
OnPlayerProperty
Description:
Sent when the server need to update a player property
Parameters:
prop
Type:
json encoded object of { string key: double/number value }
Example:
{
"event": "OnPlayerProperty",
"data": {
"minecraft:generic.movement_speed": 0.10000000149011612
}
}
OnServerTpsUpdate
Description:
Sent when the server TPS changes/updates.
Parameters:
tps
Type:
double
Example:
{
"event": "OnServerTpsUpdate",
"data": {
"tps": 20.0
}
}
OnTimeUpdate
Description:
Sent when the world time changes.
NOTE: Sent quite frequently.
Parameters:
worldAge
Type:
long
timeOfDay
Type:
long
Example:
{
"event": "OnTimeUpdate",
"data": {
"worldAge": 1719192,
"timeOfDay": -1132
}
}
OnEntityMove
Description:
Sent when an entity moves.
NOTE: Sent quite frequently.
Parameters:
Entity
Type:
Entity json encoded object
Example:
{
"event": "OnEntityMove",
"data": {
"ID":16,
"UUID":"00000000-0000-0000-0000-000000000000",
"Name":null,
"CustomNameJson":null,
"IsCustomNameVisible":false,
"CustomName":null,
"Latency":0,
"Type":14,
"Location":{
"X":5.5,
"Y":-47.9375,
"Z":204.5,
"Status":0,
"ChunkX":0,
"ChunkY":1,
"ChunkZ":12,
"ChunkBlockX":5,
"ChunkBlockY":0,
"ChunkBlockZ":12
},
"Yaw":0,
"Pitch":0,
"ObjectData":0,
"Health":1,
"Item":{
"Type":18,
"Count":0,
"NBT":null,
"IsEmpty":true,
"DisplayName":null,
"Lores":null,
"Damage":0
},
"Pose":0,
"Metadata":null,
"Equipment": {}
}
}
OnInternalCommand
Description:
Sent when an internal MCC command has been executed.
Parameters:
command
Type:
string
parameters
Type:
string
result
Type:
string
Example:
{
"event": "OnInternalCommand",
"data": {
"command": "dig -115 74 -19",
"parameters": "-115 74 -19",
"result": "Attempting to dig block at -114,5 74 -18,5 (Grass Block)"
}
}
OnEntitySpawn
Description:
Sent when an entity is spawned or enters the player radius.
Parameters:
Entity
Type:
Entity json encoded object
Example:
{
"event": "OnEntitySpawn",
"data": {
"ID":78,
"UUID":"00000000-0000-0000-0000-000000000000",
"Name":null,
"CustomNameJson":null,
"IsCustomNameVisible":false,
"CustomName":null,
"Latency":0,
"Type":15,
"Location":{
"X":-47.5,
"Y":68,
"Z":146.5,
"Status":0,
"ChunkX":-3,
"ChunkY":8,
"ChunkZ":9,
"ChunkBlockX":0,
"ChunkBlockY":4,
"ChunkBlockZ":2
},
"Yaw":30.9375,
"Pitch":0,
"ObjectData":0,
"Health":1,
"Item":{
"Type":18,
"Count":0,
"NBT":null,
"IsEmpty":true,
"DisplayName":null,
"Lores":null,
"Damage":0
},
"Pose":0,
"Metadata":null,
"Equipment":{ }
}
}
OnEntityDespawn
Description:
Sent when an entity is de-spawned or leaves the player radius.
Parameters:
Entity
Type:
Entity json encoded object
Example:
{
"event": "OnEntityDespawn",
"data": {
"ID":15,
"UUID":"00000000-0000-0000-0000-000000000000",
"Name":null,
"CustomNameJson":null,
"IsCustomNameVisible":false,
"CustomName":null,
"Latency":0,
"Type":56,
"Location":{
"X":-38.818737210380526,
"Y":68,
"Z":194.05856433486986,
"Status":0,
"ChunkX":-3,
"ChunkY":8,
"ChunkZ":12,
"ChunkBlockX":9,
"ChunkBlockY":4,
"ChunkBlockZ":2
},
"Yaw":0,
"Pitch":0,
"ObjectData":0,
"Health":1,
"Item":{
"Type":396,
"Count":1,
"NBT":{ },
"IsEmpty":false,
"DisplayName":null,
"Lores":null,
"Damage":0
},
"Pose":0,
"Metadata":{
"8":{
"Type":396,
"Count":1,
"NBT":{
},
"IsEmpty":false,
"DisplayName":null,
"Lores":null,
"Damage":0
}
},
"Equipment":{ }
}
}
OnHeldItemChange
- Description:
Sent when a held item is changed.
Parameters:
itemSlot
Type:
integer
Example:
{
"event": "OnHeldItemChange",
"data": {
"itemSlot": 1
}
}
OnHealthUpdate
- Description:
Sent when player's health is updated.
Parameters:
health
Type:
float
food
Type:
int
Example:
{
"event": "OnHealthUpdate",
"data": {
"health": 18,
"food": 7
}
}
OnExplosion
- Description:
Sent when there is an explosion.
Parameters:
Location
Type:
Location json encoded object
strength
Type:
float
recordCount
Type:
int
Example:
{
"event": "OnExplosion",
"data": {
"location": {
"X": -117.49000000953674,
"Y": 66.0612500011921,
"Z": -26.490000009536743,
"Status": 0,
"ChunkX": -8,
"ChunkY": 8,
"ChunkZ": -2,
"ChunkBlockX": 10,
"ChunkBlockY": 2,
"ChunkBlockZ": 5
},
"strength": 4,
"recordCount": 139
}
}
OnSetExperience
- Description:
Sent when the player's experience is updated.
Parameters:
experienceBar
Type:
float
level
Type:
int
totalExperience
Type:
int
Example:
{ "event": "OnSetExperience", "data": { "experienceBar": 0.60504204, "level": 7, "totalExperience": 120 } }
OnGamemodeUpdate
- Description:
Sent when the player's game mode has changed.
Parameters:
playerName
Type:
string
uuid
Type:
string with UUID
gameMode
Type:
string
Example:
{
"event": "OnGamemodeUpdate",
"data": {
"playerName": "milutinke",
"uuid": "8c0e3dc3-9bcc-3e03-a138-53348330d4ee",
"gameMode": "creative"
}
}
OnLatencyUpdate
- Description:
Sent when the player's ping has changed.
Parameters:
playerName
Type:
string
uuid
Type:
string with UUID
latency
Type:
int
Example:
{ "event": "OnLatencyUpdate", "data": { "playerName": "someplayer", "uuid":"baa6eda2-cbc5-5119-870d-1960ce60574d", "latency": 14 } }
OnMapData
- Description:
Sent when map data is received.
Parameters:
mapId
Type:
int
scale
Type:
integer
trackingPosition
Type:
bool
locked
Type:
bool
icons
Type:
array of map icon object
columnsUpdated
Type:
integer
rowsUpdated
Type:
integer
mapColumnX
Type:
integer
mapRowZ
Type:
integer
colors
Type:
base 64 encoded string of colors
Example:
{
"event": "OnMapData",
"data": {
"mapId": 1,
"scale": 0,
"trackingPosition": true,
"locked": false,
"icons": [],
"columnsUpdated": 128,
"rowsUpdated": 128,
"mapColumnX": 0,
"mapRowZ": 0,
"colors": null // ommited in this example, too long
}
}
OnTradeList
- Description:
Sent when villager's trade list has been received/updated.
Parameters:
windowId
Type:
int
trades
Type:
List<VillagerTrade>
villagerInfo
Type:
VillagerInfo
OnTitle
- Description:
Sent when a title action has been received.
Parameters:
action
Type:
int
titleText
Type:
string
subtitleText
Type:
string
actionBarText
Type:
string
fadeIn
Type:
int
stay
Type:
int
fadeout
Type:
int
json_
Type:
string
OnEntityEquipment
- Description:
Sent when entity has changed or equipped equipment.
Parameters:
Entity
Type:
Entity json encoded object
(nullable)slot
Type:
int
item
Type:
Item?
Example:
{
"event": "OnEntityEquipment",
"data": {
"entity":{
"ID":8,
"UUID":"8c0e3dc3-9bcc-3e03-a138-53348330d4ee",
"Name":"someplayer",
"CustomNameJson":null,
"IsCustomNameVisible":false,
"CustomName":null,
"Latency":0,
"Type":77,
"Location":{
"X":-46.88311344939438,
"Y":68,
"Z":146.96050249975414,
"Status":0,
"ChunkX":-3,
"ChunkY":8,
"ChunkZ":9,
"ChunkBlockX":1,
"ChunkBlockY":4,
"ChunkBlockZ":2
},
"Yaw":178.59375,
"Pitch":28.125,
"ObjectData":-1,
"Health":20,
"Item":{
"Type":18,
"Count":0,
"NBT":null,
"IsEmpty":true,
"DisplayName":null,
"Lores":null,
"Damage":0
},
"Pose":0,
"Metadata":{
"6":0
},
"Equipment":{
"0":{
"Type":368,
"Count":1,
"NBT":{
"Damage":0
},
"IsEmpty":false,
"DisplayName":null,
"Lores":null,
"Damage":0
}
}
},
"slot":0,
"item":{
"Type":368,
"Count":1,
"NBT":{
"Damage":0
},
"IsEmpty":false,
"DisplayName":null,
"Lores":null,
"Damage":0
}
}
}
OnEntityEffect
- Description: Sent when there are effects applied to an entity.
Parameters:
Entity
Type:
Entity json encoded object
effect
Type:
Effects
amplifier
Type:
int
duration
Type:
int
flags
Type:
integer
Example:
{
"event": "OnEntityEffect",
"data": {
"entity": {
"ID": 50,
"UUID": "8c0e3dc3-9bcc-3e03-a138-53348330d4ee",
"Name": "milutinke",
"CustomNameJson": null,
"IsCustomNameVisible": false,
"CustomName": null,
"Latency": 0,
"Type": 77,
"Location": {
"X": -116.15188604696566,
"Y": 74.79847191937456,
"Z": -22.679173221632723,
"Status": 0,
"ChunkX": -8,
"ChunkY": 8,
"ChunkZ": -2,
"ChunkBlockX": 11,
"ChunkBlockY": 10,
"ChunkBlockZ": 9
},
"Yaw": 330.46875,
"Pitch": 9.84375,
"ObjectData": -1,
"Health": 20,
"Item": {
"Type": 18,
"Count": 0,
"NBT": null,
"IsEmpty": true,
"DisplayName": null,
"Lores": null,
"Damage": 0
},
"Pose": 0,
"Metadata": {
"9": 20,
"11": true,
"16": 122,
"17": 127
},
"Equipment": {}
},
"effect": 33,
"amplifier": 0,
"duration": 77,
"flags": 0
}
}
OnScoreboardObjective
- Description:
Sent when scoreboard objective has been added.
Parameters:
objectiveName
Type:
string
mode
Type:
integer
objectiveValue
Type:
string
type
Type:
int
json_
Type:
string
Example:
{
"event": "OnScoreboardObjective",
"data": {
"objectiveName": "testObj",
"mode": 0,
"objectiveValue": "Test Objective",
"type": 0,
"rawJson": "{\"text\":\"Testobj\"}"
}
}
OnUpdateScore
- Description:
Sent when scoreboard objective has been update/changed for an entity.
Parameters:
entityName
Type:
string
action
Type:
int
objectiveName
Type:
string
type
Type:
int
Example:
{
"event": "OnUpdateScore",
"data": {
"entityName": "test entity",
"action": 1,
"objectiveName": "test_objective",
"type": 1
}
}
OnInventoryUpdate
- Description:
Sent when the an inventory has been updated.
Parameters:
inventoryId
Type:
int
Example:
{
"event": "OnInventoryUpdate",
"data": {
"inventoryId": 4
}
}
OnInventoryOpen
- Description:
Sent when a player opens an inventory.
Parameters:
inventoryId
Type:
int
Example:
{
"event": "OnInventoryOpen",
"data": {
"inventoryId": 5
}
}
OnInventoryClose
- Description:
Sent when a player/server closes an inventory.
Parameters:
inventoryId
Type:
int
Example:
{
"event": "OnInventoryClose",
"data": {
"inventoryId": 4
}
}
OnPlayerJoin
- Description:
Sent when a player joins the server. (Not the bot)
Parameters:
uuid
Type:
string with UUID
name
Type:
string
Example:
{
"event": "OnPlayerJoin",
"data": {
"uuid": "8c0e3dc3-9bcc-3e03-a138-53348330d4ee",
"name": "milutinke"
}
}
OnPlayerLeave
- Description:
Sent when a player leaves the server. (Not the bot)
Parameters:
uuid
Type:
string with UUID
name
Type:
string
Example:
{
"event": "OnPlayerLeave",
"data": {
"uuid":"8c0e3dc3-9bcc-3e03-a138-53348330d4ee",
"name":"milutinke"
}
}
OnDeath
- Description:
Sent when the bot dies.
Parameters: None
Example:
{
"event": "OnDeath",
"data": null
}
OnRespawn
- Description:
Sent when the bot respawns.
Parameters: None
Example:
{
"event": "OnRespawn",
"data": null
}
OnEntityHealth
- Description:
Sent when an entity health changes/updates.
Parameters:
Entity
Type:
Entity json encoded object
(nullable)health
Type:
float
Example:
{
"event": "OnEntityHealth",
"data": {
"entity":{
"ID":78,
"UUID":"00000000-0000-0000-0000-000000000000",
"Name":null,
"CustomNameJson":null,
"IsCustomNameVisible":false,
"CustomName":null,
"Latency":0,
"Type":15,
"Location":{
"X":-47.5,
"Y":68,
"Z":146.5,
"Status":0,
"ChunkX":-3,
"ChunkY":8,
"ChunkZ":9,
"ChunkBlockX":0,
"ChunkBlockY":4,
"ChunkBlockZ":2
},
"Yaw":30.9375,
"Pitch":0,
"ObjectData":0,
"Health":3,
"Item":{
"Type":18,
"Count":0,
"NBT":null,
"IsEmpty":true,
"DisplayName":null,
"Lores":null,
"Damage":0
},
"Pose":0,
"Metadata":{
"9":4
},
"Equipment":{
}
},
"health":3
}
}
OnEntityMetadata
- Description:
Sent when entity's metadata has been received/updated/changed.
Parameters:
Entity
Type:
Entity json encoded object
metadata
Type:
Object of number as a key and object as value
(nullable)
Example:
{
"event": "OnEntityMetadata",
"data": {
"entity":{
"ID":78,
"UUID":"00000000-0000-0000-0000-000000000000",
"Name":null,
"CustomNameJson":null,
"IsCustomNameVisible":false,
"CustomName":null,
"Latency":0,
"Type":15,
"Location":{
"X":-47.5,
"Y":68,
"Z":146.5,
"Status":0,
"ChunkX":-3,
"ChunkY":8,
"ChunkZ":9,
"ChunkBlockX":0,
"ChunkBlockY":4,
"ChunkBlockZ":2
},
"Yaw":30.9375,
"Pitch":0,
"ObjectData":0,
"Health":3,
"Item":{
"Type":18,
"Count":0,
"NBT":null,
"IsEmpty":true,
"DisplayName":null,
"Lores":null,
"Damage":0
},
"Pose":0,
"Metadata":{
"9":3
},
"Equipment":{
}
},
"metadata":{
"9":3
}
}
}
OnPlayerStatus
- Description:
Sent when player's status has been updated/changed.
Parameters:
statusId
Type: integer
Example:
{
"event": "OnPlayerStatus",
"data": {
"statusId": 5
}
}
OnNetworkPacket
- Description:
Sent when player's status has been updated/changed.
Parameters:
packetId
Type:
integer
isLogin
Type:
boolean
Description: Is the packet sent during the
login
phase. (Alwaysfalse
)isInbound
Type:
integer
Description: Is the packet sent from the server or by the MCC.
packetData
Type:
array of bytes
Description: A raw byte array.