> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dodopayments.com/llms.txt
> Use this file to discover all available pages before exploring further.

# स्ट्रीम ब्लूप्रिंट

> वीडियो, ऑडियो, लाइव स्ट्रीम और रीयल-टाइम डेटा ट्रांसफर बिलिंग के लिए स्ट्रीमिंग डेटा खपत को ट्रैक करें।

## उपयोग के मामले

स्ट्रीम ब्लूप्रिंट द्वारा समर्थित सामान्य परिदृश्यों का अन्वेषण करें:

<CardGroup cols={2}>
  <Card title="Video Platforms" icon="video">
    वीडियो बैंडविड्थ खपत और स्ट्रीमिंग गुणवत्ता के आधार पर ग्राहकों को बिल करें।
  </Card>

  <Card title="Music Streaming" icon="music">
    सब्सक्रिप्शन स्तरों के लिए प्रत्येक उपयोगकर्ता के ऑडियो स्ट्रीमिंग उपयोग को ट्रैक करें।
  </Card>

  <Card title="Live Events" icon="signal-stream">
    लाइव स्ट्रीम खपत की निगरानी करें और बैंडविड्थ उपयोग के लिए शुल्क लें।
  </Card>

  <Card title="Real-Time Data" icon="wave-pulse">
    IoT और टेलीमेट्री एप्लिकेशन के लिए वास्तविक समय डेटा ट्रांसफर को ट्रैक करें।
  </Card>
</CardGroup>

<Info>
  वीडियो/ऑडियो स्ट्रीमिंग प्लेटफ़ॉर्म, लाइव स्ट्रीमिंग सेवाओं और वास्तविक समय डेटा एप्लिकेशन के लिए आदर्श।
</Info>

## त्वरित प्रारंभ

अपने ग्राहकों द्वारा खपत किए गए स्ट्रीमिंग बाइट्स को ट्रैक करें:

<Steps>
  <Step title="Install the SDK">
    ```bash theme={null}
    npm install @dodopayments/ingestion-blueprints
    ```
  </Step>

  <Step title="Get Your API Keys">
    * **Dodo Payments API Key**: इसे [Dodo Payments Dashboard](https://app.dodopayments.com/developer/api-keys) से प्राप्त करें
  </Step>

  <Step title="Create a Meter">
    अपने [Dodo Payments Dashboard](https://app.dodopayments.com/):

    * **Event Name**: `stream_consumption` (या अपनी पसंद का नाम)
    * **Aggregation Type**: `sum` कुल स्ट्रीम किए गए बाइट्स को ट्रैक करने के लिए
    * **Over Property**: `bytes` बैंडविड्थ उपयोग के आधार पर बिल करने के लिए
  </Step>

  <Step title="Track Stream Usage">
    <CodeGroup>
      ```javascript Video Streaming theme={null}
      import { Ingestion, trackStreamBytes } from '@dodopayments/ingestion-blueprints';

      const ingestion = new Ingestion({
        apiKey: process.env.DODO_PAYMENTS_API_KEY,
        environment: 'test_mode',
        eventName: 'stream_consumption'
      });

      // Track video stream consumption
      await trackStreamBytes(ingestion, {
        customerId: 'customer_123',
        bytes: 10485760, // 10MB
        metadata: {
          stream_type: 'video',
        }
      });
      ```
    </CodeGroup>
  </Step>
</Steps>

## कॉन्फ़िगरेशन

### इनजेशन कॉन्फ़िगरेशन

<ParamField path="apiKey" type="string" required>
  डैशबोर्ड से आपकी Dodo Payments API कुंजी।
</ParamField>

<ParamField path="environment" type="string" required>
  एनवायरनमेंट मोड: `test_mode` या `live_mode`.
</ParamField>

<ParamField path="eventName" type="string" required>
  मीटर कॉन्फ़िगरेशन के अनुरूप ईवेंट नाम।
</ParamField>

### स्ट्रीम बाइट्स विकल्प ट्रैक करें

<ParamField path="customerId" type="string" required>
  बिलिंग एट्रिब्यूशन के लिए ग्राहक आईडी।
</ParamField>

<ParamField path="bytes" type="number">
  स्ट्रीम में खपत किए गए बाइट्स की संख्या। बैंडविड्थ-आधारित बिलिंग के लिए आवश्यक।
</ParamField>

<ParamField path="metadata" type="object">
  स्ट्रीम से संबंधित वैकल्पिक मेटाडेटा जैसे स्ट्रीम प्रकार, गुणवत्ता, sessionId आदि।
</ParamField>

## सर्वोत्तम प्रथाएँ

<Tip>
  **Track by Chunk**: लंबी स्ट्रीम्स के लिए, पूरे स्ट्रीम के पूरा होने की प्रतीक्षा करने के बजाय खपत को चंक्स में ट्रैक करें।
</Tip>

<Warning>
  **Accurate Byte Counting**: यदि कुल बैंडविड्थ के लिए बिल कर रहे हैं तो सुनिश्चित करें कि बाइट काउंट में सभी ओवरहेड (हेडर, प्रोटोकॉल ओवरहेड) शामिल हों।
</Warning>
