bytes에 대한 Sum meter가 각 고객의 대역폭을 합산하므로 이에 따라 요금을 청구할 수 있습니다. 이 blueprint는 @dodopayments/ingestion-blueprints npm package에 trackStreamBytes()로 포함되어 있습니다.
사용 사례
Stream Blueprint는 다음과 같은 시나리오에 적합합니다:Video Platforms
비디오 대역폭 소비 및 스트리밍 품질에 따라 고객에게 요금을 청구합니다.
Music Streaming
구독 tier별로 사용자당 오디오 스트리밍 사용량을 추적합니다.
Live Events
라이브 스트림 소비량을 모니터링하고 대역폭 사용량에 따라 요금을 청구합니다.
Real-Time Data
IoT 및 telemetry 애플리케이션의 실시간 데이터 전송을 추적합니다.
비디오 및 오디오 스트리밍 플랫폼, 라이브 스트리밍 서비스, 실시간 데이터 애플리케이션에 사용할 수 있습니다.
빠른 시작
스트리밍 사용량을 추적하려면 package를 설치하고 meter를 생성한 다음 각 고객이 소비한 바이트를 전송합니다.1
Install the SDK
Dodo Payments Ingestion Blueprints package를 설치합니다:
2
Get Your API Keys
Dodo Payments dashboard의 Developer → API Keys에서 Dodo Payments API key를 생성하고
DODO_PAYMENTS_API_KEY environment variable에 저장합니다. 개발 중에는 test mode key를 사용하세요. test mode key는 test_mode에서만 작동합니다.3
Create a Meter
Dodo Payments dashboard에서 Products → Meters로 이동한 다음 Create Meter를 클릭합니다. 다음 field를 설정합니다:
- Meter Name:
Stream Bandwidth와 같은 설명이 포함된 이름입니다. - Event Name:
stream_consumption또는 직접 선택한 이름입니다. code의eventName와 대소문자를 구분하여 정확히 일치해야 합니다. - Aggregation Type: 스트리밍된 바이트를 합산하는 Sum입니다.
- Over Property: 대역폭 사용량에 따라 요금을 청구하기 위한
bytes입니다. - Measurement Unit:
bytes와 같이 invoice에 표시되는 단위입니다.
4
Track Stream Usage
고객 및 소비한 바이트 수와 함께
trackStreamBytes()를 호출합니다:구성
Ingestion 구성
다음 option을new Ingestion()에 전달합니다:
string
필수
dashboard에서 확인한 Dodo Payments API key입니다.
string
Environment mode:
test_mode 또는 live_mode입니다. 기본값은 test_mode입니다. 반면 Dodo Payments SDK는 기본값이 live_mode이므로, production에서는 live_mode를 명시적으로 설정하세요.string
필수
meter의 Event Name과 일치하는 event name입니다(대소문자 구분).
Track Stream Bytes option
다음 option을trackStreamBytes()에 전달합니다:
string
필수
스트림에 대한 요금을 청구할 Dodo Payments customer ID입니다. 예:
cus_123.number
스트림에서 소비한 바이트 수입니다. 대역폭 기반 청구에 필요합니다. 생략하면 이벤트에
bytes 값이 없지만 Count meter에는 계속 집계됩니다.object
스트림 유형, 품질 또는 session ID와 같은 스트림 관련 선택적 metadata입니다. 각 값은 string, number 또는 boolean이어야 합니다.
모범 사례
trackStreamBytes()를 호출할 때마다 별도의 event가 전송되며, Sum meter가 각 chunk를 합산합니다.