Cloud Functions की मदद से डेवलपर को Firebase और Google Cloud इवेंट का ऐक्सेस मिलता है. साथ ही, इन इवेंट के जवाब में कोड चलाने के लिए, कंप्यूटिंग पावर को ज़रूरत के हिसाब से बढ़ाया जा सकता है. Firebase ऐप्लिकेशन, अपनी खास ज़रूरतों को पूरा करने के लिए Cloud Functions का इस्तेमाल अलग-अलग तरीकों से कर सकते हैं. हालांकि, इस्तेमाल के सामान्य उदाहरण इन कैटगरी में आ सकते हैं:
- उपयोगकर्ताओं को तब सूचना दें, जब कोई दिलचस्प गतिविधि होती है.
- डेटाबेस को सुरक्षित करें और उसका रखरखाव करें.
- ज़्यादा संसाधन इस्तेमाल करने वाले टास्क को ऐप्लिकेशन में चलाने के बजाय, क्लाउड में चलाएं.
- तीसरे पक्ष की सेवाओं और एपीआई के साथ इंटिग्रेट करें.
हर उस कैटगरी के इस्तेमाल के उदाहरण और उदाहरण देखें जिसमें आपकी दिलचस्पी है. इसके बाद, शुरू करें ट्यूटोरियल पर जाएं. इसके अलावा, पुष्टि करने से जुड़े इवेंट, Analytics इवेंट वगैरह के लिए, खास निर्देशों वाली गाइड पर जाएं.
जब कोई दिलचस्प गतिविधि होती है, तब उपयोगकर्ताओं को सूचना देना
डेवलपर, Cloud Functions का इस्तेमाल करके उपयोगकर्ताओं को ऐप्लिकेशन से जोड़े रख सकते हैं. साथ ही, उन्हें ऐप्लिकेशन के बारे में काम की जानकारी दे सकते हैं. उदाहरण के लिए, मान लें कि एक ऐसा ऐप्लिकेशन है जिसमें उपयोगकर्ता एक-दूसरे की गतिविधियों को फ़ॉलो कर सकते हैं. जब भी कोई उपयोगकर्ता, किसी दूसरे उपयोगकर्ता को फ़ॉलो करता है, तो Realtime Database में एक राइट ऑपरेशन होता है. इसके बाद, यह राइट इवेंट एक फ़ंक्शन को ट्रिगर कर सकता है. इससे Firebase Cloud Messaging (FCM) सूचनाएं जनरेट होंगी. इससे सही उपयोगकर्ताओं को यह सूचना मिलेगी कि उन्हें नए फ़ॉलोअर मिले हैं.

- यह फ़ंक्शन, Realtime Database पाथ में लिखे जाने पर ट्रिगर होता है. इस पाथ में फ़ॉलोअर की जानकारी सेव की जाती है.
- यह फ़ंक्शन, FCM के ज़रिए मैसेज भेजने के लिए, मैसेज लिखता है.
- FCM, उपयोगकर्ता के डिवाइस पर सूचना वाला मैसेज भेजता है.
काम करने वाले कोड की समीक्षा करने के लिए, GitHub में मौजूद सैंपल कोड देखें:
- Node.js: fcm-notifications
- Python: fcm-notifications
सूचनाओं के इस्तेमाल के अन्य दिलचस्प उदाहरण
- न्यूज़लेटर की सदस्यता लेने वाले लोगों को पुष्टि करने वाले ईमेल भेजें.
- जब कोई उपयोगकर्ता साइन अप कर लेता है, तो उसे वेलकम ईमेल भेजें.
- जब कोई उपयोगकर्ता नया खाता बनाता है, तो उसे पुष्टि करने के लिए एसएमएस भेजें.
डेटाबेस को सुरक्षित करना और उसका रखरखाव करना
Cloud Functions डेटाबेस इवेंट हैंडलिंग की मदद से, उपयोगकर्ता के व्यवहार के हिसाब से Realtime Database या Cloud Firestore में बदलाव किया जा सकता है. इससे सिस्टम को अपनी पसंद के मुताबिक स्थिति में रखा जा सकता है. उदाहरण के लिए, आपके पास लिखने से जुड़े इवेंट को मॉनिटर करने और उपयोगकर्ताओं के मैसेज में मौजूद कुछ स्ट्रिंग का फ़ॉर्मैट बदलने का विकल्प होता है. जैसे, सभी अक्षरों को कैपिटल लेटर में बदलना. यह इस तरह काम कर सकता है:

