Chat Command Signed
Play 0x08, client → server.
play · 0x08 · serverbound (client → server)
Executes a command that has signed message arguments (for example /msg or /say). Alongside command, it carries timestamp, salt, one signature per signed argument, and the last-seen acknowledgement bitset with checksum. The server verifies the signatures against the player’s chat session before running the command.
Sent by the client, read by the server. Listen for it with client.on("ChatCommandSigned", (data) => …) on the receiving side.
Fields
| Field | Type | Notes |
|---|---|---|
command |
String | |
timestamp |
Long | |
salt |
Long | |
argumentSignatures |
Array | |
messageCount |
VarInt | |
acknowledged |
Byte[] | |
checksum |
UByte |
Send it
await client.sendPacket("ChatCommandSigned", {
command: /* String */,
timestamp: /* Long */,
salt: /* Long */,
argumentSignatures: /* Array */,
messageCount: /* VarInt */,
acknowledged: /* Byte[] */,
checksum: /* UByte */,
});
Field aliases listed under Notes are accepted as alternative keys when writing.
Source: src/Core/Versions/776/Packets/play/serverbound/ChatCommandSigned.ts