Realtime · Socket.IO
Chat & messaging
Join
javascript
socket.emit("chat:join", {
chatId: "64c3d4e5f678901234567890",
projectId: "6958511e8397f2dfa88090d8",
})socket.emit("chat:join", {
chatId: "64c3d4e5f678901234567890",
projectId: "6958511e8397f2dfa88090d8",
})Send message
javascript
socket.emit("message:send", {
chatId: "64c3d4e5f678901234567890",
projectId: "6958511e8397f2dfa88090d8",
type: "text",
content: "Hello",
replyTo: null,
mentions: [],
})socket.emit("message:send", {
chatId: "64c3d4e5f678901234567890",
projectId: "6958511e8397f2dfa88090d8",
type: "text",
content: "Hello",
replyTo: null,
mentions: [],
})Ack message:sent: { "messageId": "...", "timestamp": "..." }
Room message:new:
json
{
"message": { "_id": "...", "content": "Hello", "sender": "...", "chat": "...", "createdAt": "..." },
"chat": { "_id": "64c3...", "name": "Team", "type": "group" }
}{
"message": { "_id": "...", "content": "Hello", "sender": "...", "chat": "...", "createdAt": "..." },
"chat": { "_id": "64c3...", "name": "Team", "type": "group" }
}Other chat broadcasts
| Server event | Trigger |
|---|---|
message:reaction | message:react |
message:edited | message:edit |
message:deleted | message:delete |
messages:read | messages:mark:read |
participant:added / participant:removed / chat:updated | Chat service (REST or socket flows) |