Cloud Functions की मदद से क्या-क्या किया जा सकता है?

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

अपनी पसंद की हर कैटगरी के इस्तेमाल के उदाहरण और उदाहरण देखें. इसके बाद, शुरू करें ट्यूटोरियल पर जाएं या पुष्टि करने वाले इवेंट, Analytics इवेंट वगैरह के लिए, 'कैसे करें' गाइड पर जाएं.

कुछ दिलचस्प होने पर उपयोगकर्ताओं को सूचित करें

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

ऐप्लिकेशन के फ़्लो को दिखाने वाला डायग्राम, जिसकी जानकारी नीचे दी गई है

  1. फ़ंक्शन उस Realtime Database पाथ पर ट्रिगर होता है जहां फ़ॉलोअर स्टोर होते हैं.
  2. यह फ़ंक्शन, FCM से भेजने के लिए मैसेज लिखता है.
  3. FCM, उपयोगकर्ता के डिवाइस पर सूचना मैसेज भेजता है.

काम करने वाले कोड की समीक्षा करने के लिए, GitHub में सैंपल कोड देखें:

सूचना के इस्तेमाल के अन्य दिलचस्प उदाहरण

  • न्यूज़लेटर की सदस्यता लेने वाले उपयोगकर्ताओं को पुष्टि करने वाले ईमेल भेजना.
  • जब कोई उपयोगकर्ता साइन अप पूरा कर ले, तो उसे वेलकम ईमेल भेजें.
  • जब कोई उपयोगकर्ता नया खाता बनाता है, तो एक एसएमएस से इसकी पुष्टि करें.

डेटाबेस की सफ़ाई और रखरखाव करें

Cloud Functions डेटाबेस इवेंट हैंडल करने की सुविधा की मदद से, उपयोगकर्ता के व्यवहार के हिसाब से Realtime Database या Cloud Firestore में बदलाव किया जा सकता है. साथ ही, सिस्टम को अपनी पसंद के हिसाब से बनाए रखा जा सकता है. उदाहरण के लिए, राइट इवेंट को मॉनिटर किया जा सकता है और उपयोगकर्ताओं के मैसेज में कुछ स्ट्रिंग का फ़ॉर्मैट बदला जा सकता है. उदाहरण के लिए, सभी अपरकेस का फ़ॉर्मैट बदला जा सकता है. यह सुविधा इस तरह से काम करती है:

ऐप्लिकेशन के फ़्लो को दिखाने वाला डायग्राम, जिसकी जानकारी नीचे दी गई है

  1. फ़ंक्शन का डेटाबेस इवेंट हैंडलर, किसी खास पाथ पर राइटिंग इवेंट सुनता है और मैसेज के टेक्स्ट वाला इवेंट डेटा हासिल करता है.
  2. फ़ंक्शन स्ट्रिंग को अपरकेस में बदलने के लिए, टेक्स्ट को प्रोसेस करता है.
  3. फ़ंक्शन, अपडेट किए गए टेक्स्ट को डेटाबेस में वापस लिखता है.

काम करने वाले कोड की समीक्षा करने के लिए, GitHub में सैंपल कोड देखें:

डेटाबेस को साफ़ करने और उसे मैनेज करने के अन्य उदाहरण

  • मिटाए गए उपयोगकर्ता के कॉन्टेंट को Realtime Database से पूरी तरह मिटाएं.
  • Firebase डेटाबेस में चाइल्ड नोड की संख्या को सीमित करना.
  • Realtime Database सूची में एलिमेंट की संख्या ट्रैक करें.
  • Realtime Database से Google Cloud BigQuery में डेटा कॉपी करें.
  • टेक्स्ट को इमोजी में बदलें.
  • डेटाबेस रिकॉर्ड के लिए, कैलकुलेट किया गया मेटाडेटा मैनेज करें.

ज़्यादा समय लेने वाले टास्क, अपने ऐप्लिकेशन के बजाय क्लाउड में चलाना

