रिमोट कॉन्फ़िगरेशन पैरामीटर और शर्तें


क्लाइंट और सर्वर, दोनों के इस्तेमाल के उदाहरणों के लिए टेंप्लेट कॉन्फ़िगर किए जा सकते हैं. क्लाइंट टेंप्लेट, उन सभी ऐप्लिकेशन इंस्टेंस को दिखाए जाते हैं जो Remote Config के लिए Firebase क्लाइंट SDK टूल लागू करते हैं. इनमें Android, Apple, वेब, Unity, Flutter, और C++ ऐप्लिकेशन शामिल हैं. सर्वर के हिसाब से बनाए गए टेंप्लेट के Remote Config पैरामीटर और वैल्यू, Remote Config लागू करने के लिए उपलब्ध कराई जाती हैं. इनमें Cloud Run और Cloud Functions भी शामिल हैं. ये Firebase Admin Node.js SDK टूल के v12.1.0 और उसके बाद के वर्शन का इस्तेमाल करते हैं.

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

Firebase कंसोल, Admin SDK या Remote Config REST API का इस्तेमाल करके, अपने पैरामीटर के लिए नई डिफ़ॉल्ट वैल्यू बनाई जा सकती हैं. साथ ही, ऐप्लिकेशन इंस्टेंस के ग्रुप को टारगेट करने के लिए, शर्तों के हिसाब से वैल्यू भी बनाई जा सकती हैं. Firebase कंसोल में कॉन्फ़िगरेशन को हर बार अपडेट करने पर, Firebase आपके Remote Config टेंप्लेट का नया वर्शन बनाता है और उसे पब्लिश करता है. पिछले वर्शन को सेव किया जाता है, ताकि ज़रूरत पड़ने पर उसे वापस लाया जा सके या उस पर रोल बैक किया जा सके. ये कार्रवाइयां, Firebase console, Firebase Admin SDK, और REST API में उपलब्ध हैं. इनके बारे में ज़्यादा जानकारी, Remote Config टेंप्लेट के वर्शन मैनेज करें में दी गई है.

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

शर्तें, नियम, और शर्त के हिसाब से वैल्यू

शर्त का इस्तेमाल, ऐप्लिकेशन इंस्टेंस के ग्रुप को टारगेट करने के लिए किया जाता है. शर्तें एक या एक से ज़्यादा नियमों से बनी होती हैं. किसी ऐप्लिकेशन इंस्टेंस के लिए शर्त का आकलन true के तौर पर करने के लिए, सभी नियमों का आकलन true के तौर पर होना चाहिए. अगर किसी नियम के लिए वैल्यू तय नहीं की गई है (उदाहरण के लिए, जब कोई वैल्यू उपलब्ध नहीं है), तो उस नियम का आकलन false के तौर पर किया जाएगा.

उदाहरण के लिए, ऐप्लिकेशन के स्प्लैश पेज की जानकारी देने वाला पैरामीटर, if device_os = Android नियम का इस्तेमाल करके, ओएस टाइप के आधार पर अलग-अलग इमेज दिखा सकता है:

Firebase कंसोल में 'splash_page' पैरामीटर का स्क्रीन कैप्चर, जिसमें iOS के लिए डिफ़ॉल्ट वैल्यू और Android के लिए शर्त के हिसाब से वैल्यू दिख रही है

इसके अलावा, समय की शर्त का इस्तेमाल करके यह कंट्रोल किया जा सकता है कि आपका ऐप्लिकेशन, प्रमोशन के लिए खास आइटम कब दिखाए.

किसी पैरामीटर में, अलग-अलग शर्तों का इस्तेमाल करने वाली कई कंडिशनल वैल्यू हो सकती हैं. साथ ही, पैरामीटर किसी प्रोजेक्ट में शर्तें शेयर कर सकते हैं. Firebase कंसोल के पैरामीटर टैब में, हर पैरामीटर की शर्तों वाली वैल्यू के लिए फ़ेच करने का प्रतिशत देखा जा सकता है. इस मेट्रिक से पता चलता है कि पिछले 24 घंटों में, हर वैल्यू वाले अनुरोधों का प्रतिशत कितना रहा.

पैरामीटर वैल्यू की प्राथमिकता

