Firebase एक्सटेंशन

Firebase एक्सटेंशन की मदद से, पहले से तैयार किए गए समाधानों की मदद से, ऐप्लिकेशन पर तुरंत सुविधाएं उपलब्ध कराई जा सकती हैं.

इंस्टॉल होने के बाद, Firebase एक्सटेंशन एचटीटीपीएस अनुरोधों, क्लाउड शेड्यूलर इवेंट या Cloud Firestore या Firebase क्लाउड से मैसेज जैसे अन्य Firebase प्रॉडक्ट से इवेंट ट्रिगर करने के जवाब में कोई खास टास्क या टास्क का सेट करता है.

एक्सटेंशन हब एक्सप्लोर करें एक्सटेंशन इंस्टॉल करने का तरीका जानें अपना एक्सटेंशन बनाने का तरीका जानें

मुख्य सुविधाएं

विकास, रखरखाव, और विकास में लगने वाले समय को कम करना

एक्सटेंशन, पैकेज्ड सलूशन होता है. इसलिए, आपको सिर्फ़ एक्सटेंशन को इंस्टॉल और कॉन्फ़िगर करना होता है.

एक्सटेंशन का इस्तेमाल करने पर, आपको उस कोड को खोजने, लिखने, और डीबग करने में समय नहीं लगता जो सुविधा लागू करता है या आपके ऐप्लिकेशन या प्रोजेक्ट के लिए, किसी टास्क को अपने-आप पूरा करता है.

अपने ऐप्लिकेशन या प्रोजेक्ट के लिए समाधान ढूंढने के लिए, एक्सटेंशन हब एक्सप्लोर करें.

कॉन्फ़िगर करने और फिर से इस्तेमाल करने के लिए बनाया गया

एक्सटेंशन का इंस्टॉल किया गया हर इंस्टेंस, यूनीक होता है.

आपको उस एक्सटेंशन के लिए कॉन्फ़िगरेशन वैल्यू तय करनी होंगी जो आपके ऐप्लिकेशन, प्रोजेक्ट या इस्तेमाल के उदाहरण के लिए यूनीक हों. एक्सटेंशन के काम के आधार पर, ये वैल्यू करीब-करीब कुछ भी हो सकती हैं: Cloud Firestore पाथ, इमेज डाइमेंशन या GitHub यूआरएल.

एक ही एक्सटेंशन को अलग-अलग प्रोजेक्ट में फिर से इस्तेमाल किया जा सकता है. एक प्रोजेक्ट में, एक ही एक्सटेंशन के कई इंस्टेंस इंस्टॉल भी किए जा सकते हैं. इंस्टॉल किए गए हर इंस्टेंस का अपनी पसंद के मुताबिक कॉन्फ़िगरेशन हो सकता है.

Firebase प्लैटफ़ॉर्म को इंटिग्रेट करता है

एक्सटेंशन आपके मौजूदा आर्किटेक्चर के उस गायब हिस्से को पूरा कर सकते हैं.

एक्सटेंशन, उन Firebase प्रॉडक्ट से जनरेट होने वाले इवेंट पर जवाब दे सकते हैं जिनका इस्तेमाल पहले से ही आपके ऐप्लिकेशन में किया जा रहा है. किसी Firebase प्रॉडक्ट में बदलाव करने पर, एक्सटेंशन को अपना काम करने के लिए ट्रिगर किया जा सकता है. यहां तक कि किसी दूसरे प्रॉडक्ट का इस्तेमाल करके बनाए गए टास्क भी. उदाहरण के लिए, किसी खास रीयल टाइम डेटाबेस में लिखने से Firebase क्लाउड से मैसेज की नई सूचना भेजी जा सकती है.

एक्सटेंशन आपके Firebase प्रोजेक्ट को अन्य Google Cloud Platform प्रॉडक्ट (जैसे कि BigQuery और Google Translate) या तीसरे पक्ष की सेवाओं (जैसे Mailchimp और Bit.ly) के साथ भी इंटिग्रेट कर सकता है.

ट्रिगर इवेंट, Firebase इवेंट तक सीमित नहीं हैं; आप चाहें, तो सीधे एचटीटीपीएस अनुरोध या शेड्यूल किए गए इंटरवल पर एक्सटेंशन को भी ट्रिगर किया जा सकता है.

सुरक्षा और सीमित ऐक्सेस

एक्सटेंशन के लिए ऐप्लिकेशन लॉजिक, बैकएंड पर Google Cloud Functions का इस्तेमाल करके चलता है, इसलिए कोड को क्लाइंट से पूरी तरह आइसोलेट किया जाता है.

साथ ही, एक्सटेंशन आपके बाकी प्रोजेक्ट से अलग होते हैं. इसकी वजह यह है कि इंस्टॉल किए गए एक्सटेंशन को सिर्फ़ उन संसाधनों और डेटा का सीमित ऐक्सेस दिया जाता है जिनके बारे में, इंस्टॉल करने से पहले साफ़ तौर पर जानकारी दी गई हो.

कोई रखरखाव नहीं

अपने Firebase प्रोजेक्ट के लिए कोई एक्सटेंशन इंस्टॉल और कॉन्फ़िगर करें. इसके बाद, बैकएंड आपके एक्सटेंशन की ज़रूरतों को पूरा करने के लिए, कंप्यूटिंग संसाधनों को अपने-आप स्केल करता है.

