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

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

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

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

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

शर्तें, नियम, और कंडीशनल वैल्यू

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

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

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

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

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

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

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

पैरामीटर वैल्यू को इन प्राथमिकता सूची के मुताबिक फ़ेच किया जाता है

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

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

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

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

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

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

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

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

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

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

फ़िलहाल, ये टाइप इस्तेमाल किए जा सकते हैं:

  • String
  • Boolean
  • Number
  • JSON

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

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

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

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

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

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

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

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

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

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

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

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

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 currently pumpkin spice season."
        }
      }
    }
  }
}

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

नीचे दिए गए नियम, Firebase कंसोल में काम करते हैं. रिमोट कॉन्फ़िगरेशन REST API में इक्विवैलेंट फ़ंक्शन, उपलब्ध है. इसके बारे में कंडिशनल एक्सप्रेशन रेफ़रंस में बताया गया है.

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

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

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

टारगेट करने के लिए, अपने ऐप्लिकेशन के वर्शन तय करें.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

टारगेट करने के लिए ऑपरेटिंग सिस्टम चुनें.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

इन SDK टूल की ज़रूरत होती है:

  • Google Analytics के लिए Firebase SDK टूल
  • Apple प्लैटफ़ॉर्म SDK टूल v9.0.0+ या Android SDK v21.1.1+ (Firebase BoM v30.3.0+)

इंस्टॉलेशन आईडी में है टारगेट करने के लिए, एक या उससे ज़्यादा इंस्टॉलेशन आईडी (ज़्यादा से ज़्यादा 50) डालें. यह नियम किसी दिए गए इंस्टॉलेशन के लिए true का आकलन करता है, अगर उस इंस्टॉलेशन का आईडी, वैल्यू की कॉमा-सेपरेटेड लिस्ट में हो.

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

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

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

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

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

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

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

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

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

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

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

पैरामीटर के अपडेट

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

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

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

शर्त से जुड़े अपडेट

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

अगले चरण

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