Search

기능정의서 상세보기

history

2025.4.29.화 그리드봇 알림 영향범위 추가(거래 스쿼드 의견 취합)
특정 변수 데이터 영향범위 포함
데이터 추적 항목 추가
보유자산 알림 상승/하락 분기 currentPrice 음/양 값으로 확인 가능하여 변수처리 제외
시스템 알림 설정 ON/OFF 이벤트 감지 시 API 호출 기준 정리
코인원 앱 오픈 시점에 앱내 이전 저장값과 다를 경우만 API 호출
앱 오픈 기준
종료 상태의 앱 실행 시
Background → Foreground 전환 시
2025.5.7.수
notification_sends 테이블 내 실제 푸시 발송 여부 필드명 확정 is_sent
푸시 오픈 이벤트 파라미터 message_id 속성명 변경 → system_notification_id
2025.5.9.금
시스템 알림 설정 API 호출 조건 변경 및 기기내 시스템 알림 설정값 초기화 조건 추가
2025.5.13.화
notification_settings 테이블 내 시스템 알림 설정 필드명 추가 → system_push_enabled

1. 기능 개요

실제 사용자가 수신한 알림 수와 오픈율을 파악하여 정확한 알림 영향도를 측정한다.
알림 본문 데이터 세분화
푸시 발송 여부 적재
푸시 오픈 이벤트 적재
시스템 알림 설정 값 적재

2. 개발 범위

Back-end
APP
데이터셀 작업

3. 기능 명세

알림 본문 데이터 세분화(6/12 정기배포건)

1. notification_sends 테이블 내 푸시 메세지 (타이틀/본문)의 특정 변수를 분리한다.
(일정 이슈로 5.8.0 영향범위에서 분리)
notifiaction.body 내 특정 변수 데이터 별도 적재
변수 데이터 정리(하단 표 - 상세 정리)
#{quantity} : 수량
#{symbol} : 종목(티커)
#{changePercent} : 등락률
#{currentPrice} : 현재가

빅쿼리상의 조회 데이터 형태 예시

AS-IS)
{ "notification": { "action": "coinoneapp://trading?tradingpair=GM-KRW", "body": "곰블 (GM) 매수평균가 대비 -40% 하락\n현재가 48.00원", "silent_mode": "false", "title": "보유자산 알림" } }
JSON
복사
TO-BE)
{ "notification": { "action": "coinoneapp://trading?tradingpair=GM-KRW", "body": "곰블 (GM) 매수평균가 대비 -40% 하락\n현재가 48.00원", "silent_mode": "false", "title": "보유자산 알림", "data": { "symbol": "GM", "changePercent": "-40", "currentPrice": "48.00" } } }
JSON
복사

해당 변수 분리 영향범위 정리

