presence-room-42
실시간 채팅
presence 채널 위의 방, 멤버십, 입력 중 표시.
활용 사례
같은 것을 편집하는 두 사람에게는 계속 세 가지 답이 필요합니다. 또 누가 있는지, 방금 무엇을 했는지, 커서가 어디에 있는지. presence와 이벤트, 클라이언트 이벤트가 차례로 그것을 답합니다.
클라이언트 이벤트는 속도 제한이 있고 저장되지 않습니다. 커서에는 맞지만 편집에는 맞지 않습니다. 새로고침해도 남아야 하는 것은 서버를 거칩니다.
const doc = pusher.subscribe('presence-doc-9f2')// Ephemeral: straight between editors, never persisted.canvas.onpointermove = throttle((e) => { doc.trigger('client-cursor', { x: e.clientX, y: e.clientY })}, 50)// Durable: your server persisted it, then published it.doc.bind('block-updated', (block) => applyBlock(block))공식 Pusher 라이브러리를 손대지 않고 그대로 써서 작성했습니다. 설치할 PushCaster 패키지는 없습니다. 전체 문서