본문으로 건너뛰기
김찬호

360 CTI

완료

시그널360

진행률100%
WebAndroid
2026.02 ~
1명 (풀스택 + 안드로이드 개발)
₩18.5M

프로젝트 설명

콜센터 통화 녹취를 자동으로 수집·관리하는 시스템입니다. 상담원 앱이 통화를 자동 녹취하여 서버에 업로드하고, 관리자는 녹취 배분·실적 통계를, 고객사는 납품된 녹취를 열람할 수 있습니다.

  • Android WebView → Jetpack Compose 네이티브 전면 전환 (MainActivity 77% 축소)
  • 삼성 Galaxy 실폰 녹취 자동 업로드 + FileObserver 실시간 감지
  • 고객사 납품관리 워크플로우 (생성→선별→확정→회수→재납품) + 엑셀 다운로드

기술 스택

Next.js 16SupabaseAndroid KotlinJetpack ComposeFirebase FCM

아키텍처

상담원 (Android 네이티브)
  └─ Jetpack Compose + Material3
       ├─ 자동 녹취 (FileObserver 실시간 감지)
       ├─ Supabase Storage 업로드
       └─ ApiClient (REST + OkHttp + 토큰 자동 갱신)

관리자 / 고객사 (Web)
  └─ Next.js 16 (App Router)
       ├─ 관리자: 배분관리 / 실적통계 / SMS / 고객사관리
       ├─ 고객사: 납품 열람 / 엑셀 다운로드
       ├─ 상담원: 고객목록 / 녹취관리
       └─ Supabase (Auth + DB + Storage + RLS)

관리자/상담원/고객사 3역할 포탈. 상담원 Android 앱(Jetpack Compose)이 통화를 자동 녹취하여 Supabase Storage에 업로드하고, 관리자가 녹취를 배분·관리하며, 고객사에 납품합니다. WebView→Jetpack Compose 네이티브 전면 전환으로 77% 코드 축소.

주요 기능

자동 녹취 수집

삼성 Galaxy 자동 녹음 폴더를 FileObserver로 실시간 감지 → Supabase Storage 자동 업로드. 파일명에서 전화번호/날짜 파싱

Android 네이티브 전환

WebView → Jetpack Compose 전면 전환. MainActivity 779줄→180줄(77% 축소). Material3 테마 + Navigation Compose

상담원 배분관리

관리자가 녹취를 상담원에게 배분. 2차 담당자 배정 RPC로 N+1 쿼리 제거 (104개→2개)

고객사 납품 워크플로우

생성→선별→확정→회수→재납품 5단계 상태 관리. 대상 다중 필터 선별 + 스냅샷 보존 + 엑셀 다운로드

실적 통계

상담원별 통화/녹취/배분 통계. RPC로 오늘 통계 3쿼리→1쿼리 최적화

SMS 발송

상담원/템플릿 선택 → 고객에게 문자 발송. 모바일 커스텀 바텀시트 드롭다운

기능

#녹취 자동 업로드#상담원 배분관리#SMS 발송#고객사 납품#실적 통계#Android 네이티브

링크

GitHubPrivate
360 CTI (시그널360) 스크린샷