안전센터 (SOS · 낙상 · 보이스피싱)

시니어 생명을 지키는 마지막 안전망

17
9:16📶 🔋

🛡 안전센터

🆘
긴급 SOS
3초간 길게 누르세요
📞
보이스피싱
신고/확인
🚨
낙상 감지
모드
📍
안심 외출
가족 위치공유
🚗
고령운전
리포트

🚨 비상 연락 (자동 알림 대상)

📞 큰딸 이지영 ● 1순위
📞 아들 김준호 ● 2순위
📞 119 ● 자동

SOS 흐름 (5초 룰)

0초SOS 3초 길게 누름 (또는 "도와줘" 음성)
3초5초 카운트다운 (취소 가능)
8초자동 화상 시작 + GPS 전송 + 진동/사이렌
8초가족 1순위 SMS + 푸시 + 자동 전화
30초가족 응답 없으면 → 2순위 → 119

🚨 낙상 감지

  • 스마트폰 가속도계로 급격한 충격 + 30초 무동작 감지
  • 화면에 "괜찮으세요?" 표시 — 10초 응답 없으면 SOS 자동 발동
  • 거짓 알람 방지: 사용자 활동 패턴 학습

📞 보이스피싱 방어

  • 모르는 번호 수신 시 화면에 큰 경고: "받기 전 한 번 더 생각하세요"
  • "검찰", "수사관", "계좌이체" 키워드 음성 감지 → 즉시 차단 안내
  • 금융감독원 보이스피싱 DB 연동 (실시간 번호 확인)
  • 의심 통화 녹음 → AI 분석 → 가족에게 보고서

📍 안심 외출 모드

활성화 시:

  • GPS 위치 가족과 5분마다 공유
  • 설정한 안전구역 이탈 시 가족 알림
  • 30분 무동작 시 안부 확인 푸시
  • 치매 어르신 보호자에게 특히 유용

SOS 발동 코드 (실사용)

async function triggerSOS(){
  navigator.vibrate([1000,200,1000,200,1000]); // 진동
  speechSynthesis.speak(new SpeechSynthesisUtterance('긴급 신고가 시작됩니다. 가족에게 연락합니다.'));

  const pos = await new Promise(r => navigator.geolocation.getCurrentPosition(r));

  await fetch('/api/v1/sos/trigger', {
    method:'POST',
    headers:{'Authorization':'Bearer '+token},
    body:JSON.stringify({
      lat: pos.coords.latitude, lng: pos.coords.longitude,
      battery: await navigator.getBattery().then(b => b.level),
      timestamp: Date.now()
    })
  });

  startEmergencyVideo(); // 자동 화상
}