RemoteConfig

Un RemoteConfig représente un modèle Remote Config.

Le modèle Remote Config d'un projet est évalué lors de la récupération de chaque instance d'application.

La valeur résolue d'un paramètre est déterminée comme suit :

Étant donné les conditional values qui font référence à true conditions pour l'instance d'application, la valeur résolue du paramètre est la valeur conditionnelle dont name est le plus ancien dans la conditions list .

Sinon, si le paramètre a une default value , la valeur résolue est définie sur la valeur par défaut.

Sinon, le paramètre n’a aucune valeur et est omis du résultat récupéré par l’instance d’application.

Par exemple, supposons que nous ayons la clé de paramètre fruit , avec la valeur par défaut pear et la sous-carte de valeur conditionnelle {"is_ios": "apple", "is_in_20_percent": "banana"}"is_ios" et "is_20_percent" sont des noms de conditions dans l'ordre. liste de conditions. La valeur de fruit serait évaluée à apple si is_ios est vrai. Sinon, si is_in_20_percent est true , fruit serait évalué à banana , et si is_ios et is_in_20_percent sont tous deux faux, fruit serait évalué à pear . Si aucune valeur par défaut n'était spécifiée et que is_ios et is_in_20_percent étaient tous deux faux, aucune valeur pour fruit ne serait renvoyée du serveur Remote Config au client.

Une fois le modèle Remote Config d'un projet publié via un appel projects.updateRemoteConfig réussi, les clients peuvent récupérer ces valeurs de paramètres et les afficher aux utilisateurs.

Représentation JSON
{
  "conditions": [
    {
      object (RemoteConfigCondition)
    }
  ],
  "parameters": {
    string: {
      object (RemoteConfigParameter)
    },
    ...
  },
  "version": {
    object (Version)
  },
  "parameterGroups": {
    string: {
      object (RemoteConfigParameterGroup)
    },
    ...
  }
}
Des champs
conditions[]

object ( RemoteConfigCondition )

Une liste de conditions par ordre décroissant de priorité.

Les valeurs des entrées google.firebase.remoteconfig.v1.RemoteConfigCondition.name doivent être uniques.

parameters

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

Mappage des clés de paramètre avec leurs valeurs par défaut facultatives et leurs valeurs conditionnelles facultatives.

Un objet contenant une liste de paires "key": value . Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" } .

version

object ( Version )

Sortie uniquement, à l'exception de la description de la version. Métadonnées associées à une version particulière d'un modèle. Le champ de description d'une version peut être spécifié dans les projects.updateRemoteConfig .

parameterGroups

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

Mappage des noms de groupes de paramètres avec leurs descriptions et paramètres groupés. Le nom d'un groupe est modifiable mais doit être unique parmi les groupes de la configuration. Le nom est limité à 256 caractères et destiné à être lisible par l'homme. Tous les caractères Unicode sont autorisés.

Les groupes ont une liste de paramètres qui permet aux utilisateurs de l'API de regrouper les paramètres associés à la même fonctionnalité ou au même thème pour un accès organisationnel facile.

Par exemple, un groupe de paramètres portant le nom « Search V2 » peut avoir la description « Nouvelle vue de recherche mobile » et contenir des paramètres pour la mise en page et la police de la nouvelle recherche.

Un objet contenant une liste de paires "key": value . Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" } .

Condition de configuration à distance

Une condition ciblant un groupe spécifique d’utilisateurs. Une liste de ces conditions fait partie d'un objet RemoteConfig.

Représentation JSON
{
  "name": string,
  "expression": string,
  "tagColor": enum (ConditionDisplayColor)
}
Des champs
name

string

Requis. Un nom non vide et unique de cette condition.

expression

string

Requis. La logique de cette condition.

Consultez la documentation concernant les expressions de condition pour connaître la syntaxe attendue de ce champ.

tagColor

enum ( ConditionDisplayColor )

Facultatif. Couleur associée à cette condition à des fins d'affichage dans la console Firebase. Ne pas spécifier cette valeur ou avoir "CONDITION_DISPLAY_COLOR_UNSPECIFIED" entraîne la sélection par la console d'une couleur arbitraire à associer à la condition.

ConditionAffichageCouleur

Liste des couleurs associées aux conditions à des fins d'affichage.