- फ़ंक्शन का डेटाबेस इवेंट हैंडलर, किसी खास पाथ पर राइट इवेंट को मॉनिटर करता है. साथ ही, इवेंट डेटा को वापस लाता है, जिसमें मैसेज का टेक्स्ट होता है.
- यह फ़ंक्शन, टेक्स्ट को प्रोसेस करके स्ट्रिंग को कैपिटल लेटर में बदलता है.
- यह फ़ंक्शन, अपडेट किए गए टेक्स्ट को डेटाबेस में वापस लिखता है.
काम करने वाले कोड की समीक्षा करने के लिए, GitHub में मौजूद सैंपल कोड देखें:
- Node.js: uppercase-rtdb
- Python: uppercase-rtdb
डेटाबेस को सुरक्षित रखने और रखरखाव के अन्य उदाहरण
- मिटाए गए उपयोगकर्ता के कॉन्टेंट को Realtime Database से मिटाएं.
- Firebase डेटाबेस में चाइल्ड नोड की संख्या सीमित करें.
- Realtime Database सूची में मौजूद एलिमेंट की संख्या को ट्रैक करें.
- Realtime Database से Google Cloud BigQuery में डेटा कॉपी करें.
- टेक्स्ट को इमोजी में बदलें.
- डेटाबेस रिकॉर्ड के लिए, कंप्यूट किया गया मेटाडेटा मैनेज करें.
ऐप्लिकेशन में ज़्यादा संसाधन इस्तेमाल करने वाले टास्क को क्लाउड में पूरा करना
Cloud Functions का इस्तेमाल करके, ज़्यादा रिसॉर्स (ज़्यादा सीपीयू या नेटवर्किंग) का इस्तेमाल करने वाले काम को Google Cloud पर ट्रांसफ़र किया जा सकता है. इससे, ऐप्लिकेशन को उपयोगकर्ता के डिवाइस पर चलाने के बजाय, Google Cloud पर चलाया जा सकता है. इससे आपके ऐप्लिकेशन की परफ़ॉर्मेंस बेहतर होती है. उदाहरण के लिए, Cloud Storage पर इमेज अपलोड करने के लिए, एक फ़ंक्शन लिखा जा सकता है. इससे, फ़ंक्शन चलाने वाले इंस्टेंस पर इमेज डाउनलोड की जा सकती है, उसमें बदलाव किया जा सकता है, और उसे वापस Cloud Storage पर अपलोड किया जा सकता है. बदलावों में, इमेज का साइज़ बदलना, उन्हें काटना या sharp या Pillow जैसे टूल का इस्तेमाल करके इमेज को बदलना शामिल हो सकता है.

- Cloud Storage में कोई इमेज फ़ाइल अपलोड किए जाने पर, यह फ़ंक्शन ट्रिगर होता है.
- यह फ़ंक्शन, इमेज को डाउनलोड करता है और उसका थंबनेल वर्शन बनाता है.
- यह फ़ंक्शन, थंबनेल की जगह की जानकारी को डेटाबेस में लिखता है, ताकि क्लाइंट ऐप्लिकेशन इसे ढूंढकर इस्तेमाल कर सके.
- यह फ़ंक्शन, थंबनेल को नई जगह पर Cloud Storage में वापस अपलोड करता है.
- ऐप्लिकेशन, थंबनेल का लिंक डाउनलोड करता है.
इमेज प्रोसेसिंग के उदाहरण के बारे में जानने के लिए, Cloud Storage इवेंट मैनेज करने से जुड़ी गाइड देखें.
Firebase Cloud में बैच जॉब के अन्य उदाहरण
- जिन Firebase खातों का इस्तेमाल नहीं किया जा रहा है उन्हें समय-समय पर मिटाएं Node.js | Python.
- अपलोड की गई इमेज का अपने-आप बैक अप लेना Node.js | Python.
- उपयोगकर्ताओं को एक साथ कई ईमेल भेजें.
- समय-समय पर डेटा को इकट्ठा और कम शब्दों में पेश करना.
- काम पूरा करने के लिए, इंतज़ार कर रहे टास्क की सूची को प्रोसेस करना.
तीसरे पक्ष की सेवाओं और एपीआई के साथ इंटिग्रेट करना
Cloud Functions, वेब एपीआई को कॉल करके और उन्हें ऐक्सेस करने की अनुमति देकर, आपके ऐप्लिकेशन को अन्य सेवाओं के साथ बेहतर तरीके से काम करने में मदद कर सकता है. उदाहरण के लिए, डेवलपमेंट के लिए इस्तेमाल किया जाने वाला कोई ऐप्लिकेशन, GitHub कमिट को वर्कग्रुप के चैट रूम में पोस्ट कर सकता है.

- कोई उपयोगकर्ता GitHub रिपॉज़िटरी में कमिट पुश करता है.
- एचटीटीपीएस फ़ंक्शन, GitHub webhook API के ज़रिए ट्रिगर होता है.
- यह फ़ंक्शन, कमिट की सूचना को टीम के Slack चैनल पर भेजता है.
तीसरे पक्ष की सेवाओं और एपीआई के साथ इंटिग्रेट करने के अन्य तरीके
- अपलोड की गई इमेज का विश्लेषण करने और उन्हें टैग करने के लिए, Google Cloud Vision API का इस्तेमाल करें.
- Google Translate का इस्तेमाल करके मैसेज का अनुवाद करें.
- उपयोगकर्ताओं को साइन इन करने के लिए, कस्टम ऑथेंटिकेशन का इस्तेमाल करें.
- Realtime Database में मौजूद वेबुक को अनुरोध भेजें.
- Realtime Database एलिमेंट पर, पूरे टेक्स्ट को खोजने की सुविधा चालू करें.
- लोगों से मिले पेमेंट को प्रोसेस करना.
- फ़ोन कॉल और एसएमएस मैसेज के लिए, अपने-आप जवाब देने की सुविधा चालू करें.
- Google Assistant का इस्तेमाल करके चैटबॉट बनाना.