Events
Emit typing:start
Ephemeral typing indicator.
client → server on the
resource channel. Socket.IO event name: typing:start.Ephemeral typing indicator. Client -> server: emit { chatId }. Server -> clients: relayed with the authenticated userId to every other socket on the chat channels.
Client emits typing:start with { chatId: string }. The server resolves the same channels a chatCreateMessage for that chat would use (chat/{chatId}, project/{projectId}/{visibility}, public/{token}; never user/* channels) and emits typing:start on each of them to every socket except the sender. Not persisted; not delivered as a 'notification' event.
Payload: typing:start
Payload of the 'typing:start' socket event.
| Property | Type | Required | Description |
|---|---|---|---|
chatId | string (uuid) | no | Chat the typing indicator belongs to. |
userId | string (uuid) | no | User who is typing. Equals the AI system user ID when the AI assistant is composing a reply. |
timestamp | integer | no | Server time in milliseconds since epoch. |