Énumérations
CONDITION_DISPLAY_COLOR_UNSPECIFIED
BLUE Bleu
BROWN Brun
CYAN Cyan
DEEP_ORANGE alias "Rouge Orange"
GREEN Vert
INDIGO Indigo
LIME Citron vert
ORANGE Orange
PINK Rose
PURPLE Violet
TEAL Sarcelle

Paramètre de configuration à distance

Une valeur de paramètre associée à une clé de paramètre dans google.firebase.remoteconfig.v1.RemoteConfig.parameters .

Au minimum, une entrée defaultValue ou conditionalValues ​​doit être présente pour que le paramètre ait un effet.

Représentation JSON
{
  "defaultValue": {
    object (RemoteConfigParameterValue)
  },
  "conditionalValues": {
    string: {
      object (RemoteConfigParameterValue)
    },
    ...
  },
  "description": string,
  "valueType": enum (ParameterValueType)
}
Des champs
defaultValue

object ( RemoteConfigParameterValue )

Facultatif - valeur sur laquelle définir le paramètre, lorsqu'aucune des conditions nommées n'est évaluée comme true .

conditionalValues

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

Facultatif : une carte ( condition name , valeur). Le nom_condition de priorité la plus élevée (celui répertorié en premier dans la liste des conditions de RemoteConfig) détermine la valeur de ce paramètre.

Un objet contenant une liste de paires "key": value . Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" } .

description

string

Facultatif. Une description de ce paramètre. Sa longueur doit être inférieure ou égale à 256 caractères. Une description peut contenir n'importe quel caractère Unicode.

valueType

enum ( ParameterValueType )

Type de données pour toutes les valeurs de ce paramètre dans la version actuelle du modèle. La valeur par défaut est ParameterValueType.STRING si non spécifié.

Valeur du paramètre RemoteConfig

Une ressource RemoteConfigParameterValue contient la valeur qu'un paramètre peut avoir.

Représentation JSON
{

  // Union field value_option can be only one of the following:
  "value": string,
  "useInAppDefault": boolean,
  "personalizationValue": {
    object (PersonalizationValue)
  }
  // End of list of possible types for union field value_option.
}
Des champs
Champ d'union value_option . Un RemoteConfigParameterValue se compose soit d'une chaîne (valeur), soit d'un booléen (use_in_app_default, défini sur true le cas échéant). value_option ne peut être qu'un des éléments suivants :
value

string

La valeur de chaîne à laquelle le paramètre est défini.

useInAppDefault

boolean

Si vrai, le paramètre est omis des valeurs de paramètre renvoyées à un client.

personalizationValue

object ( PersonalizationValue )

Une valeur dynamique spécifique à l'utilisateur calculée lors de la récupération de la configuration.

Valeur de personnalisation

Contient les informations nécessaires pour récupérer une valeur personnalisée.

Représentation JSON
{
  "personalizationId": string
}
Des champs
personalizationId

string

Identifiant qui représente une définition de personnalisation. Cette définition est utilisée pour résoudre la valeur au moment de la récupération de la configuration. Cette valeur générée par le système ne doit pas être modifiée.

ParamètreValueType

Types de données acceptés pour les valeurs de paramètres.

Énumérations
PARAMETER_VALUE_TYPE_UNSPECIFIED Fourre-tout pour les valeurs d'énumération non reconnues.
STRING Représente les valeurs de chaîne.
BOOLEAN Représente des valeurs booléennes (« vrai » ou « faux »).
NUMBER Représente des valeurs entières et flottantes positives et négatives.
JSON Représente les valeurs JSON.

Groupe de paramètres de configuration distante

Un groupe nommé de paramètres. Le regroupement des paramètres est uniquement destiné à des fins de gestion et n’affecte pas la récupération des valeurs de paramètres côté client.

Représentation JSON
{
  "description": string,
  "parameters": {
    string: {
      object (RemoteConfigParameter)
    },
    ...
  }
}
Des champs
description

string

Facultatif. Une description du groupe. Sa longueur doit être inférieure ou égale à 256 caractères. Une description peut contenir n'importe quel caractère Unicode.

parameters

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

Mappage des clés de paramètre avec leurs valeurs par défaut facultatives et leurs valeurs conditionnelles facultatives pour les paramètres appartenant à ce groupe. Un paramètre n'apparaît qu'une seule fois par RemoteConfig : un paramètre non groupé apparaît au niveau supérieur ; un paramètre organisé au sein d'un groupe apparaît dans la cartographie des paramètres de son groupe.

Un objet contenant une liste de paires "key": value . Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" } .