Cloud Functions का फ़ायदा उठाकर, उपयोगकर्ता के डिवाइस पर प्रोसेस करने के बजाय, Google क्लाउड पर ज़्यादा संसाधनों की ज़रूरत वाले काम (ज़्यादा सीपीयू या नेटवर्किंग) को ऑफ़लोड किया जा सकता है. इससे आपके ऐप्लिकेशन की परफ़ॉर्मेंस बेहतर होती है. उदाहरण के लिए, Cloud Storage पर इमेज अपलोड होने का इंतज़ार करने के लिए कोई फ़ंक्शन लिखा जा सकता है. इसके बाद, फ़ंक्शन को चलाने वाले इंस्टेंस पर इमेज डाउनलोड की जा सकती है, उसमें बदलाव किया जा सकता है, और उसे वापस Cloud Storage पर अपलोड किया जा सकता है. बदलावों में, sharp या Pillow जैसे टूल की मदद से इमेज का साइज़ बदलना, उन्हें काटना या उनका फ़ॉर्मैट बदलना शामिल हो सकता है.

यहां दिए गए डायग्राम में, ऐप्लिकेशन फ़्लो दिखाया गया है

  1. जब Cloud Storage पर कोई इमेज फ़ाइल अपलोड की जाती है, तो कोई फ़ंक्शन ट्रिगर होता है.
  2. यह फ़ंक्शन, इमेज को डाउनलोड करके उसका थंबनेल वर्शन बनाता है.
  3. यह फ़ंक्शन, थंबनेल की जगह की जानकारी को डेटाबेस में सेव करता है, ताकि क्लाइंट ऐप्लिकेशन उसे ढूंढ सके और उसका इस्तेमाल कर सके.
  4. यह फ़ंक्शन थंबनेल को एक नई जगह पर वापस Cloud Storage पर अपलोड करता है.
  5. इसके बाद, ऐप्लिकेशन थंबनेल का लिंक डाउनलोड कर लेता है.

इमेज प्रोसेसिंग के उदाहरण के बारे में जानने के लिए, Cloud Storage इवेंट मैनेज करने से जुड़ी गाइड देखें.

Firebase क्लाउड में बैच जॉब के अन्य उदाहरण

  • समय-समय पर, इस्तेमाल नहीं किए जा रहे Firebase खातों को मिटाएं Node.js | Python.
  • अपलोड की गई इमेज Node.js | Python का अपने-आप बैक अप लें.
  • उपयोगकर्ताओं को एक साथ कई ईमेल भेजना.
  • समय-समय पर डेटा इकट्ठा करना और उसका खास ब्यौरा देना.
  • पूरे नहीं किए गए काम की सूची को प्रोसेस करना.

तीसरे पक्ष की सेवाओं और एपीआई के साथ इंटिग्रेट करना

Cloud Functions, वेब एपीआई को कॉल करके और उन्हें एक्सपोज़ करके, आपके ऐप्लिकेशन को अन्य सेवाओं के साथ बेहतर तरीके से काम करने में मदद कर सकता है. उदाहरण के लिए, डेवलपमेंट पर मिलकर काम करने के लिए इस्तेमाल किया जाने वाला ऐप्लिकेशन, GitHub पर किए गए बदलावों को वर्कग्रुप चैट रूम में पोस्ट कर सकता है.

यहां दिए गए डायग्राम में, ऐप्लिकेशन फ़्लो दिखाया गया है

  1. कोई उपयोगकर्ता, GitHub रिपॉज़िटरी में कमिट को पुश करता है.
  2. एचटीटीपीएस फ़ंक्शन, GitHub वेबहुक एपीआई के ज़रिए ट्रिगर होता है.
  3. यह फ़ंक्शन, टीम के Slack चैनल पर कमिट की सूचना भेजता है.

तीसरे पक्ष की सेवाओं और एपीआई के साथ इंटिग्रेट करने के अन्य तरीके

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