Writing Board - Real-time Collaboration API for iOS
wss://hsh-server.com/ws-stomp
/user/queue/errors채팅 메시지 전송
Request Body:{
"content": "string" // max 2000자
}
채팅 메시지 수신
Response:{
"id": "string",
"roomUuid": "string",
"senderId": number,
"senderName": "string",
"senderProfileImage": "string",
"content": "string",
"messageType": "TEXT | SYSTEM",
"timestamp": "ISO-8601"
}
WebRTC 시그널 전송
Request Body:{
"signalType": "OFFER | ANSWER | ICE_CANDIDATE | JOIN | LEAVE",
"data": "string" // max 10000자
}
WebRTC 시그널 수신
Response:{
"roomUuid": "string",
"senderId": number,
"senderName": "string",
"signalType": "OFFER | ANSWER | ICE_CANDIDATE | JOIN | LEAVE",
"data": "string",
"timestamp": "ISO-8601"
}
PencilKit 드로잉 스트로크 전송 (ADD/REMOVE만 가능, SNAPSHOT은 REST API 사용)
Request Body:{
"type": "ADD | REMOVE", // SNAPSHOT은 WebSocket 불가
"roomAssetId": number,
"pageIndex": number, // 0-999
"strokeId": "string", // max 100자
"strokeData": "string", // max 100000자 (PencilKit binary data)
"version": number // optional
}
드로잉 스트로크 수신 (실시간 동기화)
Response:{
"roomUuid": "string",
"roomAssetId": number,
"senderId": number,
"senderName": "string",
"type": "ADD | REMOVE",
"pageIndex": number,
"strokeId": "string",
"strokeData": "string",
"version": number,
"timestamp": "ISO-8601"
}