diff --git a/docs/시스템_소개서-v2606-20260719.html b/docs/시스템_소개서-v2606-20260719.html new file mode 100644 index 0000000..7483841 --- /dev/null +++ b/docs/시스템_소개서-v2606-20260719.html @@ -0,0 +1,280 @@ + + +
+ + +서버실 통합 모니터링 · leak_sms_v3
+센서가 감지한 이상을 담당자 문자(SMS)로 즉시 알리고, 웹 대시보드에서 전체 현황을 + 한눈에 보는 시스템입니다. 이 문서는 시스템이 어떻게 동작하는지, 언제 누구에게 문자가 가는지, + 웹사이트에서 무엇을 볼 수 있는지를 정리합니다.
+ +현장 센서 장비(라즈베리파이)가 측정·감지한 값을 중앙 서버로 보내면, 서버가 이상 여부를 + 판정해 담당자에게 문자를 보내고 대시보드에 표시합니다. 이상 판정 기준은 모두 서버에 있어, + 장비를 다시 만지지 않고 값만 바꿀 수 있습니다.
+ +전송 구간은 전 노드 공통으로 HMAC-SHA256 서명해 위·변조를 차단합니다.
+ 판정 기준(임계값)은 서버 설정 파일 config.local.php 에서 현장에 맞춰 조정합니다.
| 노드 | 탑재 | 측정/감지 | 보고 주기(기본) |
|---|---|---|---|
| 누수 노드 | +누수 프로브 (필요 시 카메라·SHT30·PMS7003 확장) | +누수 유무 (확장 시 온습도·미세먼지·현장 사진) | +정상 10분 / 누수 중 10초 |
| 온습도 노드 | +SHT30 (온습도 모듈) | +온도 · 습도 | +1시간 |
| 상태 표시기 (선택) | +소형 디스플레이 (Zero 2 W) | +센서 아님 — 현황을 현장에 표시 | +— |
확장 시 미세먼지(PM)·온습도는 같은 노드에 함께 실려 하나의 현장 번호로 보고되며, + 서버가 종류를 구분해 별도로 판정합니다. 배선 상세는 센서 형태·내용 보고서를 참조하세요.
+이상이 생기면 해당 현장 담당자에게 문자가 즉시 발송됩니다. 문자는 짧은 단문(1건)으로
+ [종류] 위치 / 값·상태 / 시각 형식입니다.
현장(센서)마다 받을 담당자를 따로 지정합니다. 그 현장의 경보는 지정된 담당자에게만 갑니다.
SENSOR_RECIPIENTS
현장별 지정이 없으면 기본 담당자에게 갑니다. 시스템 공통 통지(정기점검·잔액)도 여기로.
SMS_RECIPIENTS
경보가 오래 미복구되면 상급/야간 담당에게 추가로 한 번 더 알립니다(에스컬레이션).
SMS_RECIPIENTS_TIER2
| 문자(태그) | 언제 가나 (기본값) | 수신 | 반복 억제 |
|---|---|---|---|
| [화재의심] | +미세먼지 PM2.5 > 35 또는 PM10 > 75 ㎍/㎥ (연기 급증 = 화재 조기징후) | +현장 담당 | 30분 |
| [고온경보] | 온도 > 30℃ | 현장 담당 | 30분 |
| [저온경보] | 온도 < 10℃ | 현장 담당 | 30분 |
| [고습경보] | 습도 > 70% | 현장 담당 | 30분 |
| [저습경보] | 습도 < 20% | 현장 담당 | 30분 |
| [결로주의] | 결로마진(온도−이슬점) ≤ 3℃ — 표면 결로·장비 손상 위험 | 현장 담당 | 30분 |
| [누수감지] | 누수 확정(60초 지속 확인 후). 물 튐 오탐 방지 | 현장 담당 | 30분 |
| [누수복구] | 누수 해소 확정(180초 지속 확인). 직전 감지가 있었을 때만 | 현장 담당 | 1회 |
| [정상복귀] | 온습도가 임계 안쪽으로 회복(여유 확보) 시 | 현장 담당 | 1회 |
| [장비 오프라인] | 보고가 끊김 — 누수/PM 노드 약 20분, 온습도 노드 약 125분 무응답 | 현장 담당 | 재시도 보장 |
| [장비 복구] | 끊겼던 통신이 재개될 때 | 현장 담당 | 1회 |
| [에스컬레이션] | 임계 경보가 30분 이상 미복구로 지속 → 2차(야간) 담당에게 추가 통지 | 2차(TIER2) | 에피소드당 1회 |
| [SMS 잔액부족] | 문자 발송 잔여가 30건 이하 — 경보 채널이 조용히 죽는 것 사전 방지 | 기본(전역) | 6시간 |
| [정기점검] | 매일 09시 이후 1회 — 센서 정상수·최근수신·잔여 요약(생존신호) | 기본(전역) | 1일 1회 |
“정기점검” 문자의 뜻: 매일 1통 오는 안부 문자입니다. 이 문자가 안 오면 경보 채널 + 전체(서버·문자망)에 문제가 있다는 신호이니 점검하세요. 즉, 담당자는 “이상 문자가 오면 대응, 안부 문자가 안 오면 점검”만 기억하면 됩니다.
+항온항습 환경 특성상 값이 원래 평탄하므로 “센서 값 고착” 경보는 꺼 두었습니다(정상 평탄값 오탐 방지).
+브라우저로 접속해 로그인(2단계 인증)하면 전 현장 현황을 한 화면에서 봅니다. 화면은 자동 새로고침됩니다.
+ +지금 가장 중요한 상태를 큰 글씨로. 경보 시 어느 센서·값·언제부터·문자 발송 결과까지 명시. 우선순위: 누수 → 화재의심 → 온습도 → 오프라인 → 정상.
경보 센서 · 오프라인(온라인 수) · 미복구 누수 · 오늘 경보 · SMS 잔여 · 중요 진단. 타일을 누르면 해당 탭으로.
즉시 조치가 필요한 것만 1줄씩. 위험 시 상황별 대응 체크리스트와 담당 연락처를 함께 표시.
| 탭 | 보는 내용 |
|---|---|
| 실시간 현황 live | +현장별 카드 — 온습도·화재감시(PM)·누수 상태와 최신 측정값, 오프라인/경보 배지. |
| 추이·통계 trend | +온습도 추이 차트, 화재감시(PM) 추이 차트, 7일 경보 추이, 경보 종류 도넛(30일), 경보 최다 센서 순위. |
| 이력 조회 history | +최근 온습도 측정 30건, 최근 화재감시(PM) 측정 30건, 문자 발송 이력. |
| 시스템 점검 system | +자가진단 결과, 적용 중인 임계·설정 요약, SMS 잔여·발송 실패 현황. |
| 전체(인쇄용) all | +위 탭을 한 페이지로 합본 — 출력·보고용. |
측정 추세를 분석해 경보가 발생하기 전 여유·도달 예상 시간(ETA)·이슬점 마진을 대시보드에 미리 표시하고, + 위험 시 대응 절차를 안내합니다(추가 장비·DB 변경 없이 기존 측정만으로 산출).
+ +상단 메뉴에서 위 부가 페이지로 이동할 수 있습니다.
+| 항목 | 기본값 | 항목 | 기본값 |
|---|---|---|---|
| 화재의심 PM2.5 | > 35 ㎍/㎥ | 고온 | > 30 ℃ |
| 화재의심 PM10 | > 75 ㎍/㎥ | 저온 | < 10 ℃ |
| 고습 / 저습 | > 70% / < 20% | 결로마진 | ≤ 3 ℃ |
| 경보 재발송 쿨다운 | 30 분 | 에스컬레이션 | 30 분 미복구 |
| 오프라인 판정(누수/PM) | 약 20 분 | 오프라인 판정(온습도) | 약 125 분 |
| SMS 잔액 경고 | ≤ 30 건 | 정기점검 발송 | 매일 09 시 |
모든 값은 서버 설정(config.local.php)에서 현장에 맞게 조정할 수 있으며, 현장 장비를 다시 만질 필요가 없습니다.
화재 감지 관련 유의: 미세먼지 센서(PMS7003)는 광학 먼지 센서로, 연기·먼지를 완벽히 + 구분하지 못합니다. 항온항습 서버실은 평상시 먼지가 거의 없어 먼지 급증을 화재의 조기 징후로 + 활용하는 것이며, 인증 화재감지기가 아닙니다. 보조 조기경보로 사용하고, 법정 소방 설비(인증 + 연기/열 감지기)는 별도로 병행해야 합니다.
+