किसी पैरामीटर में, शर्तों के हिसाब से कई वैल्यू हो सकती हैं. यहां दिए गए नियमों से यह तय होता है कि Remote Config टेंप्लेट से कौनसी वैल्यू फ़ेच की जाए और किसी खास समय पर किसी ऐप्लिकेशन इंस्टेंस में कौनसी वैल्यू का इस्तेमाल किया जाए:

  1. सबसे पहले, किसी क्लाइंट के अनुरोध के लिए true की वैल्यू देने वाली सभी शर्तों पर शर्तों के हिसाब से वैल्यू लागू की जाती हैं. अगर कई शर्तों का आकलन true के तौर पर किया जाता है, तो Firebase कंसोल यूज़र इंटरफ़ेस (यूआई) में दिखाई गई पहली (टॉप) शर्त को प्राथमिकता दी जाती है. साथ ही, जब कोई ऐप्लिकेशन बैकएंड से वैल्यू फ़ेच करता है, तो उस शर्त से जुड़ी कंडीशनल वैल्यू दी जाती हैं. शर्तें टैब में जाकर, शर्तों को खींचकर और छोड़कर, उनकी प्राथमिकता बदली जा सकती है.

  2. अगर true की वैल्यू देने वाली शर्तों के साथ कोई शर्त नहीं है, तो ऐप्लिकेशन के बैकएंड से वैल्यू फ़ेच करने पर, Remote Config की डिफ़ॉल्ट वैल्यू दी जाती है. अगर बैकएंड में कोई पैरामीटर मौजूद नहीं है या डिफ़ॉल्ट वैल्यू इन-ऐप्लिकेशन डिफ़ॉल्ट का इस्तेमाल करें पर सेट है, तो ऐप्लिकेशन वैल्यू फ़ेच करते समय उस पैरामीटर के लिए कोई वैल्यू नहीं दी जाती.

आपके ऐप्लिकेशन में, पैरामीटर वैल्यू get तरीकों से दी जाती हैं. ये वैल्यू, प्राथमिकता वाली इस सूची के हिसाब से दी जाती हैं

  1. अगर कोई वैल्यू बैकएंड से फ़ेच की गई और फिर चालू की गई, तो ऐप्लिकेशन, फ़ेच की गई वैल्यू का इस्तेमाल करता है. चालू किए गए पैरामीटर की वैल्यू हमेशा सेव रहती हैं.
  2. अगर बैकएंड से कोई वैल्यू फ़ेच नहीं की गई है या Remote Config बैकएंड से फ़ेच की गई वैल्यू चालू नहीं की गई हैं, तो ऐप्लिकेशन में मौजूद डिफ़ॉल्ट वैल्यू का इस्तेमाल किया जाता है.

    डिफ़ॉल्ट वैल्यू पाने और सेट करने के बारे में ज़्यादा जानने के लिए, Remote Config टेंप्लेट की डिफ़ॉल्ट वैल्यू डाउनलोड करें लेख पढ़ें.

  3. अगर ऐप्लिकेशन में कोई डिफ़ॉल्ट वैल्यू सेट नहीं की गई है, तो ऐप्लिकेशन स्टैटिक टाइप की वैल्यू का इस्तेमाल करता है. जैसे, int के लिए 0 और boolean के लिए false.

इस ग्राफ़िक में बताया गया है कि Remote Config बैकएंड और आपके ऐप्लिकेशन में, पैरामीटर वैल्यू को प्राथमिकता कैसे दी जाती है:

ऊपर दी गई क्रम से लगाई गई सूचियों से बताए गए फ़्लो को दिखाने वाला डायग्राम

पैरामीटर वैल्यू के डेटा टाइप

Remote Config की मदद से, हर पैरामीटर के लिए डेटा टाइप चुना जा सकता है. साथ ही, टेंप्लेट अपडेट करने से पहले, उस टाइप के हिसाब से सभी Remote Config वैल्यू की पुष्टि की जा सकती है. डेटा टाइप को getRemoteConfig अनुरोध पर सेव और दिखाया जाता है.

इस तरह के डेटा का इस्तेमाल किया जा सकता है:

  • String
  • Boolean
  • Number
  • JSON

