알림 발동 조건 상세

알림이 예상대로 오지 않을 때 참고하는 기술 레퍼런스 페이지입니다. 시스템 자동 알림과 사용자 등록 일정 모두 여러 조건을 통과해야 최종적으로 발송됩니다.


공통 차단 조건 (모든 알림에 적용)

스케줄 시간이 맞아도 아래 조건 중 하나라도 해당하면 알림이 차단됩니다.

조건 상세 예외
전체 알림 비활성화 설정에서 알림을 끈 경우 없음
조용한 시간대 22:00 ~ 08:00 KST 사용자 직접 등록 일정
대화 중 마지막 메시지 전송 후 1시간 이내 사용자 직접 등록 일정
일일 한도 초과 하루 자동 알림 최대 3회 예산 경고, 사용자 직접 등록 일정
Job 개별 비활성화 알림 센터에서 해당 알림을 끈 경우 없음

사용자가 직접 등록한 일정(예: “매일 8시 운동 알림”)은 조용한 시간대, 대화 중, 일일 3회 한도를 모두 무시하고 발송됩니다. 단, 전체 알림 비활성화 및 스킬 게이트는 적용됩니다.


시스템 자동 알림별 발동 조건

주간 리포트

  • 실행 시간: 매주 월요일 09:00 KST
  • 필요 스킬: finance
  • 데이터 조건: 최근 30일 내 가계부 기록 존재
  • 피로도 검사: 적용

예산 경고

  • 실행 시간: 매시간 정각 (1시간마다)
  • 필요 스킬: budget
  • 데이터 조건:
    • 예산 카테고리가 1개 이상 설정되어 있을 것
    • 이번 달 해당 카테고리 지출 ≥ 예산의 90%
  • 피로도 검사: 조용한 시간대 / 대화 중 적용, 일일 3회 한도는 미적용

일일 소비 요약

  • 실행 시간: 매일 21:00 KST
  • 필요 스킬: finance
  • 데이터 조건: 오늘(KST) 가계부 기록 존재
  • 피로도 검사: 적용

비활성 리마인더

  • 실행 시간: 매일 20:00 KST
  • 필요 스킬: proactive
  • 데이터 조건:
    • 과거 가계부 기록은 존재하지만
    • 최근 3일간 가계부 기록이 없을 것
  • 피로도 검사: 적용

월말 결산

  • 실행 시간: 매월 28~31일 21:00 KST (실제 말일에만 실행)
  • 필요 스킬: finance
  • 데이터 조건: 이번 달 가계부 기록 존재
  • 추가 조건: 코드 내부에서 실제 해당 월의 마지막 날인지 재확인 (28~31일 크론 표현식은 말일 처리를 위한 것)
  • 피로도 검사: 적용

지출 이상 감지

  • 실행 시간: 3시간마다
  • 필요 스킬: finance
  • 데이터 조건:
    • 오늘(KST) 가계부 기록 존재
    • 7일 이상의 데이터 누적 필수
    • 오늘 지출 합계 > 30일 일평균의 200% 초과
  • 피로도 검사: 적용

패턴 인사이트

  • 실행 시간: 매일 14:00 KST
  • 필요 스킬: pattern
  • 데이터 조건:
    • knowledge_base에 패턴 분석 결과(pattern:analysis_result)가 저장되어 있을 것
    • (→ 매일 06:00 패턴 분석 백그라운드 작업이 선행되어야 함)
    • 패턴 신뢰도 ≥ 0.6
    • 저장된 패턴 트리거가 현재 요일/날짜와 일치
  • 피로도 검사: 적용

목표 달성 현황

  • 실행 시간: 매주 수요일 12:00 KST
  • 필요 스킬: goals
  • 데이터 조건: knowledge_basestatus='active'인 목표 존재
  • 피로도 검사: 적용

D-Day 알림

  • 실행 시간: 매일 08:00 KST
  • 필요 스킬: dday
  • 데이터 조건:
    • ddays 테이블에 등록된 항목 존재
    • 오늘이 D-30, D-7, D-3, D-1, D-0 중 하나에 해당
    • 반복(recurring) 항목은 올해 또는 내년 기준으로 날짜 계산
  • 피로도 검사: 적용

백그라운드 전용 작업 (알림 없음)

아래 작업들은 알림을 보내지 않고 데이터를 분석·저장만 합니다. 비활성화 불가.

패턴 분석

  • 실행 시간: 매일 06:00 KST
  • 필요 스킬: pattern
  • 조건: 최근 30일 내 가계부 기록 존재
  • 결과: knowledge_base.key='pattern:analysis_result'에 저장
  • 의존: 패턴 인사이트 알림의 선행 작업

