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