Firebase कंसोल यूज़र इंटरफ़ेस (यूआई) में, पैरामीटर बटन के बगल में मौजूद ड्रॉप-डाउन से डेटा टाइप चुना जा सकता है. REST API में, पैरामीटर ऑब्जेक्ट में value_type फ़ील्ड का इस्तेमाल करके टाइप सेट किए जा सकते हैं.

पैरामीटर ग्रुप

Remote Config की मदद से, पैरामीटर को एक साथ ग्रुप किया जा सकता है, ताकि यूज़र इंटरफ़ेस (यूआई) को बेहतर तरीके से व्यवस्थित किया जा सके और उसे इस्तेमाल करना आसान हो सके.

उदाहरण के लिए, मान लें कि आपको लॉगिन की नई सुविधा लॉन्च करते समय, पुष्टि करने के तीन अलग-अलग तरीकों को चालू या बंद करना है. Remote Config की मदद से, अपने हिसाब से टाइप चालू करने के लिए तीन पैरामीटर बनाए जा सकते हैं. इसके बाद, उन्हें "नया लॉगिन" नाम के ग्रुप में व्यवस्थित किया जा सकता है. इसके लिए, प्रीफ़िक्स या खास क्रम जोड़ने की ज़रूरत नहीं है.

Firebase कंसोल या Remote Config REST API का इस्तेमाल करके, पैरामीटर ग्रुप बनाए जा सकते हैं. आपके बनाए गए हर पैरामीटर ग्रुप का नाम, आपके Remote Config टेंप्लेट में यूनीक होता है. पैरामीटर ग्रुप बनाते समय, इन बातों का ध्यान रखें:

  • पैरामीटर को किसी भी समय सिर्फ़ एक ग्रुप में शामिल किया जा सकता है. साथ ही, पैरामीटर की कुंजी सभी पैरामीटर में यूनीक होनी चाहिए.
  • पैरामीटर ग्रुप के नाम में 256 से ज़्यादा वर्ण नहीं होने चाहिए.
  • अगर REST API और Firebase कंसोल, दोनों का इस्तेमाल किया जाता है, तो पक्का करें कि पब्लिश करने पर पैरामीटर ग्रुप को मैनेज करने के लिए, REST API लॉजिक अपडेट किया गया हो.

Firebase कंसोल का इस्तेमाल करके पैरामीटर ग्रुप बनाना या उनमें बदलाव करना

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

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

प्रोग्राम के हिसाब से ग्रुप बनाना

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

  1. मौजूदा टेंप्लेट वापस लाना
  2. अपने पैरामीटर ग्रुप को दिखाने के लिए JSON ऑब्जेक्ट जोड़ना
  3. एचटीटीपी पुट अनुरोध का इस्तेमाल करके, पैरामीटर ग्रुप पब्लिश करें.

parameterGroups ऑब्जेक्ट में ग्रुप की बटन होती हैं. इनमें नेस्ट किया गया ब्यौरा और ग्रुप किए गए पैरामीटर की सूची होती है. ध्यान दें कि हर ग्रुप का पासकोड, दुनिया भर में यूनीक होना चाहिए.

उदाहरण के लिए, यहां टेंप्लेट के रिविज़न का एक हिस्सा दिया गया है. इसमें पैरामीटर ग्रुप "नया मेन्यू" को एक पैरामीटर, pumpkin_spice_season के साथ जोड़ा गया है:

{
  "parameters": {},
  "version": {
    "versionNumber": "1",

    …

  },
  "parameterGroups": {
    "new menu": {
      "description": "New Menu",
      "parameters": {
        "pumpkin_spice_season": {
          "defaultValue": {
            "value": "true"
          },
          "description": "Whether it's pumpkin spice season."
        }
      }
    }
  }
}

कस्टम सिग्नल की शर्तें

कस्टम सिग्नल की शर्तों वाली वैल्यू का इस्तेमाल, मनमुताबिक सिग्नल से मैच करने के लिए किया जा सकता है. ये सिग्नल, Remote Config में मौजूद सिग्नल के आधार पर बनाई गई शर्तों के साथ, आपके ऐप्लिकेशन में तय और भेजे जाते हैं. इससे, ऐप्लिकेशन या क्लाइंट-साइड के अनुभव को अपनी पसंद के मुताबिक बनाया जा सकता है.

