AlgorithmRules

Regelbasierter Algorithmus.

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

object (Ruleset)

Regeln für die Impressionssignale.

Regelsatz

Eine Regelliste, die eine Liste von Regeln und die Zusammenführung der resultierenden Werte enthält.

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

object (Rule)

Liste der Regeln zum Generieren des Impressionswerts.

aggregationType

enum (RuleAggregationType)

So fügen Sie Werte ausgewerteter Regeln zusammen.

maxValue

number

Höchstwert, den der Regelsatz auswerten kann.

Regel

Bedingungen

Der Rückgabewert der Regel ist entweder:

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

object (RuleCondition)

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

defaultReturnValue

object (SignalValue)

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

RuleCondition

Signalvergleiche Entspricht einer if-Anweisung.

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

object (SignalComparison)

Liste der Vergleiche, die die Bedingung der if-Anweisung bilden. Die Vergleiche werden mithilfe von logischen AND-Operatoren zu einer einzigen Bedingung kombiniert.

returnValue

object (SignalValue)

Der Wert, der zurückgegeben wird, wenn die signalComparisons-Bedingung TRUE ergibt.

SignalComparison

Ein einzelner Vergleich. Im Vergleich werden die signal mit den comparisonValue verglichen.

Der Vergleich von siteId==123 wird mit den folgenden Feldwerten dargestellt:

  • signal hat einen impressionSignal von SITE_ID.
  • comparisonOperator ist auf EQUAL gesetzt.
  • comparisonValue ist auf 123 gesetzt.
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 Ausdruck ist signal der erste Wert und „comparisonValue“ der zweite.

comparisonValue

object (ComparisonValue)

Wert, mit dem das Signal verglichen werden soll.

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, das auf Impressionen basiert.

ComparisonValue

Ein Wert, mit dem das Signal verglichen werden soll.

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. Der Wert, mit dem das Signal verglichen werden soll. 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-Dimension.

dayAndTimeValue

object (DayAndTime)

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)

Tauschwert.

DayAndTime

Uhrzeit, definiert durch Wochentag und Tageszeit.

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 Mechanismus, mit dem die entsprechende Zeitzone ermittelt wird.

SignalValue

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

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

number

Wert, der als Ergebnis verwendet werden soll.