AlgorithmRules

algorytm oparty na regułach.

Zapis JSON
{
  "impressionSignalRuleset": {
    object (Ruleset)
  }
}
Pola
impressionSignalRuleset

object (Ruleset)

Reguły dotyczące sygnałów związanych z wyświetleniami.

Zestaw reguł

Zestaw reguł składający się z listy reguł wraz z informacjami o sposobie agregacji wynikowych wartości.

Zapis JSON
{
  "rules": [
    {
      object (Rule)
    }
  ],
  "aggregationType": enum (RuleAggregationType),
  "maxValue": number
}
Pola
rules[]

object (Rule)

Lista reguł generujących wartość wyświetlenia.

aggregationType

enum (RuleAggregationType)

Jak zsumować wartości ocenionych reguł.

maxValue

number

Maksymalna wartość, do której może oszacować zestaw reguł.

Reguła

Zestaw warunków.

Wartość zwracana przez regułę może być:

  • Wartość zwrócona dla pojedynczego spełnienia warunku lub
  • Zdefiniowana domyślna wartość zwracana, jeśli nie jest spełniony żaden warunek.
Zapis JSON
{
  "conditions": [
    {
      object (RuleCondition)
    }
  ],
  "defaultReturnValue": {
    object (SignalValue)
  }
}
Pola
conditions[]

object (RuleCondition)

Lista warunków tej reguły. Kryteria w warunkach powinny się wykluczać.

defaultReturnValue

object (SignalValue)

Domyślna wartość zwracana, gdy nie jest spełniony żaden z warunków.

RuleCondition

Zestaw porównań sygnałów. Odpowiednik oświadczenia if.

Zapis JSON
{
  "signalComparisons": [
    {
      object (SignalComparison)
    }
  ],
  "returnValue": {
    object (SignalValue)
  }
}
Pola
signalComparisons[]

object (SignalComparison)

Lista porównań, które tworzą warunek stwierdzenia if. Porównania są łączone w 1 warunek z operatorami logicznymi AND.

returnValue

object (SignalValue)

Wartość zwracana, jeśli warunek signalComparisons ma wartość TRUE.

SignalComparison

Jedno porównanie. W porównaniu porównywane są: signal i comparisonValue.

Porównanie siteId==123 jest reprezentowane za pomocą tych wartości pól:

  • signal ma impressionSignal SITE_ID.
  • comparisonOperator ma wartość EQUAL.
  • comparisonValue ma wartość 123.
Zapis JSON
{
  "signal": {
    object (Signal)
  },
  "comparisonOperator": enum (ComparisonOperator),
  "comparisonValue": {
    object (ComparisonValue)
  }
}
Pola
signal

object (Signal)

Sygnał do porównania.

comparisonOperator

enum (ComparisonOperator)

Operator służący do porównania tych 2 wartości.

W powstałym wyrażeniu signal będzie pierwszą wartością, a wartość „comparisonValue” będzie drugą.

comparisonValue

object (ComparisonValue)

Wartość, z którą ma być porównywany sygnał.

Sygnał

Sygnał używany do oceny reguł.

Zapis JSON
{

  // Union field signal can be only one of the following:
  "impressionSignal": enum (ImpressionSignal)
  // End of list of possible types for union field signal.
}
Pola
Pole unii signal. Sygnał używany do oceny reguł. signal może być tylko jednym z tych elementów:
impressionSignal

enum (ImpressionSignal)

Sygnał na podstawie wyświetleń.

ComparisonValue

Wartość, z którą ma być porównywany sygnał.

Zapis 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.
}
Pola
Pole unii value. Wartość, z którą ma być porównywany sygnał. value może być tylko jednym z tych elementów:
int64Value

string (int64 format)

Wartość liczby całkowitej.

doubleValue

number

Podwójna wartość.

stringValue

string

Wartość ciągu.

boolValue

boolean

Wartość logiczna.

creativeDimensionValue

object (Dimensions)

Wartość wymiaru kreacji.

dayAndTimeValue

object (DayAndTime)

Wartość data i godzina. Obsługiwana jest tylko wartość TIME_ZONE_RESOLUTION_END_USER.

deviceTypeValue

enum (RuleDeviceType)

Wartość typu urządzenia.

onScreenPositionValue

enum (OnScreenPosition)

Wartość pozycji reklamy.

environmentValue

enum (Environment)

Wartość środowiska.

exchangeValue

enum (Exchange)

Wartość wymiany.

DayAndTime

Reprezentacja czasu zdefiniowana przez dzień tygodnia i godzinę.

Zapis JSON
{
  "dayOfWeek": enum (DayOfWeek),
  "hourOfDay": integer,
  "timeZoneResolution": enum (TimeZoneResolution)
}
Pola
dayOfWeek

enum (DayOfWeek)

Wymagane. Dzień tygodnia.

hourOfDay

integer

Wymagane. Godzina.

timeZoneResolution

enum (TimeZoneResolution)

Wymagane. Mechanizm służący do określenia odpowiedniej strefy czasowej.

SignalValue

Zmiana wartości sygnału używanego do oceny reguły.

Zapis JSON
{
  "number": number
}
Pola
number

number

Wartość do użycia jako wynik.