Events
Receive collab:cursor-move
Remote cursor position update (percentage coordinates).
server → client on the
collab channel. Socket.IO event name: collab:cursor-move.Remote cursor position update (percentage coordinates).
Client -> server -> all other sockets in the same /chat/{chatId} namespace. The server spreads the client payload and appends the authenticated user identity (userId, displayName, color, avatarUrl), the annotationColor assigned on collab:join and a timestamp; client supplied values for those keys are overwritten.
Payload: collab:cursor-move
Payload of the 'collab:cursor-move' socket event.
| Property | Type | Required | Description |
|---|---|---|---|
x | number | no | Client supplied X position as a percentage of the asset area. |
y | number | no | Client supplied Y position as a percentage of the asset area. |
visible | boolean | no | Client supplied visibility flag. |
userId | string | no | Authenticated user ID (server supplied, cannot be spoofed). |
displayName | string | null | no | Display name (falls back to first + last name). |
color | string | null | no | The user's profile colour. |
avatarUrl | string | null | no | keyPath of the user's avatar thumbnail file, if any. |
annotationColor | string | no | Annotation colour assigned to this user for the collab session. |
timestamp | integer | no | Server time in milliseconds since epoch when the event was relayed. |