div-video

Видеоролик.

JSON

{
  type*: "video",
  accessibility: {
    description: "string",
    hint: "string",
    mode: "string",
    mute_after_action: "bool_int",
    state_description: "string",
    type: "string"
  },
  alignment_horizontal: "string",
  alignment_vertical: "string",
  alpha: "number",
  aspect: {
    ratio*: "number"
  },
  autostart: "bool_int",
  background: [ div-background, ... ],
  border: {
    corner_radius: "int",
    corners_radius: {
      bottom-left: "int",
      bottom-right: "int",
      top-left: "int",
      top-right: "int"
    },
    has_shadow: "bool_int",
    shadow: {
      alpha: "number",
      blur: "int",
      color: "string",
      offset*: {
        x*: {
          unit: "string",
          value*: "number"
        },
        y*: {
          unit: "string",
          value*: "number"
        }
      }
    },
    stroke: {
      color*: "string",
      unit: "string",
      width: "int"
    }
  },
  buffering_actions: [
    {
      download_callbacks: {
        on_fail_actions: [ div-action, ... ],
        on_success_actions: [ div-action, ... ]
      },
      is_enabled: "bool_int",
      log_id*: "string",
      log_url: "string",
      menu_items: [
        {
          action: div-action,
          actions: [ div-action, ... ],
          text*: "string"
        },
        ...
      ],
      payload: "object",
      referer: "string",
      target: "string",
      typed: div-action-typed,
      url: "string"
    },
    ...
  ],
  column_span: "int",
  disappear_actions: [
    {
      disappear_duration: "int",
      download_callbacks: {
        on_fail_actions: [
          {
            download_callbacks: div-download-callbacks,
            is_enabled: "bool_int",
            log_id*: "string",
            log_url: "string",
            menu_items: [
              {
                action: div-action,
                actions: [ div-action, ... ],
                text*: "string"
              },
              ...
            ],
            payload: "object",
            referer: "string",
            target: "string",
            typed: div-action-typed,
            url: "string"
          },
          ...
        ],
        on_success_actions: [
          {
            download_callbacks: div-download-callbacks,
            is_enabled: "bool_int",
            log_id*: "string",
            log_url: "string",
            menu_items: [
              {
                action: div-action,
                actions: [ div-action, ... ],
                text*: "string"
              },
              ...
            ],
            payload: "object",
            referer: "string",
            target: "string",
            typed: div-action-typed,
            url: "string"
          },
          ...
        ]
      },
      is_enabled: "bool_int",
      log_id*: "string",
      log_limit: "int",
      payload: "object",
      referer: "string",
      typed: div-action-typed,
      url: "string",
      visibility_percentage: "int"
    },
    ...
  ],
  elapsed_time_variable: "string",
  end_actions: [
    {
      download_callbacks: {
        on_fail_actions: [ div-action, ... ],
        on_success_actions: [ div-action, ... ]
      },
      is_enabled: "bool_int",
      log_id*: "string",
      log_url: "string",
      menu_items: [
        {
          action: div-action,
          actions: [ div-action, ... ],
          text*: "string"
        },
        ...
      ],
      payload: "object",
      referer: "string",
      target: "string",
      typed: div-action-typed,
      url: "string"
    },
    ...
  ],
  extensions: [
    {
      id*: "string",
      params: "object"
    },
    ...
  ],
  fatal_actions: [
    {
      download_callbacks: {
        on_fail_actions: [ div-action, ... ],
        on_success_actions: [ div-action, ... ]
      },
      is_enabled: "bool_int",
      log_id*: "string",
      log_url: "string",
      menu_items: [
        {
          action: div-action,
          actions: [ div-action, ... ],
          text*: "string"
        },
        ...
      ],
      payload: "object",
      referer: "string",
      target: "string",
      typed: div-action-typed,
      url: "string"
    },
    ...
  ],
  focus: {
    background: [ div-background, ... ],
    border: {
      corner_radius: "int",
      corners_radius: {
        bottom-left: "int",
        bottom-right: "int",
        top-left: "int",
        top-right: "int"
      },
      has_shadow: "bool_int",
      shadow: {
        alpha: "number",
        blur: "int",
        color: "string",
        offset*: {
          x*: {
            unit: "string",
            value*: "number"
          },
          y*: {
            unit: "string",
            value*: "number"
          }
        }
      },
      stroke: {
        color*: "string",
        unit: "string",
        width: "int"
      }
    },
    next_focus_ids: {
      down: "string",
      forward: "string",
      left: "string",
      right: "string",
      up: "string"
    },
    on_blur: [
      {
        download_callbacks: {
          on_fail_actions: [ div-action, ... ],
          on_success_actions: [ div-action, ... ]
        },
        is_enabled: "bool_int",
        log_id*: "string",
        log_url: "string",
        menu_items: [
          {
            action: div-action,
            actions: [ div-action, ... ],
            text*: "string"
          },
          ...
        ],
        payload: "object",
        referer: "string",
        target: "string",
        typed: div-action-typed,
        url: "string"
      },
      ...
    ],
    on_focus: [
      {
        download_callbacks: {
          on_fail_actions: [ div-action, ... ],
          on_success_actions: [ div-action, ... ]
        },
        is_enabled: "bool_int",
        log_id*: "string",
        log_url: "string",
        menu_items: [
          {
            action: div-action,
            actions: [ div-action, ... ],
            text*: "string"
          },
          ...
        ],
        payload: "object",
        referer: "string",
        target: "string",
        typed: div-action-typed,
        url: "string"
      },
      ...
    ]
  },
  height: div-size,
  id: "string",
  margins: {
    bottom: "int",
    end: "int",
    left: "int",
    right: "int",
    start: "int",
    top: "int",
    unit: "string"
  },
  muted: "bool_int",
  paddings: {
    bottom: "int",
    end: "int",
    left: "int",
    right: "int",
    start: "int",
    top: "int",
    unit: "string"
  },
  pause_actions: [
    {
      download_callbacks: {
        on_fail_actions: [ div-action, ... ],
        on_success_actions: [ div-action, ... ]
      },
      is_enabled: "bool_int",
      log_id*: "string",
      log_url: "string",
      menu_items: [
        {
          action: div-action,
          actions: [ div-action, ... ],
          text*: "string"
        },
        ...
      ],
      payload: "object",
      referer: "string",
      target: "string",
      typed: div-action-typed,
      url: "string"
    },
    ...
  ],
  player_settings_payload: "object",
  preload_required: "bool_int",
  preview: "string",
  repeatable: "bool_int",
  resume_actions: [
    {
      download_callbacks: {
        on_fail_actions: [ div-action, ... ],
        on_success_actions: [ div-action, ... ]
      },
      is_enabled: "bool_int",
      log_id*: "string",
      log_url: "string",
      menu_items: [
        {
          action: div-action,
          actions: [ div-action, ... ],
          text*: "string"
        },
        ...
      ],
      payload: "object",
      referer: "string",
      target: "string",
      typed: div-action-typed,
      url: "string"
    },
    ...
  ],
  row_span: "int",
  scale: "string",
  selected_actions: [
    {
      download_callbacks: {
        on_fail_actions: [ div-action, ... ],
        on_success_actions: [ div-action, ... ]
      },
      is_enabled: "bool_int",
      log_id*: "string",
      log_url: "string",
      menu_items: [
        {
          action: div-action,
          actions: [ div-action, ... ],
          text*: "string"
        },
        ...
      ],
      payload: "object",
      referer: "string",
      target: "string",
      typed: div-action-typed,
      url: "string"
    },
    ...
  ],
  tooltips: [
    {
      animation_in: {
        duration: "int",
        end_value: "number",
        interpolator: "string",
        items: [ div-animation, ... ],
        name*: "string",
        repeat: div-count,
        start_delay: "int",
        start_value: "number"
      },
      animation_out: {
        duration: "int",
        end_value: "number",
        interpolator: "string",
        items: [ div-animation, ... ],
        name*: "string",
        repeat: div-count,
        start_delay: "int",
        start_value: "number"
      },
      div*: div,
      duration: "int",
      id*: "string",
      offset: {
        x*: {
          unit: "string",
          value*: "number"
        },
        y*: {
          unit: "string",
          value*: "number"
        }
      },
      position*: "string"
    },
    ...
  ],
  transform: {
    pivot_x: div-pivot,
    pivot_y: div-pivot,
    rotation: "number"
  },
  transition_change: div-change-transition,
  transition_in: div-appearance-transition,
  transition_out: div-appearance-transition,
  transition_triggers: [ "string", ... ],
  video_sources*: [
    {
      type*: "video_source",
      bitrate: "int",
      mime_type*: "string",
      resolution: {
        type*: "resolution",
        height*: "int",
        width*: "int"
      },
      url*: "string"
    },
    ...
  ],
  visibility: "string",
  visibility_action: {
    download_callbacks: {
      on_fail_actions: [
        {
          download_callbacks: div-download-callbacks,
          is_enabled: "bool_int",
          log_id*: "string",
          log_url: "string",
          menu_items: [
            {
              action: div-action,
              actions: [ div-action, ... ],
              text*: "string"
            },
            ...
          ],
          payload: "object",
          referer: "string",
          target: "string",
          typed: div-action-typed,
          url: "string"
        },
        ...
      ],
      on_success_actions: [
        {
          download_callbacks: div-download-callbacks,
          is_enabled: "bool_int",
          log_id*: "string",
          log_url: "string",
          menu_items: [
            {
              action: div-action,
              actions: [ div-action, ... ],
              text*: "string"
            },
            ...
          ],
          payload: "object",
          referer: "string",
          target: "string",
          typed: div-action-typed,
          url: "string"
        },
        ...
      ]
    },
    is_enabled: "bool_int",
    log_id*: "string",
    log_limit: "int",
    payload: "object",
    referer: "string",
    typed: div-action-typed,
    url: "string",
    visibility_duration: "int",
    visibility_percentage: "int"
  },
  visibility_actions: [
    {
      download_callbacks: {
        on_fail_actions: [
          {
            download_callbacks: div-download-callbacks,
            is_enabled: "bool_int",
            log_id*: "string",
            log_url: "string",
            menu_items: [
              {
                action: div-action,
                actions: [ div-action, ... ],
                text*: "string"
              },
              ...
            ],
            payload: "object",
            referer: "string",
            target: "string",
            typed: div-action-typed,
            url: "string"
          },
          ...
        ],
        on_success_actions: [
          {
            download_callbacks: div-download-callbacks,
            is_enabled: "bool_int",
            log_id*: "string",
            log_url: "string",
            menu_items: [
              {
                action: div-action,
                actions: [ div-action, ... ],
                text*: "string"
              },
              ...
            ],
            payload: "object",
            referer: "string",
            target: "string",
            typed: div-action-typed,
            url: "string"
          },
          ...
        ]
      },
      is_enabled: "bool_int",
      log_id*: "string",
      log_limit: "int",
      payload: "object",
      referer: "string",
      typed: div-action-typed,
      url: "string",
      visibility_duration: "int",
      visibility_percentage: "int"
    },
    ...
  ],
  width: div-size
}

