크라우니메신저 v3 — Phase 6 실사용 통합
개요
Phase 4(소버린화)·Phase 5(글로벌화)의 한선씨 모듈을 라이브 시스템 (JS 런타임 서버 + Web UI)에 연결. 이제 실제로 클릭해서 사용 가능.
지금까지 신규 기능이 한선씨 정본 모듈로만 존재하고 라이브 시스템엔 핸들러/UI가 없어서 실사용 불가였다. Phase 6에서 이 갭을 해소.
작업 내용
1. JS 런타임 서버 (ws-server-v3.js)
- 1,419줄 → 2,151줄 (+732줄)
- 29개 신규 핸들러 추가 (Phase 4: 18, Phase 5: 11)
- 28개 신규 메시지 타입 디스패치
- 신규 인메모리 저장소 14개: voiceMsgs, profiles, handleIndex, identities, wallets, txHistory, walletRequests, invites, pairSessions, backups, discoverIndex, richPresence, userLang, anchorQueue
node -c검증 통과
| 핸들러군 | 타입 |
|---|---|
| 음성 | VOICE_MSG, VOICE_STT |
| 프로필 | PROFILE_UPDATE/GET/SEARCH |
| 신원 | IDENTITY, IDENTITY_CERT |
| 지갑 | WALLET_LINK/SEND/REQUEST/BALANCE |
| 초대 | INVITE_CREATE/USE/CANCEL |
| QR페어링 | PAIR_START/SCAN/APPROVE/REJECT/STATUS |
| 백업 | BACKUP_REQUEST/READY/RESTORE |
| 발견 | DISCOVER (해시 k-anonymity) |
| 상태 | PRESENCE_RICH, STATUS_SET, PRIVACY_SET |
| 앵커/i18n | ANCHOR, I18N |
2. Web UI (index.html)
- 1,582줄 → 2,989줄 (+1,408줄)
- 55개 신규 함수, JS 문법 검증 통과
- 음성 메시지 — PTT/탭 이중 모드, MediaRecorder, 24-bar 파형 + 재생
- 프로필 편집 모달 — @핸들/이름/소개/상태/아바타
- QR 페어링 모달 — QR 표시(자체 캔버스)/카메라 스캔
- 초대 링크 모달 — 링크 생성 + 복사 + QR
- 백업/복원 모달 — 프로그레스바,
.crb파일 다운/업 - 친구 찾기 모달 — SHA-256 해시 검색
- 상태 표시 — presence dot 오버레이 + 상태메시지
- 언어 선택기 — 12개 언어, RTL(아랍어) 전환, placeholder i18n
- 지갑 패널 — FONE/CRN/CRM 잔액 그라디언트 카드
- 채팅 송금 — 첨부 메뉴 "💸 송금", 금액+원화 카드 버블
- 송금 요청(조르기) — "🙏 요청", 인라인 보내기 버튼
3. 한선씨 웹 UI 동반 (정본 동기화)
UI컴포넌트.한선— 399줄 → 705줄 (+306): 음성/송금/송금요청 버블, 프로필편집/언어선택기/QR/초대/지갑 HTML, Phase4 CSS앱.한선— 448줄 → 745줄 (+297): WS 수신 핸들러 8종, 앱 메서드 14종, wsRecv 디스패처 신규 분기- 두 파일 모두 컴파일 exit 0
검증
| 항목 | 결과 |
|---|---|
| 한선씨 컴파일 | 50/50 (100%) |
JS 서버 node -c | PASS |
| index.html JS 문법 | PASS |
| 신규 타입 디스패치 | 28개 확인 |
| 서버 재시작 | 정상 (WS:9751, HTTP:9754, SPA:9752) |
| SPA/manifest/sw/icons | 전부 HTTP 200 |
최종 통계
| 항목 | 수치 |
|---|---|
| 한선씨 파일 | 50개, 21,766줄 |
| JS 서버 | 2,151줄 |
| Web UI | 2,989줄 |
| 전체 | 약 27,000줄 |
| 서버 | v3.0.0 가동중, talk.crowny.org |
실사용 가능 기능 (카카오톡 대체)
이제 talk.crowny.org 접속 → PWA 설치 → 일상 사용:
- 텍스트·이미지·파일·음성메시지
- 그룹·채널, 답장·전달·수정·삭제·리액션·고정
- 투표·위치·연락처·사라지는메시지·@멘션·슬로우모드
- 통화(음성/영상), 스티커, 봇, AI @크라우니
- 음성 녹음(PTT), 채팅 송금(FONE), 프로필 @핸들
- 12개 언어, QR 기기 페어링, 초대 링크, 백업/복원
- 친구 찾기(해시), 상태 표시, 통합 신원/지갑
잔여 작업
- WS 기능 E2E 테스트 (Node 25 네이티브 WebSocket 핸드셰이크 이슈로 스모크 테스트 보류 — 브라우저는 정상)
- 음성메시지 실제 업로드 엔드포인트
- 지갑
_뱅크송금→ bank.crowny.org:9400 실 API - 실 Ed25519 (JS WebCrypto)
관련 파일
- JS 서버:
/Users/ef/CrownyOS/apps/메신저/v3/서버/ws-server-v3.js - Web UI:
/Users/ef/CrownyOS/apps/메신저/v3/웹v3/index.html - 한선씨 웹UI:
웹v3/UI컴포넌트.한선,웹v3/앱.한선 - 이전 단계:
2026-05-22-crowny-messenger-v3-global.md