category
subcategory
notification.title
notification.body
notification.data
BASIC
PLUS_REWARD
{종목명} {데일리/스테이킹} 리워드 지급 완료
#{quantity}#{symbol} 지급이 완료되었어요
{ quantity : "", symbol : "" }
{종목명} {데일리/스테이킹} 외 {건수}건 리워드 지급 완료
#{quantity}#{symbol} 외 {건수}건의 리워드가 지급됐어요
{ quantity : "", symbol : "" }
STOP_ORDER_TRIGGER
[주문 실행] 예약가 {매수/매도} - {종목명}
감시가 도달 {감시가 금액} KRW / 주문 실행 {주문 금액} KRW #{quantity} #{symbol}
{ quantity : "", symbol : "" }
TRADE
{지정가/시장가/예약가} {매수/매도} 체결 - {종목명}
{금액} KRW #{quantity} #{symbol}
{ quantity : "", symbol : "" }
TRANSACTION
{입금/출금} 완료
{종목명}(#{symbol}) #{quantity} {티커} {입금/출금} 완료
{ quantity : "", symbol : "" }
{입금/출금} 완료
원화(#{symbol}) {금액}원 {입금/출금} 완료
{ symbol : "***" }
GRID_OUT_OF_BOUNDS
[AI 그리드] 가격범위 이탈 - {종목명}(#{symbol})
현재가 #{currentPrice}원
{ symbol : "", currentPrice : "" }
QUOTES
HELD_ASSETS_RANGE_CHANGE
보유자산 알림
{종목명} (#{symbol}) 매수평균가 대비 #{changePercent}% {상승/하락}\n현재가 #{currentPrice}원
{ symbol : "", changePercent : "", currentPrice : "***" }
LIMIT_PRICE
지정가 도달
{종목명} (#{symbol}) 목표가 도달\n현재가 #{currentPrice}원
{ symbol : "", currentPrice : "" }
PRICE_RANGE_DOWN
구간 하락 알림
{종목명} (#{symbol}) #{changePercent}% 하락\n현재가 #{currentPrice}원
{ symbol : "", changePercent : "", currentPrice : "***" }
PRICE_RANGE_UP
구간 상승 알림
{종목명} (#{symbol}) #{changePercent}% 상승\n현재가 #{currentPrice}원
{ symbol : "", changePercent : "", currentPrice : "***" }
PRICE_RECENT_HIGH
신고가 알림
{종목명} (#{symbol}) 7일 신고가 갱신\n현재가 #{currentPrice}원
{ symbol : "", currentPrice : "" }
PRICE_RECENT_LOW
신저가 알림
{종목명} (#{symbol}) 7일 신저가 갱신\n현재가 #{currentPrice}원
{ symbol : "", currentPrice : "" }
TIME_INTERVAL
시간 알림
{종목명} (#{symbol}) {hh:mm} 기준\n현재가 #{currentPrice}원
{ symbol : "", currentPrice : "" }
UP_DOWN_FROM_CLOSE
전일대비 알림
{종목명} (#{symbol}) 전일 종가 대비 #{changePercent}% {상승/하락}\n현재가 #{currentPrice}원
{ symbol : "", changePercent : "", currentPrice : "***" }

푸시 발송 여부 적재

1. notification_sends 테이블 내 실제 푸시 발송 여부 칼럼을 추가한다.
실제 푸시 발송 여부 is_sent 칼럼 추가
false : 실제 발송 X
true : 실제 발송 O
ON/OFF 값과 관계없이 적재되는 알림 항목
일반알림
커뮤니티 알림
내 포스트
좋아요

푸시 오픈 이벤트 적재

1. 유저가 시스템 알림 오픈 시점에 푸시 데이터를 firebase에 적재한다.
현재 푸시 발신 시 FCM 을 통해서 message_id 와 category, subcategory 를 data에 담아서 발신
시스템 알림 오픈 시점에 아래 이벤트 적재 (Tracking Plan id=877 항목)
event_name : system_notification_open
event_params
system_notification_id
category
subcategory

시스템 알림 설정 값 적재

1. 시스템 알림 설정 ON/OFF 이벤트 감지 시 API 호출한다.
시스템 알림 설정 API 호출 조건
1.
앱 오픈 시점 (앱 cold start 또는 background → foreground)
사용자 로그인 상태이면서
기기내 이전 저장된 시스템 알림 설정 값이 없거나 현재 시스템 설정 값과 다를 경우
2.
코인원 앱 로그인 시점
기기내 시스템 알림 설정값 초기화 조건
코인원 앱 로그아웃 시
2. notification_settings 테이블 내 시스템 알림 설정 ON/OFF 여부 칼럼 추가 및 변경 값을 적재한다.
코인원 앱 시스템 알림 설정 ON/OFF 여부 system_push_enabled 칼럼 추가
false : 설정 OFF
true : 설정 ON

4. API 명세

API 문서 링크 https://krdev-notification-gateway.coinone.me/swagger-ui/index.html?urls.primaryName=notification