आपको कभी भी क्रेडेंशियल, सर्वर कॉन्फ़िगरेशन, नए सर्वर सेट अप करने या पुराने सर्वर के बंद होने की चिंता नहीं करनी होगी.

यह कैसे काम करता है?

मुख्य रूप से, Firebase एक्सटेंशन एक कोड होता है, जो तब टास्क करता है, जब भी आपके ऐप्लिकेशन या प्रोजेक्ट में कोई खास इवेंट होता है.

एक्सटेंशन का लॉजिक, Firebase के लिए Cloud Functions का इस्तेमाल करके लिखा जाता है. एक्सटेंशन के फ़ंक्शन, इवेंट उपलब्ध कराने वाली कंपनियों और एक्ज़ीक्यूशन को ट्रिगर करने वाली शर्तों के बारे में बताते हैं. उदाहरण के लिए, Cloud Firestore का लिखना, एचटीटीपीएस अनुरोध या Cloud शेड्यूलर इवेंट.

एक्सटेंशन भले ही फ़ंक्शन का इस्तेमाल करते हैं, लेकिन एक्सटेंशन और फ़ंक्शन के बीच एक खास अंतर यह है कि यह एक्सटेंशन, extension.yaml की खास जानकारी वाली फ़ाइल का इस्तेमाल करता है, जिसमें इनके बारे में साफ़ तौर पर बताया गया है:

  • एक्सटेंशन, Google की जिन सेवाओं (एपीआई) का इस्तेमाल करेगा
  • एक्सटेंशन को चलाने के लिए ज़रूरी ऐक्सेस भूमिकाएं
  • ऐसे एक्सटेंशन से जुड़े संसाधन जिन्हें चलाने के लिए, एक्सटेंशन की ज़रूरत होती है
  • एक्सटेंशन के लिए कॉन्फ़िगर किए जा सकने वाले पैरामीटर

किसी प्रोजेक्ट में एक एक्सटेंशन को कई बार इंस्टॉल किया जा सकता है, क्योंकि इंस्टॉल किए गए हर इंस्टेंस का कॉन्फ़िगरेशन अलग होता है.

जब किसी एक्सटेंशन का इंस्टेंस इंस्टॉल किया जाता है, तो Firebase ये काम करता है:

  1. इससे आपको एक्सटेंशन के इस इंस्टेंस के लिए, ज़रूरी कॉन्फ़िगरेशन वैल्यू (पैरामीटर) तय करने का निर्देश मिलता है.
  2. प्रोजेक्ट के लिए, extension.yaml फ़ाइल से सूची में शामिल एपीआई को चालू करता है.
  3. एक नया सेवा खाता बनाता है, जिसका इस्तेमाल एक्सटेंशन के इस इंस्टेंस के लिए किया जाएगा. साथ ही, इसे सूची में दी गई ऐक्सेस भूमिकाएं असाइन करता है. एक्सटेंशन इंस्टेंस, इस सेवा खाते को दिए गए ऐक्सेस का इस्तेमाल करके अपने कोड को लागू करता है.
  4. एक्सटेंशन इंस्टेंस के लिए सूची में दिए गए संसाधनों का प्रावधान करता है (उदाहरण के लिए, फ़ंक्शन).

ध्यान दें कि एक्सटेंशन के इंस्टॉल किए गए हर इंस्टेंस का अपना सेवा खाता और अलग-अलग प्रावधान किए गए संसाधन होते हैं.

एक्सटेंशन डायरेक्ट्री में extension.yaml फ़ाइल के अलावा, README जैसी निर्देश देने वाली फ़ाइलें भी शामिल होती हैं. इनमें, आगे के कॉन्फ़िगरेशन टास्क पूरे करने या आम तौर पर एक्सटेंशन का इस्तेमाल करने में मदद करने वाली जानकारी होती है.

इंस्टॉल करने के बाद, किसी एक्सटेंशन को फिर से कॉन्फ़िगर किया जा सकता है (पैरामीटर की नई वैल्यू तय की जा सकती है). साथ ही, किसी एक्सटेंशन को नए वर्शन पर अपडेट किया जा सकता है. अपने प्रोजेक्ट से किसी भी एक्सटेंशन को किसी भी समय अनइंस्टॉल किया जा सकता है.

Firebase सीएलआई और Firebase कंसोल, दोनों आपको एक्सटेंशन इंस्टॉल करने, देखने, और मैनेज करने की अनुमति देते हैं.

लागू करने का पाथ

एक्सटेंशन ढूंढना

एक्सटेंशन हब में उपलब्ध एक्सटेंशन एक्सप्लोर करें.

एक्सटेंशन का आकलन करना, उसे इंस्टॉल करना, और कॉन्फ़िगर करना

जब आपको कोई ऐसा एक्सटेंशन मिलता है जो आपके ऐप्लिकेशन या प्रोजेक्ट की ज़रूरत को पूरा करता है, तो एक्सटेंशन एम्युलेटर की मदद से एक्सटेंशन का आकलन करें. इसके बाद, Firebase कंसोल या Firebase सीएलआई की मदद से एक्सटेंशन इंस्टॉल करें.

एक्सटेंशन को कॉन्फ़िगर करें, ताकि वह आपके ऐप्लिकेशन या प्रोजेक्ट के हिसाब से बनाया जा सके.

एक्सटेंशन मैनेज करना

Firebase कंसोल या Firebase सीएलआई का इस्तेमाल करके, इंस्टॉल किए गए एक्सटेंशन को देखें और उसे मैनेज करें.

अगले चरण