AlgorithmRules

Algoritmo basado en reglas.

Representación JSON
{
  "impressionSignalRuleset": {
    object (Ruleset)
  }
}
Campos
impressionSignalRuleset

object (Ruleset)

Son las reglas para los indicadores de impresiones.

Conjunto de reglas

Un conjunto de reglas que consta de una lista de reglas y cómo agregar los valores resultantes.

Representación JSON
{
  "rules": [
    {
      object (Rule)
    }
  ],
  "aggregationType": enum (RuleAggregationType),
  "maxValue": number
}
Campos
rules[]

object (Rule)

Lista de reglas para generar el valor de impresión.

aggregationType

enum (RuleAggregationType)

Cómo agregar valores de reglas evaluadas

maxValue

number

Es el valor máximo al que puede evaluar el conjunto de reglas.

Regla

Conjunto de condiciones.

El valor que se muestra de la regla es uno de los siguientes:

  • El valor que se muestra para una condición única que se cumple o
  • El valor predeterminado que se muestra si no se cumplen condiciones.
Representación JSON
{
  "conditions": [
    {
      object (RuleCondition)
    }
  ],
  "defaultReturnValue": {
    object (SignalValue)
  }
}
Campos
conditions[]

object (RuleCondition)

Lista de condiciones en esta regla. Los criterios entre las condiciones deben ser mutuamente excluyentes.

defaultReturnValue

object (SignalValue)

El valor predeterminado que se muestra cuando no se cumple ninguna de las condiciones.

RuleCondition

Conjunto de comparaciones de indicadores. Equivale a una sentencia if.

Representación JSON
{
  "signalComparisons": [
    {
      object (SignalComparison)
    }
  ],
  "returnValue": {
    object (SignalValue)
  }
}
Campos
signalComparisons[]

object (SignalComparison)

Lista de comparaciones que compilan la condición de la sentencia if. Las comparaciones se combinan en una sola condición con operadores lógicos AND.

returnValue

object (SignalValue)

El valor que se muestra si la condición signalComparisons se evalúa como TRUE.

SignalComparison

Una sola comparación. La comparación compara el signal con el comparisonValue.

La comparación de siteId==123 se representa con los siguientes valores de campo:

  • signal tiene un impressionSignal de SITE_ID.
  • comparisonOperator se configura en EQUAL.
  • comparisonValue se estableció en 123.
Representación JSON
{
  "signal": {
    object (Signal)
  },
  "comparisonOperator": enum (ComparisonOperator),
  "comparisonValue": {
    object (ComparisonValue)
  }
}
Campos
signal

object (Signal)

Indicador para comparar.

comparisonOperator

enum (ComparisonOperator)

Operador usado para comparar los dos valores.

En la experiencia resultante, signal será el primer valor y `comparisonValue será el segundo.

comparisonValue

object (ComparisonValue)

Valor con el que se comparará el indicador.

Indicador

Indicador usado para evaluar las reglas.

Representación JSON
{

  // Union field signal can be only one of the following:
  "impressionSignal": enum (ImpressionSignal)
  // End of list of possible types for union field signal.
}
Campos
Campo de unión signal. Es el indicador que se usa para evaluar las reglas. Las direcciones (signal) solo pueden ser una de las siguientes opciones:
impressionSignal

enum (ImpressionSignal)

Indicador basado en las impresiones.

ComparisonValue

Es un valor con el que se comparará el indicador.

Representación 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.
}
Campos
Campo de unión value. Valor con el que se comparará el indicador. Las direcciones (value) solo pueden ser una de las siguientes opciones:
int64Value

string (int64 format)

Valor de número entero.

doubleValue

number

Valor doble.

stringValue

string

Valor de string

boolValue

boolean

Valor booleano.

creativeDimensionValue

object (Dimensions)

Valor de la dimensión de la creatividad.

dayAndTimeValue

object (DayAndTime)

Valor de día y hora. Solo se admite TIME_ZONE_RESOLUTION_END_USER.

deviceTypeValue

enum (RuleDeviceType)

Valor de tipo de dispositivo.

onScreenPositionValue

enum (OnScreenPosition)

Valor de la posición del anuncio.

environmentValue

enum (Environment)

Valor del entorno.

exchangeValue

enum (Exchange)

Valor de cambio.

DayAndTime

Representación del tiempo, definida por el día de la semana y la hora del día.

Representación JSON
{
  "dayOfWeek": enum (DayOfWeek),
  "hourOfDay": integer,
  "timeZoneResolution": enum (TimeZoneResolution)
}
Campos
dayOfWeek

enum (DayOfWeek)

Obligatorio. Día de la semana.

hourOfDay

integer

Obligatorio. Hora del día

timeZoneResolution

enum (TimeZoneResolution)

Obligatorio. Es el mecanismo utilizado para determinar la zona horaria relevante.

SignalValue

Se ajustó el valor del indicador utilizado para la evaluación de reglas.

Representación JSON
{
  "number": number
}
Campos
number

number

Valor que se usará como resultado.