मुख्य सामग्री पर जाएं

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

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

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 API Key: इसे Dodo Payments Dashboard से प्राप्त करें
  • Storage Provider API Key: AWS S3, Google Cloud Storage, Azure आदि से।
3

Create a Meter

अपने Dodo Payments Dashboard में एक मीटर बनाएं:
  • Event Name: object_storage_upload (या आपकी पसंद का नाम)
  • Aggregation Type: sum कुल अपलोड किए गए बाइट्स को ट्रैक करने के लिए
  • Over Property: 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 API कुंजी डैशबोर्ड से।
environment
string
आवश्यक
एनवायरनमेंट मोड: test_mode या live_mode.
eventName
string
आवश्यक
इवेंट का नाम जो आपके मीटर कॉन्फ़िगरेशन से मेल खाता हो।

ऑब्जेक्ट स्टोरेज विकल्प ट्रैक करें

customerId
string
आवश्यक
बिलिंग श्रेय के लिए ग्राहक आईडी।
bytes
number
अपलोड किए गए बाइट्स की संख्या। बाइट-आधारित बिलिंग के लिए आवश्यक।
metadata
object
अपलोड के बारे में वैकल्पिक मेटाडेटा जैसे बकेट नाम, कंटेंट टाइप आदि।

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

अपलोड से पहले या बाद में ट्रैक करें: आप अपनी त्रुटि हैंडलिंग रणनीति के अनुसार वास्तविक अपलोड से पहले या बाद में इवेंट को ट्रैक कर सकते हैं।
अपलोड विफलताओं को संभालें: विफल ऑपरेशनों के लिए बिलिंग से बचने के लिए केवल सफल अपलोड को ट्रैक करें।