close(code, reason)
ws.close() 부르면 close handshake 시작 — 브라우저가 close frame 보내고, 서버가 close frame 으로 답하고, 밑의 TCP socket 닫혀. close code 와 reason 옵션으로 넘겨. reason 은 UTF-8 string, max 123 byte — 'session expired' 정도엔 충분하고 close frame 가볍게 유지하는 데 충분히 짧아.
Application close code (4000-4999)
4000-4999 범위는 application-defined code 용. protocol 에 stable 한 거 몇 개 골라 — 4001 unauthorized, 4029 too many connections, 4040 room not found — 그러면 클라가 깔끔히 분기 가능. application logic 에서 1xxx code (1001 이나 1011 같은 거) 안 쓰는 게 좋아; RFC 의미 있어.
wasClean 이 진실 알려줘
close 이벤트의 wasClean boolean. true 면 제대로 close handshake 완료; code 의미 있어. false 면 connection 죽음 — code 는 보통 1006 이고 reason 은 비어있어.