RemoteConfig

रिमोट कॉन्फ़िगरेशन, रिमोट कॉन्फ़िगरेशन टेंप्लेट दिखाता है.

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

ध्यान दें: सर्वर टेंप्लेट फ़िलहाल प्रतिशत की शर्तों के साथ काम करते हैं. काम न करने वाली कंडिशनल वैल्यू के साथ सर्वर टेंप्लेट को पब्लिश करने पर, पुष्टि करने से जुड़ी गड़बड़ी दिखेगी. ज़्यादा जानकारी के लिए, सर्वर एनवायरमेंट में रिमोट कॉन्फ़िगरेशन लेख पढ़ें.

पैरामीटर की रिज़ॉल्व की गई वैल्यू, इस तरह से तय की जाती है:

ऐप्लिकेशन इंस्टेंस के लिए true conditions को रेफ़र करने वाले conditional values में, पैरामीटर की रिज़ॉल्व की गई वैल्यू, वह कंडिशनल वैल्यू है जिसका name, conditions list में सबसे पहली वैल्यू है.

ऐसा नहीं होने पर, अगर पैरामीटर में default value है, तो रिज़ॉल्व की गई वैल्यू, डिफ़ॉल्ट वैल्यू पर सेट होती है.

ऐसा नहीं होने पर, पैरामीटर का कोई मान नहीं होता और ऐप्लिकेशन इंस्टेंस से मिलने वाले नतीजे से हटा दिया जाता है.

उदाहरण के लिए, मान लें कि हमारे पास पैरामीटर कुंजी fruit है, जिसकी डिफ़ॉल्ट वैल्यू pear है और कंडिशनल वैल्यू सबमैप {"is_ios": "apple", "is_in_20_percent": "banana"} है. यहां "is_ios" और "is_20_percent", क्रम वाली शर्तों की सूची में शर्तों के नाम हैं. अगर is_ios सही है, तो fruit की वैल्यू apple होगी. अगर is_in_20_percent की वैल्यू true है, तो fruit banana वैल्यू दिखाएगा. अगर is_ios और is_in_20_percent, दोनों गलत हैं, तो fruit, pear की वैल्यू देगा. अगर कोई डिफ़ॉल्ट वैल्यू तय नहीं की गई थी और is_ios और is_in_20_percent दोनों गलत थे, तो रिमोट कॉन्फ़िगरेशन सर्वर से क्लाइंट को fruit के लिए कोई वैल्यू नहीं मिलेगी.

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

JSON के काेड में दिखाना
{
  "conditions": [
    {
      object (RemoteConfigCondition)
    }
  ],
  "parameters": {
    string: {
      object (RemoteConfigParameter)
    },
    ...
  },
  "version": {
    object (Version)
  },
  "parameterGroups": {
    string: {
      object (RemoteConfigParameterGroup)
    },
    ...
  }
}
फ़ील्ड
conditions[]

object (RemoteConfigCondition)

प्राथमिकता के हिसाब से घटते क्रम में शर्तों की सूची.

google.firebase.remoteconfig.v1.RemoteConfigCondition.name एंट्री की वैल्यू यूनीक होनी चाहिए.

parameters

map (key: string, value: object (RemoteConfigParameter))

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

एक ऑब्जेक्ट जिसमें "key": value पेयर की सूची है. उदाहरण: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

version

object (Version)

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

parameterGroups

map (key: string, value: object (RemoteConfigParameterGroup))

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

ग्रुप में पैरामीटर की एक ऐसी सूची होती है जो एपीआई के उपयोगकर्ताओं को उन पैरामीटर को ग्रुप करने की अनुमति देती है जो एक ही सुविधा या थीम से जुड़े होते हैं. ऐसा करने पर ग्रुप का संगठन ऐक्सेस करने में आसानी होती है.

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

एक ऑब्जेक्ट जिसमें "key": value पेयर की सूची है. उदाहरण: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

RemoteConfigCondition

उपयोगकर्ताओं के खास ग्रुप को टारगेट करने वाली शर्त. इन शर्तों की सूची, RemoteConfig ऑब्जेक्ट का हिस्सा बनाती है.

JSON के काेड में दिखाना
{
  "name": string,
  "expression": string,
  "tagColor": enum (ConditionDisplayColor)
}
फ़ील्ड
name

string

ज़रूरी है. इस शर्त का नाम होना चाहिए और यह यूनीक होना चाहिए.

expression

string

ज़रूरी है. इस स्थिति का तर्क.

इस फ़ील्ड के अनुमानित सिंटैक्स के लिए शर्त एक्सप्रेशन से जुड़ा दस्तावेज़ देखें.

tagColor

enum (ConditionDisplayColor)

ज़रूरी नहीं. Firebase कंसोल में डिसप्ले के मकसद से इस शर्त से जुड़ा रंग. इस मान को दर्ज नहीं कर रहा या इसमें "Condition_DISPLAY_COLOR_UNSPECIFIED" है नतीजे के तौर पर, कंसोल कंडिशन के साथ जोड़ने के लिए एक आर्बिट्रेरी रंग चुनता है.

शर्त के हिसाब से डिसप्ले का रंग

डिसप्ले के मकसद से शर्तों से जुड़े रंगों की सूची.

