AlgorithmRules

Regelbasierter Algorithmus.

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

object (Ruleset)

Regeln für die Impressionssignale

Regelsatz

Regelsatz, der aus einer Liste von Regeln und der Aggregation der resultierenden Werte besteht.

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 aggregieren Sie Werte ausgewerteter Regeln.

maxValue

number

Höchstwert, 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 zwischen den Bedingungen sollten sich gegenseitig ausschließen.

defaultReturnValue

object (SignalValue)

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

RuleCondition

Gruppe von Signalvergleichen. Entspricht einer if-Anweisung.

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

object (SignalComparison)

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

returnValue

object (SignalValue)

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

SignalComparison

Ein einzelner Vergleich. Beim Vergleich wird signal mit 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 eingestellt.
JSON-Darstellung
{
  "signal": {
    object (Signal)
  },
  "comparisonOperator": enum (ComparisonOperator),
  "comparisonValue": {
    object (ComparisonValue)
  }
}
Felder
signal

object (Signal)

Zu vergleichendes Signal.

comparisonOperator

enum (ComparisonOperator)

Operator, der zum Vergleich der beiden Werte verwendet wird.

In der resultierenden Experession ist signal der erste Wert und comparisonValue der zweite Wert.

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 basierend auf Impressionen.

ComparisonValue

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-Größe.

dayAndTimeValue

object (DayAndTime)

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

deviceTypeValue

enum (RuleDeviceType)

Wert für den Gerätetyp.

onScreenPositionValue

enum (OnScreenPosition)

Wert der Anzeigenposition

environmentValue

enum (Environment)

Umgebungswert.

exchangeValue

enum (Exchange)

Wert der Anzeigenplattform.

DayAndTime

Darstellung der Zeit, die nach Wochentag und Tageszeit definiert ist.

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 relevante Zeitzone bestimmt 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.