Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

रिमोट कॉन्फिग ट्रिगर

संग्रह की मदद से व्यवस्थित रहें अपनी प्राथमिकताओं के आधार पर, कॉन्टेंट को सेव करें और कैटगरी में बांटें.

आप किसी नए कॉन्‍फ़िगर संस्‍करण के प्रकाशन या पुराने संस्‍करण में रोलबैक सहित, फायरबेस रिमोट कॉन्‍फ़िगर इवेंट के प्रतिसाद में एक फ़ंक्शन ट्रिगर कर सकते हैं। यह मार्गदर्शिका बताती है कि रिमोट कॉन्फ़िग पृष्ठभूमि फ़ंक्शन कैसे बनाया जाए जो दो टेम्पलेट संस्करणों का अंतर करता है।

रिमोट कॉन्फिग फंक्शन को ट्रिगर करें

रिमोट कॉन्फिग फ़ंक्शन को ट्रिगर करने के लिए, functions.remoteConfig द्वारा प्रदान किए गए onUpdate हैंडलर का उपयोग करें। onUpdate द्वारा लौटाए गए TemplateVersion ऑब्जेक्ट में टेम्प्लेट अपडेट के लिए प्रमुख मेटाडेटा फ़ील्ड होते हैं जैसे कि संस्करण संख्या और अपडेट का समय। आप उस उपयोगकर्ता के लिए ईमेल भी प्राप्त कर सकते हैं जिसने अद्यतन किया है, यदि उपलब्ध हो तो नाम और एक छवि के साथ।

यहां रिमोट कॉन्फिग फ़ंक्शन का एक उदाहरण दिया गया है जो प्रत्येक अपडेट किए गए संस्करण और उसके द्वारा बदले गए संस्करण का अंतर देता है। फ़ंक्शन टेम्प्लेट ऑब्जेक्ट के versionNumber संख्या फ़ील्ड की जांच करता है और वर्तमान (नया अपडेट किया गया) संस्करण को एक साथ कम संस्करण के साथ पुनर्प्राप्त करता है:

exports.showConfigDiff = functions.remoteConfig.onUpdate(versionMetadata => {
  return admin.credential.applicationDefault().getAccessToken()
    .then(accessTokenObj => {
      return accessTokenObj.access_token;
    })
    .then(accessToken => {
      const currentVersion = versionMetadata.versionNumber;
      const templatePromises = [];
      templatePromises.push(getTemplate(currentVersion, accessToken));
      templatePromises.push(getTemplate(currentVersion - 1, accessToken));

      return Promise.all(templatePromises);
    })
    .then(results => {
      const currentTemplate = results[0];
      const previousTemplate = results[1];

      const diff = jsonDiff.diffString(previousTemplate, currentTemplate);

      functions.logger.log(diff);

      return null;
    }).catch(error => {
      functions.logger.error(error);
      return null;
    });
});

यह नमूना टेम्पलेट ऑब्जेक्ट प्राप्त करने के लिए अंतर बनाने और अनुरोध बनाने के लिए json-diff और request-promise मॉड्यूल का उपयोग करता है। रिमोट कॉन्फिग क्लाइंट लॉजिक के साथ-साथ फायरबेस क्लाउड मैसेजिंग को शामिल करने वाले नमूने के लिए, रीयल टाइम में रिमोट कॉन्फिग अपडेट का प्रचार करें देखें।