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

टेंप्लेट टाइप चुनें: क्लाइंट टेंप्लेट सर्वर टेंप्लेट


क्लाइंट टेंप्लेट से Remote Config पैरामीटर और वैल्यू, Remote Config के लिए Firebase क्लाइंट SDK टूल लागू करने वाले किसी भी ऐप्लिकेशन इंस्टेंस को दिखाई जा सकती हैं. इनमें Apple, Android, वेब, Flutter, Unity, और C++ ऐप्लिकेशन शामिल हैं.

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

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

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

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

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

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

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

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

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

Firebase कंसोल का इस्तेमाल करके, शर्तें जोड़ना, उनमें बदलाव करना, उनका क्रम बदलना या उन्हें मिटाना

Firebase कंसोल में, टारगेटिंग की शर्तें बनाई जा सकती हैं, उनमें बदलाव किया जा सकता है, उनका क्रम बदला जा सकता है, और उन्हें मिटाया जा सकता है. शर्तें, प्रोजेक्ट में मौजूद सभी पैरामीटर के साथ शेयर की जाती हैं. यहां शर्तों को मैनेज करने का तरीका बताया गया है:

  1. Firebase console में, DevOps और यूज़र ऐक्टिविटी > Remote Config > शर्तें पेज पर जाएं (या पैरामीटर पेज पर जाकर, शर्तें मैनेज करें को चुनें).
  2. शर्त जोड़ें: शर्त जोड़ें (या पहली शर्त बनाएं) पर क्लिक करें. इसके बाद, टारगेट करने के मकसद के हिसाब से कोई नाम डालें और टारगेट करने के एक या उससे ज़्यादा नियम चुनें.
  3. किसी शर्त में बदलाव करना: शर्त के नाम या 'बदलाव करें' आइकॉन पर क्लिक करें. इसके बाद, ज़रूरत के मुताबिक नियमों में बदलाव करें और सेव करें पर क्लिक करें.
  4. शर्त की प्राथमिकता बदलना: शर्तें पेज पर, शर्तों को उनके ग्रैब हैंडल से खींचकर छोड़ें, ताकि उनका क्रम बदला जा सके. सूची में ऊपर दी गई शर्तों को नीचे दी गई शर्तों के मुकाबले ज़्यादा प्राथमिकता दी जाती है.
  5. शर्त मिटाना: जिस शर्त को हटाना है उसके बगल में मौजूद, मिटाएं आइकॉन पर क्लिक करें. अगर किसी पैरामीटर में शर्त का रेफ़रंस दिया गया है, तो उसे हटाने पर, उससे जुड़ी शर्तों के हिसाब से तय की गई वैल्यू भी हट जाती हैं.

शर्तों में किए गए बदलावों को सेव करने के बाद, बदलाव पब्लिश करें का इस्तेमाल करके, अपने टेंप्लेट को पब्लिश करें.

आईपी पते के आधार पर ऐक्सेस कंट्रोल करने की सुविधा के साथ आईपीवी6 की सीमाएं

आईपी पते पर आधारित ऐक्सेस नीतियों के साथ इस्तेमाल करने पर, Remote Config में IPv6 के लिए सीमित सहायता उपलब्ध है. अगर आपके संगठन ने कुछ सार्वजनिक आईपी पतों की रेंज के ऐक्सेस पर पाबंदी लगाई है, तो IPv6 नेटवर्क के ज़रिए कनेक्ट करने पर ये समस्याएं हो सकती हैं:

  • कंसोल ऐक्सेस: ऐसा हो सकता है कि आपको Firebase कंसोल में Remote Config की कुछ सुविधाएं इस्तेमाल करने में परेशानी हो. जैसे, डेटा लोड करना या टारगेटिंग सेट अप करना.
  • क्लाइंट ऐक्सेस: क्लाइंट ऐप्लिकेशन को PERMISSION_DENIED गड़बड़ियां मिल सकती हैं.

इन समस्याओं से बचने के लिए, अपने नेटवर्क को IPv4 का इस्तेमाल करने के लिए कॉन्फ़िगर करें या अपने संगठन की अनुमति वाली सूची में, Firebase की ज़रूरी आईपी रेंज जोड़ें.

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

