AlgorithmRules

Regelbasierter Algorithmus.

JSON-Darstellung
{
  "impressionSignalRuleset": {
    object (Ruleset)
  }
}
Felder
impressionSignalRuleset

object (Ruleset)

Regeln für die Impressionssignale

Regelsatz

Ein Regelsatz, der aus einer Liste von Regeln besteht und wie die resultierenden Werte aggregiert werden.

JSON-Darstellung
{
  "rules": [
    {
      object (Rule)
    }
  ],
  "aggregationType": enum (RuleAggregationType),
  "maxValue": number
}
Felder
rules[]

object (Rule)

Liste mit Regeln zur Generierung des Impressionswerts.

aggregationType

enum (RuleAggregationType)

So aggregieren Sie Werte ausgewerteter Regeln.

maxValue

number

Maximalwert, den der Regelsatz auswerten kann.

Regel

Satz von Bedingungen.

Der Rückgabewert der Regel ist entweder:

  • Der Rückgabewert für eine einzelne erfüllte Bedingung oder
  • Der definierte Standardrückgabewert, wenn keine Bedingungen erfüllt sind.
JSON-Darstellung
{
  "conditions": [
    {
      object (RuleCondition)
    }
  ],
  "defaultReturnValue": {
    object (SignalValue)
  }
}
Felder
conditions[]

object (RuleCondition)

Liste der Bedingungen in dieser Regel. Die Kriterien unter Bedingungen sollten sich gegenseitig ausschließen.

defaultReturnValue

object (SignalValue)

Der Standardrückgabewert, der angewendet wird, wenn keine der Bedingungen erfüllt ist.

RuleCondition

Satz von Signalvergleichen Entspricht einer if-Anweisung.

JSON-Darstellung
{
  "signalComparisons": [
    {
      object (SignalComparison)
    }
  ],
  "returnValue": {
    object (SignalValue)
  }
}
Felder
signalComparisons[]

object (SignalComparison)

Liste der Vergleiche, die eine Bedingung der if-Anweisung erstellen. Die Vergleiche werden zu einer einzigen Bedingung mit logischen AND-Operatoren kombiniert.

returnValue

object (SignalValue)

Der zurückgegebene Wert, wenn die signalComparisons-Bedingung TRUE ergibt.

SignalComparison

Ein einzelner Vergleich. Im Vergleich wird signal mit comparisonValue verglichen.

Der Vergleich von siteId==123 wird durch die folgenden Feldwerte dargestellt:

  • signal hat einen impressionSignal von SITE_ID.
  • comparisonOperator ist auf EQUAL gesetzt.
  • comparisonValue ist auf 123 eingestellt.
JSON-Darstellung
{
  "signal": {
    object (Signal)
  },
  "comparisonOperator": enum (ComparisonOperator),
  "comparisonValue": {
    object (ComparisonValue)
  }
}
Felder
signal

object (Signal)

Signal zum Vergleichen

comparisonOperator

enum (ComparisonOperator)

Operator, der zum Vergleich der beiden Werte verwendet wird.

Im resultierenden Test ist signal der erste Wert und „comparisonValue“ der zweite.

comparisonValue

object (ComparisonValue)

Wert, mit dem das Signal verglichen wird

Signal

Signal zum Auswerten von Regeln.

JSON-Darstellung
{

  // Union field signal can be only one of the following:
  "impressionSignal": enum (ImpressionSignal)
  // End of list of possible types for union field signal.
}
Felder
Union-Feld signal. Das Signal, das zum Auswerten von Regeln verwendet wird. Für signal ist nur einer der folgenden Werte zulässig:
impressionSignal

enum (ImpressionSignal)

Signal basierend auf Impressionen.

ComparisonValue

Wert, mit dem das Signal verglichen wird

JSON-Darstellung
{

  // 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.
}
Felder
Union-Feld value. Wert, mit dem das Signal verglichen wird Für value ist nur einer der folgenden Werte zulässig:
int64Value

string (int64 format)

Ganzzahlwert.

doubleValue

number

Doppelter Wert.

stringValue

string

Stringwert.

boolValue

boolean

Boolescher Wert

creativeDimensionValue

object (Dimensions)

Wert der Creative-Größe.

dayAndTimeValue

object (DayAndTime)

Wert für Tag und Uhrzeit Nur TIME_ZONE_RESOLUTION_END_USER wird unterstützt.

deviceTypeValue

enum (RuleDeviceType)

Wert des Gerätetyps.

onScreenPositionValue

enum (OnScreenPosition)

Wert der Anzeigenposition.

environmentValue

enum (Environment)

Umgebungswert.

exchangeValue

enum (Exchange)

Exchange-Wert.

DayAndTime

Darstellung der Zeit, die durch den Wochentag und die Uhrzeit definiert wird.

JSON-Darstellung
{
  "dayOfWeek": enum (DayOfWeek),
  "hourOfDay": integer,
  "timeZoneResolution": enum (TimeZoneResolution)
}
Felder
dayOfWeek

enum (DayOfWeek)

Erforderlich. Wochentag.

hourOfDay

integer

Erforderlich. Tageszeit.

timeZoneResolution

enum (TimeZoneResolution)

Erforderlich. Der zur Bestimmung der relevanten Zeitzone verwendete Mechanismus.

SignalValue

Der angepasste Wert des Signals, das für die Regelauswertung verwendet wird.

JSON-Darstellung
{
  "number": number
}
Felder
number

number

Wert, der als Ergebnis verwendet werden soll.