> ## 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">
    تعقب نقل البيانات في الوقت الفعلي لتطبيقات إنترنت الأشياء والقياسات عن بعد.
  </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 الخاص بك من لوحة التحكم.
</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">
  بيانات وصفية اختيارية عن البث مثل نوع البث والجودة ومعرّف الجلسة، إلخ.
</ParamField>

## أفضل الممارسات

<Tip>
  **التتبع حسب القطع**: بالنسبة للبث الطويل، تتبّع الاستهلاك على شكل قطع بدلًا من الانتظار حتى ينتهي البث بأكمله.
</Tip>

<Warning>
  **العد الدقيق للبايتات**: تأكد من أن عدد البايتات يشمل كل الحمل الزائد (الرؤوس، وحمل البروتوكول) إذا كنت تفوّت على إجمالي عرض النطاق.
</Warning>