एनम्स
CONDITION_DISPLAY_COLOR_UNSPECIFIED
BLUE नीला
BROWN ब्राउन
CYAN स्यान
DEEP_ORANGE इसे "रेड ऑरेंज" भी कहते हैं
GREEN हरा
INDIGO गहरा नीला
LIME लाइम पत्थर
ORANGE Orange
PINK गुलाबी
PURPLE बैंगनी
TEAL हरा-नीला

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

google.firebase.remoteconfig.v1.RemoteConfig.parameters में पैरामीटर कुंजी से जुड़ी पैरामीटर वैल्यू.

पैरामीटर को असरदार बनाने के लिए, कम से कम defaultValue या conditionalValues एंट्री मौजूद होनी चाहिए.

JSON के काेड में दिखाना
{
  "defaultValue": {
    object (RemoteConfigParameterValue)
  },
  "conditionalValues": {
    string: {
      object (RemoteConfigParameterValue)
    },
    ...
  },
  "description": string,
  "valueType": enum (ParameterValueType)
}
फ़ील्ड
defaultValue

object (RemoteConfigParameterValue)

ज़रूरी नहीं - जब नाम वाली कोई भी शर्त true पर सेट नहीं होती है, तब पैरामीटर को सेट करने के लिए वैल्यू.

conditionalValues

map (key: string, value: object (RemoteConfigParameterValue))

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

एक ऑब्जेक्ट जिसमें "key": value पेयर की सूची है. उदाहरण: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

description

string

ज़रूरी नहीं. इस पैरामीटर के लिए जानकारी. इसमें 256 या इससे कम वर्ण होने चाहिए . जानकारी में कोई भी यूनिकोड वर्ण हो सकते हैं.

valueType

enum (ParameterValueType)

टेंप्लेट के मौजूदा वर्शन में, इस पैरामीटर की सभी वैल्यू के लिए डेटा टाइप. जानकारी नहीं होने पर, डिफ़ॉल्ट तौर पर ParameterValueType.STRING पर सेट होती है.

रिमोट कॉन्फ़िगरेशन पैरामीटर की वैल्यू

RemoteConfigParameterValue संसाधन में वह वैल्यू होती है जो किसी पैरामीटर में हो सकती है.

JSON के काेड में दिखाना
{

  // Union field value_option can be only one of the following:
  "value": string,
  "useInAppDefault": boolean,
  "personalizationValue": {
    object (PersonalizationValue)
  },
  "rolloutValue": {
    object (RolloutValue)
  }
  // End of list of possible types for union field value_option.
}
फ़ील्ड
यूनियन फ़ील्ड value_option. रिमोट कॉन्फ़िगरेशन पैरामीटर वैल्यू में, स्ट्रिंग (वैल्यू) या बूलियन (use_in_app_default, अगर लागू हो, तो सही पर सेट) होता है. value_option इनमें से सिर्फ़ एक हो सकता है:
value

string

वह स्ट्रिंग वैल्यू जिस पर पैरामीटर को सेट किया गया है.

useInAppDefault

boolean

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

personalizationValue

object (PersonalizationValue)

कॉन्फ़िगरेशन को फ़ेच किए जाने पर, उपयोगकर्ता के हिसाब से तय की गई डाइनैमिक वैल्यू.

rolloutValue

object (RolloutValue)

Firebase ABT प्रयोग सेवा की मदद से मैनेज की जाने वाली डाइनैमिक रोल आउट वैल्यू.

आपके हिसाब से बनाने की वैल्यू

इसमें आपके हिसाब से बनाई गई वैल्यू को फ़ेच करने के लिए ज़रूरी जानकारी शामिल होती है.

JSON के काेड में दिखाना
{
  "personalizationId": string
}
फ़ील्ड
personalizationId

string

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

रोल आउट वैल्यू

रोल आउट से जुड़ी जानकारी.

JSON के काेड में दिखाना
{
  "rolloutId": string,
  "value": string,
  "percent": number
}
फ़ील्ड
rolloutId

string

ऐसा आइडेंटिफ़ायर जो रोल आउट प्रयोग से पैरामीटर की वैल्यू जोड़ता है.

value

string

उपयोगकर्ता के लिए तय की गई वह वैल्यू जिसे रोल आउट किया जाना है.

percent

number

उन उपयोगकर्ताओं का प्रतिशत जिन्हें रोल आउट वैल्यू मिलेगी.

ParameterValueType

पैरामीटर वैल्यू के लिए स्वीकार किए जाने वाले डेटा टाइप.

एनम्स
PARAMETER_VALUE_TYPE_UNSPECIFIED ईनम की अनजान वैल्यू के बारे में जानें.
STRING स्ट्रिंग की वैल्यू दिखाता है.
BOOLEAN बूलियन वैल्यू दिखाता है ("सही" या "गलत").
NUMBER पॉज़िटिव और नेगेटिव, दोनों पूर्णांक और फ़्लोट वैल्यू दिखाता है.
JSON JSON की वैल्यू दिखाता है.

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

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

JSON के काेड में दिखाना
{
  "description": string,
  "parameters": {
    string: {
      object (RemoteConfigParameter)
    },
    ...
  }
}
फ़ील्ड
description

string

ज़रूरी नहीं. ग्रुप का ब्यौरा. इसमें 256 या इससे कम वर्ण होने चाहिए. जानकारी में कोई भी यूनिकोड वर्ण हो सकते हैं.

parameters

map (key: string, value: object (RemoteConfigParameter))

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

एक ऑब्जेक्ट जिसमें "key": value पेयर की सूची है. उदाहरण: { "name": "wrench", "mass": "1.3kg", "count": "3" }.