본문으로 건너뛰기

콕 개요

문서 정보

  • 작성일: 2026-02-27
  • 최종 업데이트: 2026-02-27
  • 버전: v1.0.0

TL;DR

**콕(Kok)**은 녹화 중 중요한 순간을 마킹하는 기능입니다. 앱 버튼 또는 웨어러블 디바이스(Beacon)로 "그 순간을 콕!" 찍으면, 10분 단위 타임슬롯에 저장되고, 시청 시 리워드를 적립받을 수 있습니다.


목차

  1. 콕이란?
  2. 콕의 생성 과정
  3. 타임슬롯 구조
  4. 입력 소스
  5. 활성 콕과 비활성 콕
  6. 콕 시청과 리워드
  7. 전체 흐름
  8. FAQ

콕이란?

체육관에서 운동하는 모습이 녹화되는 동안, 득점 장면이나 멋진 플레이가 나왔을 때 그 순간을 기록하는 기능입니다.

비유하자면, 영상을 보면서 "여기!" 하고 손가락으로 콕 찍는 것과 같습니다. 콕을 찍어두면 나중에 그 순간만 골라서 다시 볼 수 있고, 시청하면 리워드도 받을 수 있습니다.

항목설명
무엇을녹화 중 중요한 순간을 마킹
어디서체육관 녹화 세션(일정) 중
어떻게앱 버튼 터치 또는 웨어러블 디바이스(Beacon)
하이라이트 구간을 빠르게 찾아보고, 리워드를 적립받기 위해
PLUS 멤버십 전용 기능

콕은 PLUS 패스 멤버십 사용자만 이용할 수 있습니다. 녹화 종료 후 콕 데이터가 자동으로 동기화되며, PLUS가 아닌 사용자의 콕 데이터는 동기화되지 않습니다.


콕의 생성 과정

콕은 사용자가 직접 "저장" 버튼을 누르는 것이 아니라, 녹화 종료 시점에 자동으로 생성됩니다.

단계별 설명

  1. 녹화 중: 사용자가 앱에서 콕 버튼을 누르면, 타임스탬프가 Firestore에 실시간으로 저장됩니다
  2. 녹화 종료: 서버가 Firestore에서 해당 세션의 모든 타임스탬프를 조회합니다
  3. 타임슬롯 계산: 각 타임스탬프의 시각을 기반으로 10분 단위 타임슬롯을 자동 계산합니다
  4. 활성/비활성 구분: 생성 제한(최대 30개)을 초과하는 콕은 비활성으로 분류됩니다
  5. 리워드 적립 대상 선정: 활성 콕의 50%가 리워드 적립 대상으로 선정됩니다
  6. 저장: 최종 결과가 데이터베이스에 저장됩니다

타임슬롯 구조

콕은 10분 단위 타임슬롯으로 그룹화되어 저장됩니다. 1시간은 6개의 타임슬롯으로 나뉩니다.

타임슬롯시간 범위예시 (15시 기준)
0xx:00 ~ xx:0915:00 ~ 15:09
1xx:10 ~ xx:1915:10 ~ 15:19
2xx:20 ~ xx:2915:20 ~ 15:29
3xx:30 ~ xx:3915:30 ~ 15:39
4xx:40 ~ xx:4915:40 ~ 15:49
5xx:50 ~ xx:5915:50 ~ 15:59

타임슬롯 내부 구조

각 타임슬롯 안에는 여러 개의 콕이 저장될 수 있습니다. 각 콕에는 다음 정보가 포함됩니다.

필드설명
timestamp콕을 찍은 절대 시각 (Unix 밀리초)
source입력 소스 (APP 또는 BEACON)
id고유 식별자 (Firestore 문서 ID)
offsetInMs타임슬롯 시작점으로부터의 오프셋 (0 ~ 600,000ms)
isActive활성 여부 (생성 제한 이내 = 활성)
isPointEligible리워드 적립 대상 여부
thumbnailCameraCode썸네일 표시용 카메라 코드
offsetInMs 예시

녹화가 15:30:00에 시작되고, 콕을 15:33:00에 찍었다면:

  • 타임슬롯: 3 (xx:30 ~ xx:39)
  • offsetInMs: 180,000ms (3분 = 180초 = 180,000ms)

이 오프셋 값은 영상 플레이어에서 해당 순간으로 이동할 때 사용됩니다.


입력 소스

콕은 두 가지 방법으로 입력할 수 있습니다.

소스설명사용 방법
APP앱에서 직접 입력앱 화면의 콕 버튼을 터치
BEACON웨어러블 디바이스 입력Beacon 디바이스의 버튼을 누름

두 소스 모두 동일하게 Firestore에 타임스탬프가 저장되며, 서버에서는 동일한 방식으로 처리됩니다. 소스 정보는 추적 및 통계 목적으로 기록됩니다.


활성 콕과 비활성 콕

콕에는 스케줄당 생성 제한이 있습니다. 제한을 초과하는 콕은 비활성으로 분류되어 보관만 됩니다.

구분설명시청 가능리워드 적립 가능
활성 콕생성 제한 이내의 콕OO (적립 대상인 경우)
비활성 콕생성 제한 초과분XX

콕 생성 제한

