Перейти к основному содержимому

Web SDK Экспериментов

Краткое содержание

Требования
На сайте должен быть установлен SDK МТС Аналитики. Для этого можно использовать МТС Тег или вручную добавить код.

Шаг 1. Установка SDK

  1. Скопируйте и добавьте код в элемент head или body каждой страницы сайта.
  2. Используйте предоставленный скрипт с переменными split и FLOW_ID.

Шаг 2. Обращение к SDK
SDK предоставляет функции для получения значений по ключам: getFeaturesList(), getFeatureValBool(), getFeatureValNum(), getFeatureValStr().
Доступны два варианта вызова: через split?.getFeatureValBool('my-feature') или window['split']?.getFeatureValBool('my-feature').

SDK установлен и настроен, можно проверять условия и отображать изменения на сайте.

Для проведения A/B-тестов, сбора и передачи данных в МТС Аналитику необходимо установить дополнительный счётчик. Это нужно, чтобы скрипт отрабатывал быстрее и скорость внесения изменений на сайт не замедлялась.

Требования

На сайте должен быть установлен SDK МТС Аналитики:

Шаг 1. Установка SDK

  1. Скопируйте и добавьте код на сайт в элемент head или body на каждую страницу сайта
<script>
(function (name, id) {
const client = document.cookie.split('; ')
.filter((c) => c.startsWith('ma_exp_cid='))[0]?.substring(11, 31),
params = `?sdkName=${name}${client ? '&clientId=' + client : ''}`;
const script = document.createElement('script');
script.async = true;
script.src = `https://serving.a.mts.ru/split-tests/sdk/${id}.js${params}`;
document.head.appendChild(script);
})('split', '<FLOW_ID>');
</script>

split — название SDK, заполнено по умолчанию

FLOW_ID — идентификатор потока

Результат

SDK Экспериментов установлен и доступен.

Шаг 2. Обращение к SDK

Функции:

  • getFeaturesList() — возвращает string[ ] массив названий ключей
  • getFeatureValBool(key: string) — возвращает boolean-значение по ключу или undefined, если не найдено
  • getFeatureValNum(key: string) — возвращает number-значение по ключу или undefined, если не найдено
  • getFeatureValStr(key: string) — возвращает string-значение по ключу или undefined, если не найдено

Вызов SDK:

Если вы используете фреймворки, которые не позволяют выбрать вариант 1, используйте вариант 2

split?.getFeatureValBool('my-feature')
Результат

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