Параметры

ПараметрыОписание
accessibility

object

Настройки доступности.

Значение имеет тип div-accessibility.

alignment_horizontal

string

Горизонтальное выравнивание элемента внутри родительского.

Возможные значения: left, center, right, start, end.

alignment_vertical

string

Вертикальное выравнивание элемента внутри родительского.

Возможные значения: top, center, bottom, baseline.

alpha

number

Устанавливает прозрачность всего элемента: 0 — полностью прозрачный, 1 — непрозрачный.

Ограничение для значения x: x >= 0.0 && x <= 1.0.

Значение по умолчанию: 1.0.

aspect

object

Фиксированное соотношение размеров элемента. Высота элемента вычисляется исходя из ширины, значение параметра height игнорируется.

Значение имеет тип div-aspect.

autostart

bool_int

Опция включает автоматическое воспроизведение видео. В вебе видео запускается при условии, что включена опция воспроизведения без звука.

Значение по умолчанию: false.

background

array

Фон элемента. Может содержать несколько слоев.

Массив должен быть непустым.

border

object

Рамка элемента.

Значение имеет тип div-border.

buffering_actions

array

Действия, которые выполняются во время загрузки видео.

Массив должен быть непустым.

column_span

int

Объединяет ячейки в столбце элемента grid.

