Повторная инициализация сеанса Google Analytics после завершения (прерывание процесса проверки электронной торговли) - PullRequest
0 голосов
/ 08 мая 2020

Хорошо, вот сделка:

У нас прерванный процесс оформления заказа; люди переходят к определенному этапу, и, прежде чем мы сможем продолжить, необходимо проверить наличие. Проверка занимает минимум 1 день, обычно больше. После завершения процесса проверки клиент получает электронное письмо с идентифицируемой ссылкой (параметризованной) на возраст с вариантами оплаты. Клиенты довольно часто платят дни, недели, иногда даже месяцы после получения этого электронного письма.

Из-за этапа проверки сеанс прерывается, в то время как последующие шаги по-прежнему являются частью того же процесса оформления заказа. Теперь мы можем поместить sh какой-то идентификатор в настраиваемое измерение, чтобы каким-то образом связать два процесса вместе, но в идеале я бы хотел, чтобы измерение продолжалось с того места, где оно остановилось; от шага подтверждения до страницы оплаты.

Вкратце:

Часть 1: [НАЧАЛО СЕССИИ] Обзор> Добавить в корзину> Go для оформления заказа> Запрос доступности [КОНЕЦ СЕССИИ].

Часть 2: [НАЧАЛО СЕССИИ] Варианты оплаты (по электронной почте)> Оплата> Покупка завершена [КОНЕЦ СЕССИИ].

Есть ли способ повторно активировать прерванный сеанс? Мы бы предпочли не полагаться на файлы cookie браузера из-за (потенциально) длительного периода между частями 1 и 2. Можем ли мы сохранить (содержимое) файлов cookie GA на стороне сервера и заменить их в браузере, как только пользователь перейдет по параметризованной ссылке? (браузер вообще позволяет такое? ?)

1 Ответ

1 голос
/ 09 мая 2020

Вы должны сохранить clientId и отправить второе обращение с протоколом измерения, используя clientId, сохраненный как значение в параметре cid.

С помощью этой JavaScript функции вы можете получить clientId:

function getClientId() {
  try {
    var trackers = ga.getAll();
    var i, len;
    for (i = 0, len = trackers.length; i < len; i += 1) {
      if (trackers[i].get('trackingId') === 'YOUR_UA-CODE_HERE') {
        return trackers[i].get('clientId');
      }
    }
  } catch(e) {}  
  return 'false';
}

console.log(getClientId());

Здесь информация о протоколе измерения: https://developers.google.com/analytics/devguides/collection/protocol/v1/reference

...