किसी पैरामीटर से कई ऐसी वैल्यू जुड़ी हो सकती हैं जो किसी शर्त के हिसाब से तय होती हैं. इन नियमों से यह तय होता है कि 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. Firebase console में, DevOps और जुड़ाव > रिमोट कॉन्फ़िगरेशन > पैरामीटर पेज पर जाएं.
  2. ग्रुप मैनेज करें को चुनें.
  3. उन पैरामीटर के लिए चेकबॉक्स चुनें जिन्हें आपको जोड़ना है. इसके बाद, ग्रुप में ले जाएं को चुनें.
  4. कोई मौजूदा ग्रुप चुनें या नाम और ब्यौरा डालकर नया ग्रुप बनाएं. इसके बाद, नया ग्रुप बनाएं को चुनें. ग्रुप को सेव करने के बाद, उसे पब्लिश किया जा सकता है. इसके लिए, बदलाव पब्लिश करें बटन का इस्तेमाल करें.

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

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

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

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

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

{
  "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 या इसके बाद का वर्शन
  • Flutter: Flutter BoM का 3.6.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(.kts) फ़ाइल में मिल सकता है.
ऐप्लिकेशन वर्शन स्ट्रिंग वैल्यू के लिए:
पूरी तरह से मेल खाती है,
शामिल है,
शामिल नहीं है,
रेगुलर एक्सप्रेशन शामिल है

संख्यात्मक वैल्यू के लिए:
<, <=, =, !=, >, >=

अपने ऐप्लिकेशन के उन वर्शन के बारे में बताएं जिन्हें टारगेट करना है.

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

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

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

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

ध्यान दें: संख्या की तुलना करने वाले ऑपरेटर (<, <=, =, !=, >, >=) सिर्फ़ संख्या वाले सिमैंटिक वर्शन (जैसे कि 1.2.3) के साथ काम करते हैं. ये प्री-रिलीज़ सफ़िक्स या हायफ़न (जैसे कि -beta या -rc) के साथ काम नहीं करते. संख्या के अलावा अन्य सफ़िक्स या हायफ़न (जैसे कि 1.5-beta) वाली वर्शन स्ट्रिंग के लिए, स्ट्रिंग ऑपरेटर का इस्तेमाल करें. जैसे, रेगुलर एक्सप्रेशन शामिल है, शामिल है या पूरी तरह से मेल खाता है.

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

रेगुलर एक्सप्रेशन शामिल है ऑपरेटर का इस्तेमाल करते समय, 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 ऑडियंस को इवेंट या उपयोगकर्ता प्रॉपर्टी के हिसाब से तय किया जाता है. ये प्रॉपर्टी, ऐप्लिकेशन के उपयोगकर्ताओं की कार्रवाइयों पर आधारित हो सकती हैं. इसलिए, किसी ऐप्लिकेशन इंस्टेंस के लिए, ऑडियंस में शामिल उपयोगकर्ता नियम लागू होने में कुछ समय लग सकता है. इसका मतलब है कि अगर कोई उपयोगकर्ता तकनीकी तौर पर किसी ऑडियंस के लिए ज़रूरी शर्तें पूरी करता है, तो भी अगर fetchAndActivate() के लागू होने के समय तक Analytics ने उपयोगकर्ता को ऑडियंस में नहीं जोड़ा है, तो उपयोगकर्ता शर्त से मैच नहीं करेगा.

उपयोगकर्ता प्रॉपर्टी स्ट्रिंग वैल्यू के लिए:
contains,
does not contain,
exactly matches,
contains regular expression

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

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

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

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

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

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

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

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

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

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

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

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

पहली बार आपका ऐप्लिकेशन खोलने वाले उपयोगकर्ताओं को टारगेट करें:

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

पहली बार ऐप्लिकेशन खोलने के आधार पर उपयोगकर्ता को टारगेट करने की सुविधा, Android, iOS या वेब ऐप्लिकेशन चुनने के बाद उपलब्ध होती है.

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

  • Firebase SDK for Google Analytics
  • Apple प्लैटफ़ॉर्म SDK v9.0.0+ या Android SDK v21.1.1+ (Firebase BoM v30.3.0+) और JavaScript SDK v12.8.0+.

Analytics पहला इस्तेमाल के दौरान क्लाइंट पर भी चालू होना चाहिए.

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

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

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

कस्टम सिग्नल स्ट्रिंग वैल्यू के लिए:
contains,
does not contain,
exactly matches,
contains regular expression

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

अगले चरण

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