Ограничение для значения x: x >= 0.

disappear_actions

array

Действия при исчезновении элемента с экрана.

Массив должен быть непустым.

elapsed_time_variable

string

Интервал времени с начала видеоролика до текущей позиции в миллисекундах.

end_actions

array

Действия, которые выполняются после окончания видео.

Массив должен быть непустым.

extensions

array

Расширения для дополнительной обработки элемента. Список расширений см. в разделе Кастомизация.

Массив должен быть непустым.

fatal_actions

array

Действия, которые выполняются, когда невозможно продолжить воспроизведение из-за ошибки плеера.

Массив должен быть непустым.

focus

object

Параметры при фокусировке на элементе или потере фокуса.

Значение имеет тип div-focus.

height

object

Высота элемента. Для Android: если в этом или в дочернем элементе есть текст, укажите высоту в sp, чтобы элемент масштабировался вместе с текстом. Подробнее о единицах измерения размера в разделе Верстка внутри карточки.

Значение имеет тип div-size.

Значение по умолчанию: {"type": "wrap_content"}.

Список возможных значений:
  • div-fixed-size
  • div-match-parent-size
  • div-wrap-content-size
  • id

    string

    Идентификатор элемента. На iOS используется в качестве accessibilityIdentifier.

    margins

    object

    Внешние отступы от рамки элемента.

    Значение имеет тип div-edge-insets.

    muted

    bool_int

    Опция отключает звук при воспроизведении видео.

    Значение по умолчанию: false.

    paddings

    object

    Внутренние отступы от рамки элемента.

    Значение имеет тип div-edge-insets.

    pause_actions

    array

    Действия, которые выполняются при приостановке воспроизведения.

    Массив должен быть непустым.

    player_settings_payload

    object

    Дополнительная информация, которая может быть использована внутри плеера.

    Доступные платформы: Android, iOS.

    preload_required

    bool_int

    Включает предзагрузку видео.

    Значение по умолчанию: false.

    Доступные платформы: Android.

    preview

    string

    Превью видео, закодированное в base64. Будет показано до момента, когда видео готово к воспроизведению. Формат data url: data:[;base64],<data>

    repeatable

    bool_int

    Опция включает повторное воспроизведение видео после окончания.

    Значение по умолчанию: false.

    resume_actions

    array

    Действия, которые выполняются при возобновлении воспроизведения видео.

    Массив должен быть непустым.

    row_span

    int

    Объединяет ячейки в строке элемента grid.

    Ограничение для значения x: x >= 0.

    scale

    string

    Масштабирование видео:
  • fit помещает видео в элемент целиком (свободное место заполняется фоном);
  • fill масштабирует видео по размеру элемента и обрезает лишнее.
  • Возможные значения: fill, no_scale, fit.

    Значение по умолчанию: fit.

    selected_actions

    array

    Список действий, которые будут выполнены при выборе элемента в пейджере.

    Массив должен быть непустым.

    tooltips

    array

    Привязанные к элементу всплывающие подсказки. Подсказка может быть показана по div-action://show_tooltip?id=, скрыта по div-action://hide_tooltip?id=, где id — id подсказки.

    Массив должен быть непустым.

    transform

    object

    Применяет к элементу переданное преобразование. Тот контент, который не поместится в исходную область просмотра, будет обрезан.

    Значение имеет тип div-transform.

    transition_change

    object

    Анимация изменения. Воспроизводится при изменении положения или размера элемента в новой верстке.

    Значение имеет тип div-change-transition.

    Список возможных значений:
  • div-change-set-transition
  • div-change-bounds-transition
  • transition_in

    object

    Анимация появления. Воспроизводится при появлении элемента с новым id. Подробнее о концепции переходов в разделе Анимация перехода.

    Значение имеет тип div-appearance-transition.

    transition_out

    object

    Анимация исчезания. Воспроизводится при исчезании элемента в новой верстке.

    Значение имеет тип div-appearance-transition.

    transition_triggers

    array

    Триггеры запуска анимации. Значение по умолчанию: [state_change, visibility_change].

    Массив должен быть непустым.

    type

    string

    Обязательный параметр.

    Значение всегда должно равняться video.

    video_sources

    array

    Обязательный параметр.

    Массив должен быть непустым.

    visibility

    string

    Видимость элемента.

    Возможные значения: visible, invisible, gone.

    Значение по умолчанию: visible.

    visibility_action

    object

    Трекинг видимости одного элемента. Не используется, если задан параметр visibility_actions.

    Значение имеет тип div-visibility-action.

    visibility_actions

    array

    Действия при появлении элемента на экране.

    Массив должен быть непустым.

    width

    object

    Ширина элемента.

    Значение имеет тип div-size.

    Значение по умолчанию: {"type": "match_parent"}.

    Список возможных значений:
  • div-fixed-size
  • div-match-parent-size
  • div-wrap-content-size
  • ПараметрыОписание
    accessibility

    object

    Настройки доступности.

    Значение имеет тип div-accessibility.

    alignment_horizontal

    string

    Горизонтальное выравнивание элемента внутри родительского.

    Возможные значения: left, center, right, start, end.

    alignment_vertical

    string

    Вертикальное выравнивание элемента внутри родительского.

    Возможные значения: top, center, bottom, baseline.

    alpha

    number

    Устанавливает прозрачность всего элемента: 0 — полностью прозрачный, 1 — непрозрачный.

    Ограничение для значения x: x >= 0.0 && x <= 1.0.

    Значение по умолчанию: 1.0.

    aspect

    object

    Фиксированное соотношение размеров элемента. Высота элемента вычисляется исходя из ширины, значение параметра height игнорируется.

    Значение имеет тип div-aspect.

    autostart

    bool_int

    Опция включает автоматическое воспроизведение видео. В вебе видео запускается при условии, что включена опция воспроизведения без звука.

    Значение по умолчанию: false.

    background

    array

    Фон элемента. Может содержать несколько слоев.

    Массив должен быть непустым.

    border

    object

    Рамка элемента.

    Значение имеет тип div-border.

    buffering_actions

    array

    Действия, которые выполняются во время загрузки видео.

    Массив должен быть непустым.

    column_span

    int

    Объединяет ячейки в столбце элемента grid.

    Ограничение для значения x: x >= 0.

    disappear_actions

    array

    Действия при исчезновении элемента с экрана.

    Массив должен быть непустым.

    elapsed_time_variable

    string

    Интервал времени с начала видеоролика до текущей позиции в миллисекундах.

    end_actions

    array

    Действия, которые выполняются после окончания видео.

    Массив должен быть непустым.

    extensions

    array

    Расширения для дополнительной обработки элемента. Список расширений см. в разделе Кастомизация.

    Массив должен быть непустым.

    fatal_actions

    array

    Действия, которые выполняются, когда невозможно продолжить воспроизведение из-за ошибки плеера.

    Массив должен быть непустым.

    focus

    object

    Параметры при фокусировке на элементе или потере фокуса.

    Значение имеет тип div-focus.

    height

    object

    Высота элемента. Для Android: если в этом или в дочернем элементе есть текст, укажите высоту в sp, чтобы элемент масштабировался вместе с текстом. Подробнее о единицах измерения размера в разделе Верстка внутри карточки.

    Значение имеет тип div-size.

    Значение по умолчанию: {"type": "wrap_content"}.

    Список возможных значений:
  • div-fixed-size
  • div-match-parent-size
  • div-wrap-content-size
  • id

    string

    Идентификатор элемента. На iOS используется в качестве accessibilityIdentifier.

    margins

    object

    Внешние отступы от рамки элемента.

    Значение имеет тип div-edge-insets.

    muted

    bool_int

    Опция отключает звук при воспроизведении видео.

    Значение по умолчанию: false.

    paddings

    object

    Внутренние отступы от рамки элемента.

    Значение имеет тип div-edge-insets.

    pause_actions

    array

    Действия, которые выполняются при приостановке воспроизведения.

    Массив должен быть непустым.

    player_settings_payload

    object

    Дополнительная информация, которая может быть использована внутри плеера.

    Доступные платформы: Android, iOS.

    preload_required

    bool_int

    Включает предзагрузку видео.

    Значение по умолчанию: false.

    Доступные платформы: Android.

    preview

    string

    Превью видео, закодированное в base64. Будет показано до момента, когда видео готово к воспроизведению. Формат data url: data:[;base64],<data>

    repeatable

    bool_int

    Опция включает повторное воспроизведение видео после окончания.

    Значение по умолчанию: false.

    resume_actions

    array

    Действия, которые выполняются при возобновлении воспроизведения видео.

    Массив должен быть непустым.

    row_span

    int

    Объединяет ячейки в строке элемента grid.

    Ограничение для значения x: x >= 0.

    scale

    string

    Масштабирование видео:
  • fit помещает видео в элемент целиком (свободное место заполняется фоном);
  • fill масштабирует видео по размеру элемента и обрезает лишнее.
  • Возможные значения: fill, no_scale, fit.

    Значение по умолчанию: fit.

    selected_actions

    array

    Список действий, которые будут выполнены при выборе элемента в пейджере.

    Массив должен быть непустым.

    tooltips

    array

    Привязанные к элементу всплывающие подсказки. Подсказка может быть показана по div-action://show_tooltip?id=, скрыта по div-action://hide_tooltip?id=, где id — id подсказки.

    Массив должен быть непустым.

    transform

    object

    Применяет к элементу переданное преобразование. Тот контент, который не поместится в исходную область просмотра, будет обрезан.

    Значение имеет тип div-transform.

    transition_change

    object

    Анимация изменения. Воспроизводится при изменении положения или размера элемента в новой верстке.

    Значение имеет тип div-change-transition.

    Список возможных значений:
  • div-change-set-transition
  • div-change-bounds-transition
  • transition_in

    object

    Анимация появления. Воспроизводится при появлении элемента с новым id. Подробнее о концепции переходов в разделе Анимация перехода.

    Значение имеет тип div-appearance-transition.

    transition_out

    object

    Анимация исчезания. Воспроизводится при исчезании элемента в новой верстке.

    Значение имеет тип div-appearance-transition.

    transition_triggers

    array

    Триггеры запуска анимации. Значение по умолчанию: [state_change, visibility_change].

    Массив должен быть непустым.

    type

    string

    Обязательный параметр.

    Значение всегда должно равняться video.

    video_sources

    array

    Обязательный параметр.

    Массив должен быть непустым.

    visibility

    string

    Видимость элемента.

    Возможные значения: visible, invisible, gone.

    Значение по умолчанию: visible.

    visibility_action

    object

    Трекинг видимости одного элемента. Не используется, если задан параметр visibility_actions.

    Значение имеет тип div-visibility-action.

    visibility_actions

    array

    Действия при появлении элемента на экране.

    Массив должен быть непустым.

    width

    object

    Ширина элемента.

    Значение имеет тип div-size.

    Значение по умолчанию: {"type": "match_parent"}.

    Список возможных значений:
  • div-fixed-size
  • div-match-parent-size
  • div-wrap-content-size