आइटम सिस्टम और प्लेटफ़ॉर्म पेड स्टोर
यह सिस्टम गेमिंग प्लेटफ़ॉर्म के लिए एकीकृत भुगतान वाले आइटम प्रबंधन समाधान प्रदान करता है, स्टैंडअलोन गेम्स के लिए आइटम खरीद, वितरण, सांख्यिकी जैसी कार्यक्षमताओं का समर्थन करता है, और आइटम खरीद, क्वेरी, जोड़/घटाव और प्रक्रिया-ट्रिगर वितरण कार्यों को लागू करता है।
- मुख्य कार्यक्षमताएँ: आइटम खरीद, स्वामित्व क्वेरी, जोड़/घटाव संचालन, परिवर्तन निगरानी, गेम प्रक्रिया-ट्रिगर वितरण
1. डेवलपर बैकएंड प्रबंधन कार्यक्षमताएँ
- डेवलपर बैकएंड के माध्यम से मैन्युअल रूप से आइटम डेटा बना सकते हैं, टेबल (आइटम यूनिट टेबल) और आइटम आइकन अपलोड करने का समर्थन करते हैं।
- भुगतान वाले स्टोर आइटम वर्तमान में केवल मैन्युअल निर्माण का समर्थन करते हैं।
- अधिकतम 5000 आइटम डेटा प्रविष्टियाँ बनाने का समर्थन करता है।
- वर्तमान में केवल एकमुश्त खरीद और इन-ऐप खरीद प्रकार के गेम्स का समर्थन करता है।
- आइटम बनाने के बाद अनुमोदन की आवश्यकता होती है; स्वीकृत होने के बाद, वे डिफ़ॉल्ट रूप से सक्षम स्थिति में चले जाते हैं।
आइटम प्रबंधन कार्यक्षमताएँ:
आइटम आईडी: अद्वितीय पहचानकर्ता, बनाने के बाद संशोधित नहीं किया जा सकता
आइटम नाम और आइकन: फ्रंटएंड प्रदर्शन के लिए उपयोग किया जाता है
आइटम आइकन: आइकन छवि के मैन्युअल प्रतिस्थापन का समर्थन करता है
आइटम निर्माण नियम: गेम आइटम और स्टोर भुगतान आइटम के बीच चयन का समर्थन करता है
आइटम प्रतिबंध: प्लेटफ़ॉर्म के माध्यम से खिलाड़ियों को वितरण के लिए सीमाएँ निर्धारित करने का समर्थन करता है, जैसे दैनिक वितरण मात्रा सीमा, कुल मात्रा सीमा या कोई सीमा नहीं
आइटम स्टॉक: मात्रा इनपुट करना चुन सकते हैं या कोई सीमा निर्धारित नहीं कर सकते
आइटम मूल्य सेटिंग्स:
मुफ़्त आइटम (Platform activities): प्लेटफ़ॉर्म गतिविधियों के माध्यम से वितरण का समर्थन करता है।
भुगतान खरीद (Paid purchase): आइटम स्टोर में भुगतान खरीद का समर्थन करता है।
डिफ़ॉल्ट यूएस डॉलर मूल्य निर्धारण
आइटम यूनिट मूल्य निर्धारण 0.0001 USD तक सटीकता का समर्थन करता है
स्टोर भुगतान आइटम के लिए न्यूनतम मूल्य इनपुट 1 USD है