대화 분석

  • 실행 시간: 10분마다 (조건 충족 시에만 실제 실행)
  • 필요 스킬: diary
  • 조건:
    • 사용자가 메시지를 보낸 이력 존재
    • 마지막 메시지 후 30분~2시간 사이 (idle 상태)
    • 조용한 시간대(22:00~08:00) 아님
    • 동일 idle 세션은 중복 분석 안 함
  • 결과: 대화 분석 결과 저장 (AI 기억 페이지에서 확인 가능)

목표 평가

  • 실행 시간: 매일 07:00 KST
  • 필요 스킬: goals
  • 조건: 활성 목표 존재
  • 결과: 평가 결과를 knowledge_base에 저장

주간 기억 압축

  • 실행 시간: 매주 월요일 05:00 KST
  • 필요 스킬: 없음 (항상 실행)
  • 조건: 최근 30일 내 가계부 기록 존재
  • 결과: 이전 주 일별 로그를 주간 요약으로 압축 저장

사용자 등록 일정

  • 실행 주기: 15분마다 활성 일정 전체 조회
  • 필요 스킬: schedule
  • 발동 조건:
    • 일정 status='active'
    • 현재 시각이 예약 시각의 ±15분 이내
    • 오늘 이미 발송하지 않았을 것 (last_sent 확인)
  • 일정 타입:
    • one_time: 지정 날짜+시각에 1회 발송 후 completed 처리
    • recurring: 요일+시각 기준 반복 발송, last_sent 갱신
피로도 항목 사용자 등록 일정
조용한 시간대 (22-08시) 무시
대화 중 (1시간 이내) 무시
일일 3회 한도 무시
전체 알림 비활성화 적용
스킬 게이트 (schedule) 적용

스킬 게이트 요약

각 알림에 필요한 스킬이 비활성화되어 있으면 알림이 발송되지 않습니다. 설정 > 스킬에서 확인하세요.

알림 필요 스킬 스킬 없을 때
주간 리포트 finance 발송 안 함
예산 경고 budget 발송 안 함
일일 소비 요약 finance 발송 안 함
비활성 리마인더 proactive 발송 안 함
월말 결산 finance 발송 안 함
지출 이상 감지 finance 발송 안 함
패턴 인사이트 pattern 발송 안 함
목표 달성 현황 goals 발송 안 함
D-Day 알림 dday 발송 안 함
사용자 등록 일정 schedule 발송 안 함
패턴 분석 (백그라운드) pattern 실행 안 함
대화 분석 (백그라운드) diary 실행 안 함
목표 평가 (백그라운드) goals 실행 안 함
주간 기억 압축 없음 항상 실행

트러블슈팅: 알림이 오지 않을 때

체크리스트 (위에서부터 순서대로 확인)

□ 1. 스킬 활성화 여부
      설정 > 스킬에서 해당 스킬이 켜져 있는지 확인

□ 2. Telegram 연동 여부
      설정 > 채널에서 텔레그램이 연동되어 있는지 확인

□ 3. 전체 알림 설정
      설정에서 알림이 활성화 상태인지 확인

□ 4. 개별 알림 활성화 여부
      알림 센터 > 시스템 탭에서 해당 알림이 켜져 있는지 확인

□ 5. 현재 시각 확인
      22:00 ~ 08:00 KST 사이라면 조용한 시간대 정책으로 차단됨

□ 6. 오늘 알림 횟수
      자동 알림은 하루 최대 3회. 이미 3개 이상 받았다면 자정 후 재시도

□ 7. 데이터 충분 여부
      - 지출 이상 감지: 7일 이상 데이터 필요
      - 패턴 인사이트: 패턴 분석 결과 및 신뢰도 0.6 이상 필요
      - 비활성 리마인더: 과거 기록 있고 최근 3일 기록 없어야 발동

□ 8. 사용자 등록 일정 - 시간 오차
      ±15분 윈도우 내에 시스템이 확인해야 발송됨
      15분마다 체크하므로 최대 15분 지연 가능

모든 스케줄 타임라인

시간 (KST) 실행 작업
05:00 (월요일) 주간 기억 압축
06:00 패턴 분석 (백그라운드)
07:00 목표 평가 (백그라운드)
08:00 D-Day 알림
09:00 (월요일) 주간 리포트
12:00 (수요일) 목표 달성 현황
14:00 패턴 인사이트
20:00 비활성 리마인더
21:00 일일 소비 요약, 월말 결산
매시간 정각 예산 경고
매 3시간 지출 이상 감지
매 10분 대화 분석 조건 확인
매 15분 사용자 등록 일정 확인

Copyright © 2025 StarNion. All rights reserved.  |  v0.1.1