कस्टम सिग्नल की शर्तें, इन क्लाइंट एनवायरमेंट के लिए उपलब्ध हैं:

  • iOS: v11.8.0 या इसके बाद का वर्शन
  • Android: v22.1.0 या इसके बाद का वर्शन (Firebase BoM v33.8.0 या इसके बाद का वर्शन)
  • वेब: v11.2.0 या इसके बाद का वर्शन

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

  1. अपने Remote Config क्लाइंट टेंप्लेट में banner_image_url और banner_link जोड़ें. ये बैनर की इमेज और उससे जुड़े इवेंट पेज को दिखाते हैं.
  2. अपने ऐप्लिकेशन से कस्टम सिग्नल सेट करें. इसके लिए, city और preferred_event_category वैल्यू का इस्तेमाल करें.
  3. क्लाइंट के हिसाब से बनाए गए Remote Config टेंप्लेट में डिफ़ॉल्ट वैल्यू जोड़ें और पिछले चरण में सेट किए गए कस्टम सिग्नल के आधार पर, शर्तों के हिसाब से वैल्यू बनाएं.
  4. क्लाइंट के हिसाब से बनाए गए Remote Config टेंप्लेट में डिफ़ॉल्ट वैल्यू जोड़ें. साथ ही, आपने जो शर्तें तय की हैं उनके लिए शर्त के हिसाब से वैल्यू जोड़ें.
  5. कस्टम सिग्नल की शर्तों को सेट और इस्तेमाल करने के लिए, अपने ऐप्लिकेशन कोड को अपडेट करें.

अब आपका ऐप्लिकेशन, Remote Config सर्वर से इन पैरामीटर को फ़ेच करते समय, सही banner_image_url और banner_link को डाउनलोड कर सकता है.

सीमाएं

कस्टम सिग्नल की शर्तें बनाते समय, आपको इन सीमाओं का पालन करना होगा:

  • कस्टम सिग्नल की संख्या: ज़्यादा से ज़्यादा 100 कस्टम सिग्नल की शर्तें बनाई जा सकती हैं.
  • कस्टम सिग्नल का नाम: हर कस्टम सिग्नल के नाम में ज़्यादा से ज़्यादा 250 वर्ण हो सकते हैं.
  • कस्टम सिग्नल वैल्यू: हर कस्टम सिग्नल वैल्यू में ज़्यादा से ज़्यादा 500 वर्ण हो सकते हैं. रेगुलर एक्सप्रेशन का इस्तेमाल करते समय, ज़्यादा से ज़्यादा 250 वर्ण इस्तेमाल किए जा सकते हैं.

शर्त के नियम के टाइप

Firebase कंसोल में, नियम के ये टाइप काम करते हैं. Remote Config REST API में मिलती-जुलती सुविधाएं उपलब्ध हैं. इनके बारे में शर्त के साथ इस्तेमाल होने वाले एक्सप्रेशन के रेफ़रंस में बताया गया है.

नियम का प्रकार ऑपरेटर वैल्यू ध्यान दें
ऐप्लिकेशन == अपने Firebase प्रोजेक्ट से जुड़े ऐप्लिकेशन के लिए, ऐप्लिकेशन आईडी की सूची में से कोई एक चुनें. Firebase में कोई ऐप्लिकेशन जोड़ते समय, आपको बंडल आईडी या Android पैकेज का नाम डालना होता है. इससे एक एट्रिब्यूट तय होता है, जो Remote Config नियमों में ऐप्लिकेशन आईडी के तौर पर दिखता है.

इस एट्रिब्यूट का इस्तेमाल इस तरह करें:
  • Apple के प्लैटफ़ॉर्म के लिए: ऐप्लिकेशन के CFBundleIdentifier का इस्तेमाल करें. Xcode में, अपने ऐप्लिकेशन के प्राइमरी टारगेट के लिए सामान्य टैब में बंडल आइडेंटिफ़ायर देखा जा सकता है.
  • Android के लिए: ऐप्लिकेशन के applicationId का इस्तेमाल करें. applicationId को ऐप्लिकेशन-लेवल की build.gradle फ़ाइल में देखा जा सकता है.
ऐप्लिकेशन वर्शन स्ट्रिंग वैल्यू के लिए:
एग्ज़ैक्ट मैच,
इसमें शामिल है,
इसमें शामिल नहीं है,
इसमें रेगुलर एक्सप्रेशन शामिल है

