Stripe के साथ Discord पेवॉल बॉट कैसे बनाएं
Discord सर्वर केवल संचार प्लेटफॉर्म से कहीं अधिक बन गए हैं - वे संपन्न समुदाय हैं जो अक्सर मूल्यवान सामग्री और सेवाएं प्रदान करते हैं। जैसे-जैसे सर्वर मालिक अपने समुदायों का मुद्रीकरण करना चाहते हैं, एक विश्वसनीय पेवॉल प्रणाली को लागू करना महत्वपूर्ण हो जाता है। यहीं हमारा Stripe Discord बॉट काम आता है। यह मुफ़्त और ओपन सोर्स है।
Donatebot.io जैसे पारंपरिक समाधानों के विपरीत, हमारा बॉट सीधे Stripe के साथ संचार करता है, मध्यस्थ शुल्क को समाप्त करता है और सर्वर मालिकों और उपयोगकर्ताओं दोनों के लिए अधिक सुव्यवस्थित अनुभव प्रदान करता है।
स्टैक
[
{ "name": "Node.js", "version": "v16+" },
{ "name": "PostgreSQL", "version": "v13+" },
{ "name": "Discord.js", "version": "latest" },
{ "name": "Stripe API", "version": "latest" },
{ "name": "TypeORM", "version": "latest" },
{ "name": "Sentry", "version": "latest" }
]
विशेषताएं
हमारा मुफ़्त बॉट एक मजबूत सदस्यता प्रणाली लागू करता है जो उपयोगकर्ता पंजीकरण से लेकर सदस्यता प्रबंधन तक सब कुछ संभालता है:
- सदस्यता लेने पर तत्काल भूमिका असाइनमेंट
- रेगेक्स सत्यापन के साथ ईमेल सत्यापन प्रणाली
- आवर्ती और आजीवन दोनों सदस्यताओं के लिए समर्थन
- स्वचालित सदस्यता स्थिति जाँच
- समाप्त हो रही सदस्यताओं के लिए प्रगतिशील अनुस्मारक प्रणाली
Discord बॉट सदस्यता की वैधता सुनिश्चित करने के लिए दैनिक जांच करता है और स्वचालित रूप से उनकी सदस्यता स्थिति के आधार पर उपयोगकर्ता भूमिकाओं का प्रबंधन करता है।
उपयोगकर्ता के अनुकूल कमांड
हमने एक सहज कमांड प्रणाली तैयार की है जो उपयोगकर्ताओं के लिए अपनी सदस्यताओं का प्रबंधन करना आसान बनाती है। बॉट स्लैश कमांड और पारंपरिक संदेश कमांड दोनों का समर्थन करता है:
// सदस्यता कमांड कार्यान्वयन का उदाहरण
export const commands = [
{
name: "subscribe",
description: "सदस्यता लें या अपनी सक्रिय सदस्यता का दावा करें!",
options: [
{
name: "email",
description: "आपका ईमेल पता",
type: ApplicationCommandOptionType.String,
required: false
}
]
}
];
कमांड सिस्टम में शामिल हैं:
/subscribe- अपने Discord खाते को Stripe सदस्यता के साथ लिंक करें/status- अपनी सदस्यता स्थिति की जाँच करें/cancel- अपनी सदस्यता रद्द करें/admin-access- व्यवस्थापक पहुंच प्रबंधित करें (केवल व्यवस्थापक)
सर्वर संगठन बनाए रखने के लिए सभी कमांड चैनल-प्रतिबंधित हैं। उदाहरण के लिए, सदस्यता कमांड का उपयोग केवल निर्दिष्ट चैनलों में किया जा सकता है।
सत्यापन प्रणाली
बॉट में एक परिष्कृत सत्यापन प्रणाली शामिल है जो दैनिक जांच चलाती है:
export const crons = [
'0 0 1 * * *'
];
const getExpiredEmbed = (daysLeft: 0 | 1 | 2): EmbedBuilder => {
const title = daysLeft > 0 ? 'आपकी सदस्यता समाप्त होने वाली है' : 'आपकी सदस्यता समाप्त हो गई है';
const embed = new EmbedBuilder()
.setTitle(title)
.setURL(process.env.STRIPE_PAYMENT_LINK)
.setColor(process.env.EMBED_COLOR)
.setDescription(`अपनी विशेष पहुंच बनाए रखने के लिए कृपया ${process.env.STRIPE_PAYMENT_LINK} पर जाएँ! ${daysLeft > 0 ? `आपकी सदस्यता ${daysLeft * 24} घंटों के भीतर समाप्त हो रही है।` : ''}`);
return embed;
}
विशेषताएं:
- दैनिक सदस्यता स्थिति सत्यापन
- प्रगतिशील अनुस्मारक प्रणाली (समाप्ति से 3 दिन, 2 दिन, 1 दिन पहले)
- स्वचालित भूमिका प्रबंधन
- विस्तृत व्यवस्थापक लॉगिंग
- आजीवन सदस्यता के लिए समर्थन
Stripe एकीकरण
Stripe के साथ हमारा प्रत्यक्ष एकीकरण विश्वसनीय भुगतान प्रसंस्करण सुनिश्चित करता है:
export const findSubscriptionsFromCustomerId = async (customerId: string) => {
const subscriptions = await queue.add(async () =>
await fetch(`https://api.stripe.com/v1/subscriptions?customer=${customerId}`, {
headers: {
Authorization: `Bearer ${process.env.STRIPE_API_KEY}`
}
}).json()
);
return subscriptions.data || [];
}
export const findActiveSubscriptions = (subscriptions: any[]) => {
return subscriptions.filter(sub =>
sub.status === 'active' ||
sub.status === 'trialing' ||
(sub.cancel_at && sub.current_period_end > Date.now() / 1000)
);
}
स्थापना
बॉट स्थापित करना सरल है:
- Node.js और PostgreSQL स्थापित करें
- अपना डेटाबेस बनाएं और कॉन्फ़िगर करें
- निर्भरताएँ स्थापित करें
- प्रोजेक्ट बिल्ड करें
- अपने पर्यावरण चर को कॉन्फ़िगर करें
- PM2 या अपने पसंदीदा प्रक्रिया प्रबंधक का उपयोग करके तैनात करें
निष्कर्ष
हमारा Stripe Discord बॉट Discord सर्वर पर पेवॉल लागू करने के लिए एक शक्तिशाली, सुरक्षित और कुशल समाधान प्रदान करता है। Stripe के साथ इसका सीधा एकीकरण, स्वचालित सत्यापन प्रणाली और व्यापक व्यवस्थापक नियंत्रण इसे सर्वर मालिकों के लिए एक आदर्श विकल्प बनाते हैं जो अपने समुदायों का मुद्रीकरण करना चाहते हैं।
आप इस लिंक पर स्रोत कोड प्राप्त कर सकते हैं।