# 행 추가 감시기 (Row Watch) — 크롬 확장

DB에서 불러와 표로 표시되는 화면을 주기적으로 보고 **행이 늘어나면(예: 3명→4명) 알림음**을 울립니다.
조회 버튼 자동 클릭과 30분 타임아웃 대비 시퀀스도 자동 수행합니다.
모든 조작은 **화면 위에 떠 있는 패널**에서 합니다(팝업 없음).
**캡처 이미지·인식 텍스트는 저장하지 않고 메모리에만 두며, 정지하거나 탭이 닫히면 즉시 사라집니다.**

## 1. 설치
1. 크롬 주소창에 `chrome://extensions`
2. 오른쪽 위 **개발자 모드** 켜기
3. **압축해제된 확장 프로그램을 로드** → 이 `qcode-monitor` 폴더 선택
4. 감시할 표가 있는 탭에서 툴바의 확장 아이콘을 클릭 → 화면에 **제어 패널**이 뜹니다
   (설치 전부터 열려 있던 탭이면 한 번 새로고침)

## 2. 제어 패널
패널 위쪽 손잡이(⠿)를 드래그해 어디로든 옮길 수 있습니다.

- **▶ / ■** : 시작 / 정지
- **상태 + 카운트다운** : "감시 중 · 다음 조회까지: 14초"처럼 실시간으로 줄어듭니다. 진행 중에는 "조회 클릭 중…", "화면 읽는 중…", "타임아웃 시퀀스 진행 중…"으로 바뀝니다.
- **확인** : 새 행이 감지되면 패널이 붉게 깜빡이고 알림음이 납니다. 확인을 누르면 멈춥니다.
- **✕** : 정지하고 패널 닫기
- **⚙ 설정** : 아래 설정 서랍을 펼칩니다.

## 3. ⚙ 설정 (패널 안에서 전부)
1. **감지 방식**
   - `OCR` : 화면 글자를 인식해 줄 수를 셉니다(어떤 화면이든 동작).
   - `DOM 행 개수` : 표가 일반 HTML `<table>`이면 더 정확(오탐 0). 가능하면 권장.
     - **표 선택자**에 표 영역 선택자를 넣으면 정확도 향상(예: `#grid`). 비우면 페이지 전체 기준.
2. **영역 지정** : 버튼 클릭 → 페이지에서 표 영역을 드래그. (드래그하는 동안 패널은 잠깐 숨겨집니다.)
3. **조회 주기** : 10초 / 30초 / 1분 / 직접 입력
4. **클릭 후 대기(ms)** : 조회 클릭 뒤 표가 새로 그려질 시간. 느리면 늘리세요.
5. **조회 시퀀스** : 매 주기에 누를 버튼. 보통 1단계 = "조회". `대상 지정` → 페이지에서 그 버튼을 클릭.
6. **타임아웃** : 체크 후 분(기본 30) 설정. 단계 예:
   - 1단계 다른 메뉴(A) / 대기 5000ms
   - 2단계 조회 페이지 / 대기 5000ms
   - 3단계 조회 버튼 / 대기 300ms
   이 시퀀스는 설정한 분마다 한 번 돌고, 평소엔 조회 시퀀스만 반복합니다.
7. ▶ 로 시작.

설정값은 자동 저장되어 다음에도 유지됩니다.

## 4. 꼭 알아둘 점
- 패널과 OCR 캡처는 **감시 대상 탭이 화면 앞에 떠 있을 때** 동작합니다. (클릭 자동화는 탭이 뒤에 있어도 됩니다.)
- 글자가 작으면(약 10pt) 크롬 줌(Ctrl + `+`)으로 키운 **뒤 영역을 지정**하면 OCR 정확도가 올라갑니다.
- 버튼은 좌표가 아니라 "대상 지정(클릭으로 선택)"으로 잡으므로 창 크기가 바뀌어도 안정적입니다(선택자→텍스트→좌표 순 자동 보정).
- 스캔 영역이 10cm×10cm 정도로 작아도 문제없습니다. 패널은 그보다 넓게 영역 아래(또는 위)에 자동 배치됩니다.

## 5. 개인정보
- 캡처 이미지·OCR 텍스트는 디스크나 storage에 저장하지 않고 매 주기 덮어쓰며 메모리에만 존재합니다.
- 정지하거나 감시 탭/창을 닫으면 백그라운드 처리 문서가 종료되어 관련 메모리가 모두 회수됩니다.
- 저장되는 것은 설정값(주기·버튼 위치 등 비개인정보)뿐입니다.
- OCR(Tesseract.js)과 한국어/영어 데이터는 확장에 내장되어 **외부 전송 없이 로컬에서** 동작합니다.