नंबर वाली वैल्यू के लिए:
<, <=, =, !=, >, >=

टारगेट करने के लिए, अपने ऐप्लिकेशन के वर्शन की जानकारी दें.

इस नियम का इस्तेमाल करने से पहले, आपको अपने Firebase प्रोजेक्ट से जुड़ा Android/Apple ऐप्लिकेशन चुनने के लिए, ऐप्लिकेशन आईडी नियम का इस्तेमाल करना होगा.

Apple के प्लैटफ़ॉर्म के लिए: ऐप्लिकेशन के CFBundleShortVersionString का इस्तेमाल करें.

ध्यान दें: पक्का करें कि आपका Apple ऐप्लिकेशन, Firebase Apple प्लैटफ़ॉर्म SDK टूल के 6.24.0 या इसके बाद के वर्शन का इस्तेमाल कर रहा हो. ऐसा इसलिए, क्योंकि CFBundleShortVersionString को पुराने वर्शन में नहीं भेजा जा रहा है (रिलीज़ नोट देखें).

Android के लिए: ऐप्लिकेशन के versionName का इस्तेमाल करें.

इस नियम के लिए, स्ट्रिंग की तुलना केस-सेंसिटिव होती है. एग्ज़ैक्ट मैच, इसमें शामिल है, इसमें शामिल नहीं है या इसमें रेगुलर एक्सप्रेशन शामिल है ऑपरेटर का इस्तेमाल करते समय, एक से ज़्यादा वैल्यू चुनी जा सकती हैं.

contains regex ऑपरेटर का इस्तेमाल करते समय, RE2 फ़ॉर्मैट में रेगुलर एक्सप्रेशन बनाए जा सकते हैं. आपका रेगुलर एक्सप्रेशन, टारगेट वर्शन की स्ट्रिंग के सभी या कुछ हिस्से से मैच कर सकता है. टारगेट स्ट्रिंग के शुरू, आखिर या पूरी तरह से मैच करने के लिए, ^ और $ ऐंकर का भी इस्तेमाल किया जा सकता है.

बिल्ड नंबर स्ट्रिंग वैल्यू के लिए:
एग्ज़ैक्ट मैच,
इसमें शामिल है,
इसमें शामिल नहीं है,
रेगुलर एक्सप्रेशन

नंबर वाली वैल्यू के लिए:
=, ≠, >, ≥, <, ≤

टारगेट करने के लिए, अपने ऐप्लिकेशन के बिल्ड की जानकारी दें.

इस नियम का इस्तेमाल करने से पहले, आपको अपने Firebase प्रोजेक्ट से जुड़ा कोई Apple या Android ऐप्लिकेशन चुनने के लिए, ऐप्लिकेशन आईडी नियम का इस्तेमाल करना होगा.

यह ऑपरेटर सिर्फ़ Apple और Android ऐप्लिकेशन के लिए उपलब्ध है. यह Apple के लिए ऐप्लिकेशन के CFBundleVersion और Android के लिए versionCode से मेल खाता है. इस नियम के लिए, स्ट्रिंग की तुलना करना केस-सेंसिटिव होता है.

एग्ज़ैक्ट मैच, इसमें शामिल है, इसमें शामिल नहीं है या इसमें रेगुलर एक्सप्रेशन शामिल है ऑपरेटर का इस्तेमाल करते समय, कई वैल्यू चुनी जा सकती हैं.

contains regex ऑपरेटर का इस्तेमाल करते समय, RE2 फ़ॉर्मैट में रेगुलर एक्सप्रेशन बनाए जा सकते हैं. आपका रेगुलर एक्सप्रेशन, टारगेट वर्शन की स्ट्रिंग के सभी या कुछ हिस्से से मैच कर सकता है. टारगेट स्ट्रिंग के शुरू, आखिर या पूरी स्ट्रिंग से मैच करने के लिए, ^ और $ ऐंकर का भी इस्तेमाल किया जा सकता है.

प्लेटफ़ॉर्म == iOS
Android
वेब
 
ऑपरेटिंग सिस्टम ==

टारगेट करने के लिए ऑपरेटिंग सिस्टम की जानकारी दें.

इस नियम का इस्तेमाल करने से पहले, आपको अपने Firebase प्रोजेक्ट से जुड़ा कोई वेब ऐप्लिकेशन चुनने के लिए, ऐप्लिकेशन आईडी नियम का इस्तेमाल करना होगा.

