AlgorithmRules

Algorithme basé sur des règles.

Représentation JSON
{
  "impressionSignalRuleset": {
    object (Ruleset)
  }
}
Champs
impressionSignalRuleset

object (Ruleset)

Règles concernant les signaux d'impression.

Jeu de règles

Ensemble de règles composé d'une liste de règles et d'une méthode d'agrégation des valeurs obtenues.

Représentation JSON
{
  "rules": [
    {
      object (Rule)
    }
  ],
  "aggregationType": enum (RuleAggregationType),
  "maxValue": number
}
Champs
rules[]

object (Rule)

Liste des règles permettant de générer la valeur d'impression.

aggregationType

enum (RuleAggregationType)

Comment agréger les valeurs des règles évaluées

maxValue

number

Valeur maximale que le jeu de règles peut évaluer.

Règle

Ensemble de conditions.

La valeur renvoyée par la règle est l'une des suivantes :

  • Valeur renvoyée pour une seule condition remplie ou
  • Valeur de retour par défaut définie si aucune condition n'est remplie.
Représentation JSON
{
  "conditions": [
    {
      object (RuleCondition)
    }
  ],
  "defaultReturnValue": {
    object (SignalValue)
  }
}
Champs
conditions[]

object (RuleCondition)

Liste des conditions de cette règle. Les critères des conditions doivent être exclusifs les uns des autres.

defaultReturnValue

object (SignalValue)

Valeur renvoyée par défaut lorsqu'aucune des conditions n'est remplie.

RuleCondition

Ensemble de comparaisons de signaux. Équivaut à une instruction if.

Représentation JSON
{
  "signalComparisons": [
    {
      object (SignalComparison)
    }
  ],
  "returnValue": {
    object (SignalValue)
  }
}
Champs
signalComparisons[]

object (SignalComparison)

Liste des comparaisons qui créent une condition d'instruction if. Les comparaisons sont combinées en une seule condition avec des opérateurs logiques AND.

returnValue

object (SignalValue)

Valeur renvoyée si la condition signalComparisons renvoie TRUE.

SignalComparison

Une seule comparaison. La comparaison compare le signal au comparisonValue.

La comparaison de siteId==123 est représentée par les valeurs de champ suivantes :

  • signal a un impressionSignal de SITE_ID.
  • La propriété comparisonOperator est définie sur EQUAL.
  • comparisonValue est défini sur 123.
Représentation JSON
{
  "signal": {
    object (Signal)
  },
  "comparisonOperator": enum (ComparisonOperator),
  "comparisonValue": {
    object (ComparisonValue)
  }
}
Champs
signal

object (Signal)

Signal à comparer.

comparisonOperator

enum (ComparisonOperator)

Opérateur utilisé pour comparer les deux valeurs.

Dans l'expression obtenue, signal sera la première valeur et "comparisonValue" la seconde.

comparisonValue

object (ComparisonValue)

Valeur à laquelle comparer le signal.

Signal

Signal utilisé pour évaluer les règles.

Représentation JSON
{

  // Union field signal can be only one of the following:
  "impressionSignal": enum (ImpressionSignal)
  // End of list of possible types for union field signal.
}
Champs
Champ d'union signal. Signal utilisé pour évaluer les règles. signal ne peut être qu'un des éléments suivants :
impressionSignal

enum (ImpressionSignal)

Signal basé sur les impressions.

ComparisonValue

Valeur à comparer au signal.

Représentation JSON
{

  // Union field value can be only one of the following:
  "int64Value": string,
  "doubleValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "creativeDimensionValue": {
    object (Dimensions)
  },
  "dayAndTimeValue": {
    object (DayAndTime)
  },
  "deviceTypeValue": enum (RuleDeviceType),
  "onScreenPositionValue": enum (OnScreenPosition),
  "environmentValue": enum (Environment),
  "exchangeValue": enum (Exchange)
  // End of list of possible types for union field value.
}
Champs
Champ d'union value. Valeur à laquelle comparer le signal. value ne peut être qu'un des éléments suivants :
int64Value

string (int64 format)

Valeur de nombre entier ("int").

doubleValue

number

Valeur double.

stringValue

string

Valeur de chaîne.

boolValue

boolean

Valeur booléenne.

creativeDimensionValue

object (Dimensions)

Valeur de la dimension "Création".

dayAndTimeValue

object (DayAndTime)

Valeur de jour et d'heure. Seule l'option TIME_ZONE_RESOLUTION_END_USER est acceptée.

deviceTypeValue

enum (RuleDeviceType)

Valeur du type d'appareil.

onScreenPositionValue

enum (OnScreenPosition)

Valeur de position de l'annonce.

environmentValue

enum (Environment)

Valeur d'environnement.

exchangeValue

enum (Exchange)

Valeur d'échange.

DayAndTime

Représentation de l'heure définie par le jour de la semaine et l'heure de la journée.

Représentation JSON
{
  "dayOfWeek": enum (DayOfWeek),
  "hourOfDay": integer,
  "timeZoneResolution": enum (TimeZoneResolution)
}
Champs
dayOfWeek

enum (DayOfWeek)

Obligatoire. Jour de la semaine.

hourOfDay

integer

Obligatoire. Heure de la journée.

timeZoneResolution

enum (TimeZoneResolution)

Obligatoire. Mécanisme utilisé pour déterminer le fuseau horaire approprié.

SignalValue

Valeur ajustée du signal utilisé pour l'évaluation des règles.

Représentation JSON
{
  "number": number
}
Champs
number

number

Valeur à utiliser comme résultat.