आपका सर्वर इनवायरनमेंट और FCM
Firebase Cloud Messaging के सर्वर साइड में दो कॉम्पोनेंट होते हैं:
- Google का FCMबैकएंड.
- आपका ऐप्लिकेशन सर्वर या कोई अन्य भरोसेमंद सर्वर एनवायरमेंट, जहां आपका सर्वर लॉजिक काम करता है. जैसे, Firebase के लिए Cloud Functions या Google के मैनेज किए जा रहे अन्य क्लाउड एनवायरमेंट.
आपका ऐप्लिकेशन सर्वर या भरोसेमंद सर्वर एनवायरमेंट, FCM बैकएंड को मैसेज के अनुरोध भेजता है. इसके बाद, बैकएंड उपयोगकर्ताओं के डिवाइसों पर चल रहे क्लाइंट ऐप्लिकेशन पर मैसेज भेजता है.
भरोसेमंद सर्वर एनवायरमेंट से जुड़ी ज़रूरी शर्तें
आपके ऐप्लिकेशन सर्वर एनवायरमेंट को ये शर्तें पूरी करनी होंगी:
- FCM बैकएंड को मैसेज के सही फ़ॉर्मैट में अनुरोध भेजने में सक्षम हो.
- अनुरोधों को मैनेज करने और एक्सपोनेंशियल बैक-ऑफ़ का इस्तेमाल करके उन्हें फिर से भेजने की सुविधा.
- सर्वर की अनुमति वाले क्रेडेंशियल और क्लाइंट रजिस्ट्रेशन टोकन को सुरक्षित तरीके से सेव कर सकता है.
सर्वर का विकल्प चुनना
आपको FCM सर्वर के साथ इंटरैक्ट करने का तरीका तय करना होगा: Firebase Admin SDK या रॉ प्रोटोकॉल का इस्तेमाल करके. Firebase Admin SDK का सुझाव इसलिए दिया जाता है, क्योंकि यह सभी लोकप्रिय प्रोग्रामिंग भाषाओं के साथ काम करता है. साथ ही, इसमें पुष्टि और अनुमति देने के तरीके आसान होते हैं.
FCM सर्वर के साथ इंटरैक्ट करने के विकल्पों में ये शामिल हैं:
- Firebase Admin SDK, जिसमें Node, Java, Python, C#, और Go के लिए सहायता है.
- FCM एचटीटीपी v1 एपीआई, यह एक ऐसा REST API है जिसमें सुरक्षित अनुमति और क्रॉस-प्लैटफ़ॉर्म मैसेजिंग की सुविधाएं होती हैं. Firebase Admin SDK इस प्रोटोकॉल पर आधारित है और इसके सभी फ़ायदे देता है.
FCM के लिए Firebase Admin SDK
एडमिन FCM API, बैकएंड के साथ पुष्टि करने की प्रोसेस को मैनेज करता है. साथ ही, यह मैसेज भेजने और विषय की सदस्यताओं को मैनेज करने में मदद करता है. Firebase Admin SDK की मदद से, ये काम किए जा सकते हैं:
- अलग-अलग डिवाइसों पर मैसेज भेजना
- एक या उससे ज़्यादा विषयों से मैच करने वाले विषयों और शर्तों के स्टेटमेंट पर मैसेज भेजें.
- डिवाइसों को विषयों की सदस्यता दिलाना और उनसे सदस्यता हटाना
- अलग-अलग टारगेट प्लैटफ़ॉर्म के हिसाब से मैसेज के पेलोड बनाना
Admin Node.js SDK टूल, डिवाइस ग्रुप को मैसेज भेजने के लिए तरीके उपलब्ध कराता है.
Firebase Admin SDK को सेट अप करने के लिए, अपने सर्वर में Firebase Admin SDK जोड़ना लेख पढ़ें. अगर आपके पास पहले से कोई Firebase प्रोजेक्ट है, तो SDK टूल जोड़ें से शुरू करें. साथ ही, अपने प्रोजेक्ट के लिए, Cloud Messaging के सेटिंग पेज में जाकर, Cloud Messaging API को चालू करना न भूलें. इसके बाद, Firebase Admin SDK इंस्टॉल होने के बाद, रिक्वेस्ट भेजने के लिए लॉजिक लिखा जा सकता है.
FCM सर्वर प्रोटोकॉल
FCM, उन डेवलपर के लिए FCM एचटीटीपी v1 एपीआई उपलब्ध कराता है जो रॉ सर्वर प्रोटोकॉल का इस्तेमाल करना पसंद करते हैं.
मैसेज भेजने के लिए, ऐप्लिकेशन सर्वर एचटीटीपी हेडर और एचटीटीपी बॉडी के साथ एक पोस्ट अनुरोध जारी करता है. एचटीटीपी बॉडी में, JSON की-वैल्यू पेयर होते हैं. हेडर और मुख्य हिस्से के विकल्पों के बारे में ज़्यादा जानने के लिए, ऐप्लिकेशन सर्वर से अनुरोध भेजने के लिए बनाए गए विकल्प देखें