collab-socketv0.4.0

WebSocket relay for real-time collaborative editing in Content.One. Relays presence, cursors, and typing events between users editing the same content item.

0
active rooms
0
connections

Client SDK

<script src="https://collab.socket.content.one/collab.min.js"></script>

Quick start

const collab = new ContentOneCollab({
  serverUrl: "wss://collab.socket.content.one",
  roomId: "8-instanceZuid",  // just the instance GUID — everyone in this instance shares the room
  token: document.cookie.match(/APP_SID=([^;]+)/)?.[1],
  onUserJoined: (user, users) => console.log(user.userName + " joined"),
  onMouseMove:  (userId, x, y) => moveRemoteCursor(userId, x, y),
  onTyping:     (userId, field, value) => showRemoteTyping(userId, field, value),
});
collab.connect();

// Broadcast presence so peers know your app + current page
const presence = JSON.stringify({ app: location.hostname, resource: location.pathname });
collab.sendTyping("__presence__", presence, 0, 0);

document.addEventListener("mousemove", (e) =>
  collab.sendMouseMove(e.clientX, e.clientY)
);

// Re-broadcast on navigation
window.addEventListener("popstate", () => {
  const p = JSON.stringify({ app: location.hostname, resource: location.pathname });
  collab.sendTyping("__presence__", p, 0, 0);
});

Health

GET https://collab.socket.content.one/health  →  200 ok