bytes نطاق ترددي كل عميل، لتتمكن من احتساب الرسوم عليه. يأتي blueprint ضمن حزمة npm @dodopayments/ingestion-blueprints باسم trackStreamBytes().
حالات الاستخدام
يناسب Stream Blueprint السيناريوهات التالية:Video Platforms
احتسب رسوم العملاء مقابل استهلاك نطاق ترددي للفيديو وجودة البث.
Music Streaming
تتبّع استخدام بث الصوت لكل مستخدم ضمن مستويات الاشتراك.
Live Events
راقب استهلاك البث المباشر واحتسب رسوم استخدام النطاق الترددي.
Real-Time Data
تتبّع نقل البيانات في الوقت الفعلي لتطبيقات IoT والقياس عن بُعد.
استخدمه لمنصات بث الفيديو والصوت، وخدمات البث المباشر، وتطبيقات البيانات في الوقت الفعلي.
البدء السريع
لتتبّع استخدام البث، ثبّت الحزمة، وأنشئ عدّادًا، وأرسل عدد البايتات التي يستهلكها كل عميل.1
Install the SDK
ثبّت حزمة Ingestion Blueprints من Dodo Payments:
2
Get Your API Keys
أنشئ مفتاح Dodo Payments API ضمن Developer → API Keys في لوحة تحكم Dodo Payments، واحفظه في متغير البيئة
DODO_PAYMENTS_API_KEY. استخدم مفتاح وضع الاختبار أثناء التطوير. يعمل مفتاح وضع الاختبار مع test_mode فقط.3
Create a Meter
في لوحة تحكم Dodo Payments، انتقل إلى Products → Meters وانقر على Create Meter. عيّن هذه الحقول:
- Meter Name: اسم وصفي، مثل
Stream Bandwidth. - Event Name:
stream_consumption، أو اسم من اختيارك. يجب أن يطابقeventNameفي التعليمات البرمجية تمامًا (مع مراعاة حالة الأحرف). - Aggregation Type: Sum، لجمع البايتات المرسلة.
- Over Property:
bytes، لاحتساب الرسوم بحسب استخدام النطاق الترددي. - Measurement Unit: الوحدة الظاهرة في الفواتير، مثل
bytes.
4
Track Stream Usage
استدعِ
trackStreamBytes() مع العميل وعدد البايتات المستهلكة:الإعداد
إعداد الإدخال
مرّر هذه الخيارات إلىnew Ingestion():
string
مطلوب
مفتاح Dodo Payments API الخاص بك من لوحة التحكم.
string
وضع البيئة:
test_mode أو live_mode. الإعداد الافتراضي هو test_mode. لكن Dodo Payments SDKs تستخدم live_mode افتراضيًا، لذا عيّن live_mode صراحةً في بيئة الإنتاج.string
مطلوب
اسم الحدث الذي يطابق Event Name في العدّاد (مع مراعاة حالة الأحرف).
خيارات Track Stream Bytes
مرّر هذه الخيارات إلىtrackStreamBytes():
string
مطلوب
معرّف عميل Dodo Payments الذي ستُحتسب عليه رسوم البث، مثل
cus_123.number
عدد البايتات المستهلكة في البث. مطلوب لاحتساب الرسوم المستند إلى النطاق الترددي. إذا حذفته، فلن يتضمن الحدث قيمة
bytes، لكنه سيظل محسوبًا ضمن عدّاد Count.object
بيانات وصفية اختيارية حول البث، مثل نوع البث أو الجودة أو معرّف الجلسة. يجب أن تكون كل قيمة سلسلة نصية أو رقمًا أو قيمة منطقية.
أفضل الممارسات
يرسل كل استدعاء إلىtrackStreamBytes() حدثًا منفصلًا، ويجمع عدّاد Sum الأجزاء معًا.