피드로 돌아가기
Hacker NewsHacker News
Backend

whatsmeow 기반 local sync 및 SQLite FTS5 활용 WhatsApp CLI 설계

Peter Steinberger – WhatsApp CLI: sync, search, send

2026년 4월 15일3intermediate

Context

WhatsApp Web 프로토콜의 휘발성 데이터 구조로 인한 메시지 이력 관리의 어려움 존재. 기존 인터페이스의 제약으로 인한 빠른 오프라인 검색 및 자동화된 메시지 제어 필요성 증대.

Technical Solution

  • whatsmeow 라이브러리 기반 WhatsApp Web 프로토콜 구현을 통한 메시지 캡처 구조 설계
  • SQLite FTS5(Full-Text Search) 엔진 도입을 통한 대규모 메시지 데이터의 고속 오프라인 검색 구현
  • Best-effort Local Sync 전략을 통한 메시지 히스토리의 로컬 DB 동기화 및 영속성 확보
  • Anchor-based Backfill 메커니즘을 활용하여 로컬 최古 메시지를 기준으로 폰(Primary Device)에서 과거 데이터 요청
  • --json 플래그 기반의 Machine-readable 출력 지원으로 외부 스크립트와의 파이프라인 연동 최적화
  • WACLI_DEVICE_PLATFORM 환경 변수를 통한 Linked Device 플랫폼 식별자 커스텀 제어

1. 외부 API의 데이터 유실 가능성을 고려한 Local Mirroring DB 구축 검토

2. 대량 텍스트 검색 성능 향상을 위해 일반 Index 대신 FTS(Full-Text Search) 확장 모듈 적용

3. 데이터 백필(Backfill) 구현 시 서버 부하 방지를 위한 Request Count 및 배치 사이즈 제한 설정

원문 읽기