Firebase Extensions

Firebase Extensions पहले से तैयार समाधानों की मदद से, आपके ऐप्लिकेशन में सुविधाओं को तुरंत डिप्लॉय करने में मदद करता है.

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

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


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

डेवलपमेंट, रखरखाव, और ग्रोथ में लगने वाला समय कम करना

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

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

अपने ऐप्लिकेशन या प्रोजेक्ट से जुड़ी समस्याओं के समाधान ढूंढने के लिए, Extensions Hub को एक्सप्लोर करें.

कॉन्फ़िगर और फिर से इस्तेमाल किए जा सकने वाले कॉम्पोनेंट

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

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

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

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

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

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

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

इवेंट ट्रिगर करने की सुविधा सिर्फ़ Firebase इवेंट के लिए उपलब्ध नहीं है. एचटीटीपीएस अनुरोध या तय समय पर, एक्सटेंशन को सीधे तौर पर भी ट्रिगर किया जा सकता है.

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

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

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

रखरखाव की ज़रूरत नहीं होती

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

आपको क्रेडेंशियल, सर्वर कॉन्फ़िगरेशन, नए सर्वर उपलब्ध कराने या पुराने सर्वर बंद करने के बारे में चिंता करने की ज़रूरत नहीं होती.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

अगले चरण