الانتقال إلى المحتوى الرئيسي

حالات الاستخدام

استكشف السيناريوهات الشائعة المدعومة من خطة تخزين الكائنات:

File Hosting

فوَّت العملاء بناءً على إجمالي استخدام التخزين وحجم التحميل.

Backup Services

تتبع عمليات تحميل بيانات النسخ الاحتياطي وفرض رسوم لكل جيجابايت مخزن.

Media CDN

راقب تحميلات الوسائط واحتسب فاتورة للتخزين وعرض النطاق الترددي.

Document Management

تتبع تحميلات المستندات لكل عميل لتسعير قائم على الاستخدام.
مثالي للفوترة بناءً على تحميلات التخزين، استضافة الملفات، استخدام CDN، أو خدمات النسخ الاحتياطي.

البداية السريعة

تتبع تحميلات تخزين الكائنات مع البايتات المستهلكة:
1

Install the SDK

npm install @dodopayments/ingestion-blueprints
2

Get Your API Keys

  • مفتاح واجهة برمجة تطبيقات Dodo Payments: احصله من لوحة معلومات Dodo Payments
  • مفتاح واجهة برمجة تطبيقات مزود التخزين: من AWS S3، Google Cloud Storage، Azure، إلخ.
3

Create a Meter

أنشئ عدادًا في لوحة معلومات Dodo Payments:
  • اسم الحدث: object_storage_upload (أو الاسم الذي تفضله)
  • نوع التجميع: sum لتتبع إجمالي البايتات المحملة
  • خاصية التجاوز: bytes لفوترة بناءً على حجم التخزين
4

Track Storage Usage

import { Ingestion, trackObjectStorage } from '@dodopayments/ingestion-blueprints';
import { S3Client, PutObjectCommand } from '@aws-sdk/client-s3';
import fs from 'fs';

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

const s3 = new S3Client({ region: 'us-east-1' });

// Read the file (example: from disk or request)
const fileBuffer = fs.readFileSync('./document.pdf');

// Upload to S3
const command = new PutObjectCommand({
  Bucket: 'my-bucket',
  Key: 'uploads/document.pdf',
  Body: fileBuffer
});

await s3.send(command);

// Track the upload
await trackObjectStorage(ingestion, {
  customerId: 'customer_123',
  bytes: fileBuffer.length
});

التكوين

تكوين الاستيعاب

apiKey
string
مطلوب
مفتاح واجهة برمجة تطبيقات Dodo Payments الخاص بك من لوحة المعلومات.
environment
string
مطلوب
وضع البيئة: test_mode أو live_mode.
eventName
string
مطلوب
اسم الحدث الذي يتطابق مع تكوين العداد الخاص بك.

خيارات تتبع تخزين الكائنات

customerId
string
مطلوب
معرّف العميل الخاص بنسب الفوترة.
bytes
number
عدد البايتات المحملة. مطلوب للفوترة المعتمدة على البايت.
metadata
object
بيانات وصفية اختيارية عن التحميل مثل اسم الدلو، نوع المحتوى، إلخ.

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

تتبع قبل أو بعد التحميل: يمكنك تتبع الحدث قبل أو بعد التحميل الفعلي حسب استراتيجية معالجة الأخطاء الخاصة بك.
معالجة فشل التحميل: تتبع التحميلات الناجحة فقط لتجنب الفوترة على العمليات الفاشلة.