यह नियम किसी वेब ऐप्लिकेशन इंस्टेंस के लिए true का आकलन करता है. ऐसा तब होता है, जब ऑपरेटिंग सिस्टम और उसका वर्शन, दी गई सूची में मौजूद टारगेट वैल्यू से मेल खाता हो.
ब्राउज़र ==

टारगेट करने के लिए ब्राउज़र की जानकारी दें.

इस नियम का इस्तेमाल करने से पहले, आपको अपने Firebase प्रोजेक्ट से जुड़ा कोई वेब ऐप्लिकेशन चुनने के लिए, ऐप्लिकेशन आईडी नियम का इस्तेमाल करना होगा.

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

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

ध्यान दें: कई Analytics ऑडियंस, इवेंट या उपयोगकर्ता प्रॉपर्टी के हिसाब से तय की जाती हैं. ये प्रॉपर्टी, ऐप्लिकेशन के उपयोगकर्ताओं की कार्रवाइयों पर आधारित हो सकती हैं. इसलिए, किसी ऐप्लिकेशन के किसी इंस्टेंस के लिए, ऑडियंस में उपयोगकर्ता नियम लागू होने में कुछ समय लग सकता है.

उपयोगकर्ता प्रॉपर्टी स्ट्रिंग वैल्यू के लिए:
इसमें शामिल है,
इसमें शामिल नहीं है,
पूरी तरह से मैच करती है,
इसमें रेगुलर एक्सप्रेशन शामिल है

संख्या वाली वैल्यू के लिए:
=, ≠, >, ≥, <, ≤

ध्यान दें: क्लाइंट पर, उपयोगकर्ता प्रॉपर्टी के लिए सिर्फ़ स्ट्रिंग वैल्यू सेट की जा सकती हैं. संख्या वाले ऑपरेटर का इस्तेमाल करने वाली शर्तों के लिए, Remote Config उससे जुड़ी उपयोगकर्ता प्रॉपर्टी की वैल्यू को पूर्णांक/फ़्लोट में बदल देता है.
उपलब्ध Google Analytics उपयोगकर्ता प्रॉपर्टी की सूची में से चुनें. उपयोगकर्ता प्रॉपर्टी का इस्तेमाल करके, अपने ऐप्लिकेशन को उपयोगकर्ताओं के खास सेगमेंट के हिसाब से बनाने का तरीका जानने के लिए, Remote Config और उपयोगकर्ता प्रॉपर्टी लेख पढ़ें.

उपयोगकर्ता प्रॉपर्टी के बारे में ज़्यादा जानने के लिए, ये गाइड देखें:

एग्ज़ैक्ट मैच, इसमें शामिल है, इसमें शामिल नहीं है या इसमें रेगुलर एक्सप्रेशन शामिल है ऑपरेटर का इस्तेमाल करते समय, कई वैल्यू चुनी जा सकती हैं.

contains regex ऑपरेटर का इस्तेमाल करते समय, RE2 फ़ॉर्मैट में रेगुलर एक्सप्रेशन बनाए जा सकते हैं. आपका रेगुलर एक्सप्रेशन, टारगेट वर्शन की स्ट्रिंग के सभी या कुछ हिस्से से मैच कर सकता है. टारगेट स्ट्रिंग के शुरू, आखिर या पूरी स्ट्रिंग से मैच करने के लिए, ^ और $ ऐंकर का भी इस्तेमाल किया जा सकता है.