항목
스케줄당 최대 콕 생성 수30개
적용 방식시간순으로 앞에서부터 30개가 활성, 나머지는 비활성
비활성 콕

생성 제한을 초과하여 비활성이 된 콕은 사용자에게 노출되지 않습니다. 비활성 콕은 데이터베이스에 보관되지만, 시청이나 리워드 적립의 대상이 되지 않습니다.

활성/비활성 구분 예시

사용자가 한 스케줄에서 35번 콕을 찍은 경우


콕 시청과 리워드

콕을 시청하면 리워드를 적립받을 수 있습니다. 단, 모든 콕이 리워드를 주는 것은 아닙니다.

리워드 적립 조건

콕 시청으로 리워드를 받으려면 다음 모든 조건을 충족해야 합니다.

조건설명
PLUS 멤버십콕 시청 완료 API는 PLUS 멤버십 사용자만 호출 가능
활성 콕비활성 콕은 시청할 수 없음
리워드 적립 대상활성 콕의 50%만 적립 대상으로 선정됨 (콕 생성 시점에 결정)
사이클 한도멤버십 결제 사이클당 최대 적립 횟수 제한

리워드 적립 대상 선정

활성 콕의 정확히 50% (홀수면 올림)가 리워드 적립 대상으로 선정됩니다. 이 선정은 콕이 생성되는 시점에 결정되며, Hamilton's Method 알고리즘을 사용하여 타임슬롯별로 공정하게 배분됩니다.

활성 콕 수적립 대상 수비율
30개15개50%
7개4개57% (올림)
1개1개100% (올림)
상세 문서

리워드 적립 대상 선정의 알고리즘, 타임슬롯별 공정 배분 방식, 예시 시나리오에 대한 자세한 내용은 포인트 적립 대상 선정 문서를 참고하세요.


전체 흐름

콕의 생성부터 리워드 적립까지의 전체 흐름입니다.

흐름 요약

단계설명주요 동작
1. 녹화 중사용자가 중요한 순간에 콕을 찍음Firestore에 실시간 저장
2. 동기화녹화 종료 후 서버가 자동으로 콕 데이터를 처리타임슬롯 계산, 활성/비활성 구분, 적립 대상 선정
3. 시청사용자가 콕을 시청하면 리워드 적립 여부가 결정됨적립 대상 콕이면 리워드 지급

FAQ

Q: 콕은 누구나 사용할 수 있나요?

아닙니다. 콕은 PLUS 멤버십 사용자만 이용할 수 있습니다. FREE 패스 사용자는 콕 버튼을 누를 수 있지만, 녹화 종료 후 콕 데이터가 동기화되지 않습니다.

Q: 한 스케줄에서 콕을 몇 개까지 찍을 수 있나요?

Firestore에는 제한 없이 저장되지만, 서버에서 동기화할 때 최대 30개까지만 활성 콕으로 처리됩니다. 나머지는 비활성으로 보관됩니다.

Q: 콕을 시청하면 반드시 리워드를 받나요?

아닙니다. 리워드를 받으려면 해당 콕이 적립 대상이어야 합니다. 활성 콕의 50%만 적립 대상으로 선정되며, 사이클당 적립 횟수 한도도 있습니다.

Q: 어떤 콕이 적립 대상인지 미리 알 수 있나요?

아닙니다. 적립 대상 여부는 내부 로직으로만 관리되며, 사용자에게는 노출되지 않습니다. 시청 완료 후 결과만 확인할 수 있습니다.

Q: APP으로 찍은 콕과 BEACON으로 찍은 콕에 차이가 있나요?

기능적으로는 차이가 없습니다. 두 소스 모두 동일하게 처리되며, 소스 정보는 추적 및 통계 목적으로만 기록됩니다.

Q: 타임슬롯이 왜 10분 단위인가요?

콕을 시간대별로 효율적으로 조회하고 표시하기 위한 구조입니다. 1시간을 6개의 타임슬롯으로 나누어 영상 구간별로 콕을 쉽게 탐색할 수 있습니다.

Q: 녹화가 시간 경계(예: 15:55 ~ 16:10)를 넘으면 어떻게 되나요?

콕의 타임슬롯은 분(minute) 기준으로 계산됩니다. 15:55에 찍은 콕은 타임슬롯 5, 16:05에 찍은 콕은 타임슬롯 0에 저장됩니다. 시간 경계와 관계없이 정상 처리됩니다.


관련 문서

  • 포인트 적립 대상 선정 - 리워드 적립 대상 콕 선정 알고리즘 (Hamilton's Method)
  • 활동 보상 - 콕 시청 보상을 포함한 전체 활동 보상 시스템
  • 패스 - FREE / PLUS 패스 멤버십 정책
  • 마이콕 - 콕에서 파생된 마이콕(하이라이트 저장) 기능
  • 일정 - 콕이 속하는 녹화 일정(스케줄) 시스템
  • 도메인 맵 - 전체 도메인 관계도

변경 이력

버전날짜변경 내용
v1.0.02026-02-27초기 문서 작성
- 콕 개요 및 생성 과정 설명
- 타임슬롯 구조 설명
- 입력 소스(APP/BEACON) 설명
- 활성/비활성 콕 구분 설명
- 콕 시청과 리워드 적립 흐름 설명
- 전체 흐름 다이어그램 작성
- FAQ 작성