AlgorithmRules

基于规则的算法。

JSON 表示法
{
  "impressionSignalRuleset": {
    object (Ruleset)
  },
  "postImpressionSignalRuleset": {
    object (Ruleset)
  },
  "attributionModelId": string
}
字段
impressionSignalRuleset

object (Ruleset)

展示信号的规则。

postImpressionSignalRuleset

object (Ruleset)

展示后信号的规则。

只有列入许可名单的合作伙伴才支持此字段。

attributionModelId

string (int64 format)

算法的归因模型。

只有列入许可名单的合作伙伴才支持此字段。

规则集

一个规则集,由一系列规则以及如何汇总结果值组成。

JSON 表示法
{
  "rules": [
    {
      object (Rule)
    }
  ],
  "aggregationType": enum (RuleAggregationType),
  "maxValue": number
}
字段
rules[]

object (Rule)

用于生成展示价值的规则列表。

aggregationType

enum (RuleAggregationType)

如何汇总已评估规则的值。

maxValue

number

规则集可评估的最大值。

规则

一组条件。

规则的返回值可以是:

  • 单个满足条件或
  • 在不满足任何条件时返回的已定义默认值。
JSON 表示法
{
  "conditions": [
    {
      object (RuleCondition)
    }
  ],
  "defaultReturnValue": {
    object (SignalValue)
  }
}
字段
conditions[]

object (RuleCondition)

此规则中的条件列表。条件之间的标准应互斥。

defaultReturnValue

object (SignalValue)

当不满足任何条件时应用的默认返回值。

RuleCondition

一组信号比较。等同于 if 语句。

JSON 表示法
{
  "signalComparisons": [
    {
      object (SignalComparison)
    }
  ],
  "returnValue": {
    object (SignalValue)
  }
}
字段
signalComparisons[]

object (SignalComparison)

用于构建 if 语句条件的比较项列表。这些比较会通过 AND 逻辑运算符组合成一个条件。

returnValue

object (SignalValue)

如果 signalComparisons 条件的计算结果为 TRUE,则返回此值。

SignalComparison

单项比较。该比较会将 signal 与 comparisonValue 进行比较。

siteId==123 的比较由以下字段值表示:

  • signal的impressionSignal为 SITE_ID。
  • comparisonOperator 设置为 EQUAL。
  • comparisonValue 设置为 123。
JSON 表示法
{
  "signal": {
    object (Signal)
  },
  "comparisonOperator": enum (ComparisonOperator),
  "comparisonValue": {
    object (ComparisonValue)
  }
}
字段
signal

object (Signal)

要比较的信号。

comparisonOperator

enum (ComparisonOperator)

用于比较两个值的运算符。

在生成的表达式中,signal 将是第一个值,而 `comparisonValue` 将是第二个值。

comparisonValue

object (ComparisonValue)

要与信号进行比较的值。

信号

用于评估规则的信号。

JSON 表示法
{

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "impressionSignal": enum (ImpressionSignal),
  "clickSignal": enum (ClickSignal),
  "activeViewSignal": enum (ActiveViewSignal)
  // End of mutually exclusive fields.
}
字段
用于评估规则的信号。以下是互斥字段的列表。在响应中,最多只能设置其中一个字段:
impressionSignal

enum (ImpressionSignal)

基于展示次数的信号。

clickSignal

enum (ClickSignal)

基于点击次数的信号。

只有列入许可名单的合作伙伴才支持此字段。

activeViewSignal

enum (ActiveViewSignal)

基于 Active View 的信号。

只有列入许可名单的合作伙伴才支持此字段。

互斥字段结束。

ComparisonValue

要与信号进行比较的值。

JSON 表示法
{

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "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),
  "contentDurationValue": enum (ContentDuration),
  "contentStreamTypeValue": enum (ContentStreamType),
  "contentGenreIdValue": string,
  "videoPlayerSizeValue": enum (VideoPlayerSize)
  // End of mutually exclusive fields.
}
字段
要与信号进行比较的值。以下是互斥字段的列表。在响应中,最多只能设置其中一个字段:
int64Value

string (int64 format)

整数值。

doubleValue

number

双精度值。

stringValue

string

字符串值。

boolValue

boolean

布尔值。

creativeDimensionValue

object (Dimensions)

广告素材尺寸值。

dayAndTimeValue

object (DayAndTime)

日期和时间值。仅支持 TIME_ZONE_RESOLUTION_END_USER。

deviceTypeValue

enum (RuleDeviceType)

设备类型值。

onScreenPositionValue

enum (OnScreenPosition)

广告排名值。

environmentValue

enum (Environment)

环境值。

exchangeValue

enum (Exchange)

兑换价值。

contentDurationValue

enum (ContentDuration)

视频内容时长值。

contentStreamTypeValue

enum (ContentStreamType)

视频广告投放类型值。

contentGenreIdValue

string (int64 format)

视频类型 ID 值。

videoPlayerSizeValue

enum (VideoPlayerSize)

视频播放器尺寸值。

只有列入许可名单的合作伙伴才支持此字段。

互斥字段结束。

DayAndTime

由星期几和具体时段定义的时间表示。

JSON 表示法
{
  "dayOfWeek": enum (DayOfWeek),
  "hourOfDay": integer,
  "timeZoneResolution": enum (TimeZoneResolution)
}
字段
dayOfWeek

enum (DayOfWeek)

必需。星期。

hourOfDay

integer

必需。一天中的时段。

timeZoneResolution

enum (TimeZoneResolution)

必需。用于确定相关时区的机制。

SignalValue

用于规则评估的信号的调整后值。

JSON 表示法
{

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "activeViewSignal": enum (ActiveViewSignal),
  "floodlightActivityConversionSignal": {
    object (FloodlightActivityConversionSignal)
  }
  // End of mutually exclusive fields.
  "number": number
}
字段
用于生成该值的基本信号。以下是互斥字段的列表。在响应中,最多只能设置其中一个字段:
activeViewSignal

enum (ActiveViewSignal)

基于 Active View 的信号。仅支持 TIME_ON_SCREEN。

只有列入许可名单的合作伙伴才支持此字段。

floodlightActivityConversionSignal

object (FloodlightActivityConversionSignal)

基于 Floodlight 转化事件的信号。

只有列入许可名单的合作伙伴才支持此字段。

互斥字段结束。
number

number

要用作结果的值。

FloodlightActivityConversionSignal

根据 Floodlight 转化事件对展示进行评分的规则。

JSON 表示法
{
  "floodlightActivityId": string,
  "countingMethod": enum (CountingMethod),
  "conversionCounting": enum (ConversionCounting)
}
字段
floodlightActivityId

string (int64 format)

必需。Floodlight 活动的 ID。

countingMethod

enum (CountingMethod)

必需。从 Floodlight 活动中获取价值的方式,例如转化次数。

conversionCounting

enum (ConversionCounting)

必需。要在展示价值计算中使用的转化类型,例如点击后转化。