ध्यान दें: Remote Config शर्तें बनाते समय, अपने-आप इकट्ठा होने वाली उपयोगकर्ता प्रॉपर्टी उपलब्ध नहीं होतीं.
रैंडम प्रतिशत में उपयोगकर्ता स्लाइडर (Firebase कंसोल में. REST API, <=, >, और between ऑपरेटर का इस्तेमाल करता है. 0-100

इस फ़ील्ड का इस्तेमाल करके, ऐप्लिकेशन इंस्टेंस के किसी रैंडम सैंपल में बदलाव करें. सैंपल का साइज़ .0001% तक हो सकता है. स्लाइडर विजेट का इस्तेमाल करके, रैंडम क्रम में लगाए गए उपयोगकर्ताओं (ऐप्लिकेशन इंस्टेंस) को ग्रुप में बांटें.

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

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

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

उदाहरण के लिए, एक-दूसरे से जुड़ी दो शर्तें बनाने के लिए, जो ऐप्लिकेशन के 5% उपयोगकर्ताओं पर लागू हों, तो एक शर्त को 0% से 5% के बीच के प्रतिशत से मैच करने के लिए कॉन्फ़िगर किया जा सकता है और दूसरी शर्त को 5% से 10% के बीच की रेंज से मैच करने के लिए कॉन्फ़िगर किया जा सकता है. कुछ उपयोगकर्ताओं को दोनों ग्रुप में रैंडम तौर पर दिखने की अनुमति देने के लिए, हर शर्त में नियमों के लिए अलग-अलग सीड वैल्यू का इस्तेमाल करें.

इंपोर्ट किया गया सेगमेंट में है इंपोर्ट किया गया एक या उससे ज़्यादा सेगमेंट चुनें. इस नियम के लिए, इंपोर्ट किए गए कस्टम सेगमेंट सेट अप करना ज़रूरी है.
तिथि/समय पहले और बाद में डिवाइस के टाइमज़ोन या किसी तय किए गए टाइमज़ोन में तारीख और समय, जैसे कि "(GMT+11) सिडनी टाइम." यह मौजूदा समय की तुलना, डिवाइस से फ़ेच किए गए समय से करता है.
फ़र्स्ट ओपन रिपोर्ट पहले और बाद में तय किए गए टाइमज़ोन में, तारीख और समय.

यह उन उपयोगकर्ताओं से मैच करता है जो तय की गई समयसीमा के दौरान, पहली बार टारगेट किए गए ऐप्लिकेशन को खोलते हैं.

इसके लिए, इन SDK टूल की ज़रूरत होती है:

  • Google Analytics के लिए Firebase SDK टूल
  • Apple platforms SDK v9.0.0 या Android SDK v21.1.1 के बाद का वर्शन (Firebase BoM v30.3.0 के बाद का वर्शन)
इंस्टॉलेशन आईडी में है टारगेट करने के लिए, एक या उससे ज़्यादा इंस्टॉलेशन आईडी (ज़्यादा से ज़्यादा 50) डालें. अगर किसी इंस्टॉलेशन का आईडी, वैल्यू की कॉमा लगाकर बनाई गई सूची में है, तो यह नियम उस इंस्टॉलेशन के लिए true का आकलन करता है.

इंस्टॉलेशन आईडी पाने का तरीका जानने के लिए, क्लाइंट आइडेंटिफ़ायर पाना लेख पढ़ें.
उपयोगकर्ता मौजूद है (कोई ऑपरेटर नहीं) यह मौजूदा प्रोजेक्ट में मौजूद सभी ऐप्लिकेशन के सभी उपयोगकर्ताओं को टारगेट करता है.

इस शर्त के नियम का इस्तेमाल करके, प्रोजेक्ट में मौजूद सभी उपयोगकर्ताओं को मैच करें. भले ही, वे किसी भी ऐप्लिकेशन या प्लैटफ़ॉर्म का इस्तेमाल करते हों.

कस्टम सिग्नल स्ट्रिंग वैल्यू के लिए:
इसमें शामिल है,
इसमें शामिल नहीं है,
पूरी तरह से मैच करता है,
इसमें रेगुलर एक्सप्रेशन शामिल है

संख्या वाली वैल्यू के लिए:
=, ≠, >, ≥, <, ≤

वर्शन वैल्यू के लिए:
=, ≠, >, ≥, <, ≤

इस नियम के लिए, स्ट्रिंग की तुलना केस-सेंसिटिव होती है. एग्ज़ैक्ट मैच, शामिल है, शामिल नहीं है या रेगुलर एक्सप्रेशन ऑपरेटर का इस्तेमाल करते समय, कई वैल्यू चुनी जा सकती हैं. contains रेगुलर एक्सप्रेशन ऑपरेटर का इस्तेमाल करते समय, RE2 फ़ॉर्मैट में रेगुलर एक्सप्रेशन बनाए जा सकते हैं. आपका रेगुलर एक्सप्रेशन, टारगेट वर्शन स्ट्रिंग के सभी या कुछ हिस्से से मैच कर सकता है. टारगेट स्ट्रिंग की शुरुआत, आखिर या पूरी स्ट्रिंग से मैच करने के लिए, ^ और $ ऐंकर का भी इस्तेमाल किया जा सकता है.

क्लाइंट एनवायरमेंट के लिए, इस तरह के डेटा टाइप इस्तेमाल किए जा सकते हैं:
  • iOS: int, double
  • Android: int, long, double
  • वेब: संख्या

वर्शन नंबर दिखाने वाला अंक. उदाहरण के लिए, 2.1.0.

इस्तेमाल करने के लिए, कस्टम सिग्नल की शर्तों और शर्तों वाले एक्सप्रेशन के बारे में ज़्यादा जानने के लिए, कस्टम सिग्नल की शर्तें और शर्तें बनाने के लिए इस्तेमाल किए जाने वाले एलिमेंट देखें.

खोज पैरामीटर और शर्तें

Remote Config पैरामीटर टैब में सबसे ऊपर मौजूद खोज बॉक्स का इस्तेमाल करके, Firebase कंसोल में अपने प्रोजेक्ट की पैरामीटर कुंजियां, पैरामीटर वैल्यू, और शर्तें खोजी जा सकती हैं.

पैरामीटर और शर्तों की सीमाएं

किसी Firebase प्रोजेक्ट में, ज़्यादा से ज़्यादा 2, 000 पैरामीटर और 500 शर्तें हो सकती हैं. पैरामीटर की कुंजियों में ज़्यादा से ज़्यादा 256 वर्ण हो सकते हैं. इनकी शुरुआत अंडरस्कोर या अंग्रेज़ी के अक्षर (A-Z, a-z) से होनी चाहिए. साथ ही, इनमें संख्याएं भी शामिल हो सकती हैं. किसी प्रोजेक्ट में पैरामीटर वैल्यू की स्ट्रिंग की कुल लंबाई, 1,000,000 वर्णों से ज़्यादा नहीं हो सकती.

पैरामीटर और शर्तों में हुए बदलाव देखना

Firebase कंसोल में जाकर, अपने Remote Config टेंप्लेट में हुए नए बदलाव देखे जा सकते हैं. हर पैरामीटर और शर्त के लिए, ये काम किए जा सकते हैं:

  • उस उपयोगकर्ता का नाम देखें जिसने आखिरी बार पैरामीटर या शर्त में बदलाव किया था.

  • अगर बदलाव उसी दिन हुआ है, तो ऐक्टिव Remote Config टेंप्लेट में बदलाव पब्लिश होने के बाद से बीते मिनटों या घंटों की संख्या देखें.

  • अगर बदलाव एक या उससे ज़्यादा दिन पहले हुआ था, तो वह तारीख देखें जब बदलाव को चालू Remote Config टेंप्लेट में पब्लिश किया गया था.

पैरामीटर के लिए बदलाव का इतिहास

Remote Config पैरामीटर पेज पर, पिछली बार पब्लिश किया गया कॉलम में, वह उपयोगकर्ता दिखता है जिसने आखिरी बार हर पैरामीटर में बदलाव किया था. साथ ही, बदलाव को पब्लिश करने की आखिरी तारीख भी दिखती है:

  • ग्रुप किए गए पैरामीटर के लिए बदलाव का मेटाडेटा देखने के लिए, पैरामीटर ग्रुप को बड़ा करें.

  • पब्लिश करने की तारीख के हिसाब से, बढ़ते या घटते क्रम में लगाने के लिए, पिछली बार पब्लिश किया गया कॉलम लेबल पर क्लिक करें.

शर्तों के लिए बदलाव का इतिहास

Remote Config शर्तें पेज पर, आपको वह उपयोगकर्ता दिखेगा जिसने आखिरी बार शर्त में बदलाव किया था. साथ ही, हर शर्त के नीचे पिछली बार बदलाव करने की तारीख के बगल में, वह तारीख भी दिखेगी जब उसने बदलाव किया था.

अगले चरण

Remote Config का इस्तेमाल करने के लिए, अपने Firebase प्रोजेक्ट और ऐप्लिकेशन को कॉन्फ़िगर करने का तरीका जानने के लिए, Firebase Remote Config का इस्तेमाल शुरू करना लेख पढ़ें.