2. आइटम SDK एकीकरण
मुख्य इंटरफ़ेस विवरण
| इंटरफ़ेस नाम | विधि हस्ताक्षर | कार्यक्षमता विवरण |
|---|---|---|
| खरीद विंडो खोलें | openBuyGameItemsDialog(level: number) | गेम के भीतर कार्यात्मक UI के माध्यम से स्टोर आइटम खरीद संवाद खोलता है। |
| स्वामित्व वाले आइटम प्राप्त करें | getUserGameItems(): GameItem[] | गेम में प्रवेश करते समय खिलाड़ी की वर्तमान आइटम सूची क्वेरी करता है (आईडी और मात्रा शामिल है)। |
| आइटम जोड़ें | addGameItem(itemId: string, amount: number) | गेम प्रगति के दौरान आइटम वितरित करता है (खरीदारी, स्तर पुरस्कार, मिशन पूरा करना आदि परिदृश्यों का समर्थन करता है)। |
| आइटम घटाएँ | subtractGameItem(itemId: string, amount: number) | आइटम की खपत करता है (गेम प्रगति के दौरान उपयोग या खपत के परिदृश्य, कटौती के बाद मात्रा गैर-नकारात्मक है)। |
| परिवर्तन सूचना सदस्यता लें | subscribeGameItemChange(callback: (res: GameItemChange) => void) | कॉलबैक विधि जो स्टोर भुगतान आइटम के भुगतान के पूरा होने पर निष्पादित होती है। |
प्रमुख डेटा प्रारूप
- **GameItem (आइटम जानकारी)**:
{ itemId: string, amount: number } - **GameItemChange (परिवर्तन जानकारी)**:
{ itemId: string, amount: number, changeType: 'add'|'subtract', total: number }
2.1 स्वामित्व वाले आइटम सूची प्राप्त करें
javascript
// खिलाड़ी के स्वामित्व वाले आइटम सूची प्राप्त करें (गेम आरंभीकरण के दौरान कॉल किया गया)
const items = window.JOGOS_SDK.gameItem.getUserGameItems();
console.log('स्वामित्व वाले आइटम:', items);2.2 आइटम खरीद विंडो खोलें
javascript
// आइटम खरीद विंडो खोलें
window.JOGOS_SDK.gameItem.openBuyGameItemsDialog(10);2.3 आइटम जोड़ें
javascript
// आइटम जोड़ें (आईडी: 3232addasdda3aa2, मात्रा: 10)
window.JOGOS_SDK.gameItem.addGameItem('3232addasdda3aa2', 10);2.4 आइटम घटाएँ
javascript
// आइटम घटाएँ (आईडी: 3232addasdda3aa2, मात्रा: 5)
window.JOGOS_SDK.gameItem.subtractGameItem('3232addasdda3aa2', 5);2.5 आइटम परिवर्तन सूचना की सदस्यता लें
javascript
// आइटम परिवर्तन सूचना की सदस्यता लें
window.JOGOS_SDK.gameItem.subscribeGameItemChange((res) => {
console.log('आइटम परिवर्तन:', res);
});2.6 भुगतान आइटम खरीद पूर्ण प्रवाह
javascript
// 1. भुगतान आइटम खरीद शुरू करें (उत्पाद आईडी: item_gold_100, 100 सोने के सिक्के आइटम से मेल खाता है)
async function buyGoldItem() {
try {
const orderNo = await window.JOGOS_SDK.payment.buyGoods('item_gold_100');
console.log('आदेश सफलतापूर्वक बनाया गया, आदेश संख्या:', orderNo);
} catch (err) {
console.error('आदेश निर्माण विफल:', err);
alert('खरीद शुरू करने में विफल, कृपया बाद में पुनः प्रयास करें');
}
}
// 2. भुगतान सफलता सूचना की सदस्यता लें (गेम आरंभीकरण के दौरान कॉल किया गया)
window.JOGOS_SDK.payment.subscribeOrderPaid(async (order) => {
console.log('भुगतान सफल, आदेश विवरण:', order);
if (order.status === 'success') {
// 3. संबंधित आइटम वितरित करें (उत्पाद आईडी: item_gold_100 आइटम आईडी से मेल खाता है: 3232addasdda3aa2)
window.JOGOS_SDK.gameItem.addGameItem('3232addasdda3aa2', 100);
// 4. प्लेटफ़ॉर्म को वितरण के लिए सूचित करें (कॉल किया जाना चाहिए, अन्यथा आदेश स्थिति असामान्य होगी)
await window.JOGOS_SDK.payment.deliverGoods(order.orderNo);
alert('100 सोने के सिक्के सफलतापूर्वक खरीदे गए, बैकपैक में वितरित किए गए हैं!');
}
});
// 3. अपवाद परिदृश्य: आदेश विवरण क्वेरी करें (उदाहरण के लिए, यदि भुगतान के बाद आइटम प्राप्त नहीं हुआ है)
async function checkOrder(orderNo) {
try {
const order = await window.JOGOS_SDK.payment.getOrderDetail(orderNo);
console.log('आदेश विवरण क्वेरी:', order);
if (order.status === 'success') {
// आइटम पुनः वितरित करें
window.JOGOS_SDK.gameItem.addGameItem('3232addasdda3aa2', 100);
await window.JOGOS_SDK.payment.deliverGoods(orderNo);
}
} catch (err) {
console.error('आदेश क्वेरी विफल:', err);
}
}2.7 गेम प्रक्रिया-ट्रिगर आइटम वितरण (उदाहरण: स्तर समाप्ति पुरस्कार)
javascript
// स्तर 10 समाप्ति आइटम वितरण को ट्रिगर करती है (डुप्लिकेट दावों से बचने के लिए डीडुप्लिकेशन तर्क शामिल है)
function onLevel10Clear() {
// स्टैंडअलोन गेम: वितरण स्थिति रिकॉर्ड करने के लिए स्थानीय संग्रहण का उपयोग करें
const hasIssued = localStorage.getItem('level10_award_issued');
if (hasIssued) {
alert('यह स्तर पुरस्कार पहले ही दावा किया जा चुका है, फिर से दावा नहीं किया जा सकता');
return;
}
// आइटम वितरित करें (आईडी: 3232addasdda3aa2, मात्रा: 10)
window.JOGOS_SDK.gameItem.addGameItem('3232addasdda3aa2', 10);
// वितरण स्थिति रिकॉर्ड करें
localStorage.setItem('level10_award_issued', 'true');
alert('स्तर 10 सफलतापूर्वक पूरा हुआ! 10 आइटम पुरस्कार प्राप्त हुए');
}