Эта статья описывает способ интеграции кода отслеживания стриминга на сайт с помощью customTask. 

В Google Analytics есть возможность создания Task, выполняемого в процессе отправки хита - customTask. По умолчанию этот Task ничего не выполняет. Таким образом, в этом Task можно задавать кастомное поведение для реализации функции отслеживания действий на сайте в OWOX BI.

Метод с customTask является рекомендованным. Также есть альтернативный способ настройки через создание отдельного тега типа Custom HTML, указание owox в имени трекера для всех тегов Universal Analyitcs и настройку последовательностей запуска тегов. Подробнее в статье. 

Когда в customTask прописываются функции для отправки хитов в OWOX BI, это значение перезаписывает основной customTask. Каждое последующее значение customTask также перезапишет предыдущее.

В крайних случаях, когда возникает необходимость использовать несколько customTask для одного тега — объедените их код в рамках одного customTask.

Что нужно для использования customTask в настройке стриминга

1. Создайте переменную customTask типа Custom JavaScript в вашем контейнере GTM со следующим кодом:

__________081.png

function() {
return function(tracker){
tracker.set("dimensionXX", tracker.get("clientId")+"_"+Date.now());

if("undefined"===typeof tracker.get("OWOXBIStreaming")){var f=tracker.get("sendHitTask"),h=function(){function d(c){var a=!1;try{document.createElement("img").src=e(!0)+"?"+c,a=!0}catch(k){}return a}function e(c){var a="https://google-analytics-ru.bi.owox.com/collect";c||(a+="?tid="+encodeURIComponent(tracker.get("trackingId")));return a}return{send:function(c){var a;if(!(a=2036>=c.length&&d(c))){a=!1;try{a=navigator.sendBeacon&&navigator.sendBeacon(e(),
c)}catch(g){}}if(!a){a=!1;var b;try{window.XMLHttpRequest&&"withCredentials"in(b=new XMLHttpRequest)&&(b.open("POST",e(),!0),b.setRequestHeader("Content-Type","text/plain"),b.send(c),a=!0)}catch(g){}}return a||d(c)}}}();tracker.set("sendHitTask",function(d){f(d);h.send(d.get("hitPayload"));tracker.set("OWOXBIStreaming",!0)})}}
}

Обратите внимание: На месте XX необходимо указать индекс пользовательской переменной, используемой для передачи sessionId.

2. В каждом из тегов Universal Analytics, по которым вы хотите отправлять данные в BigQuery, добавьте переменную customTask в раздел Поля, которые необходимо задать (Fields to set):

__________083.png

Обратите внимание: в Название поля следует написать customTask, без скобок или друхих символов.

Использование только хитового стриминга

Если в потоке настроен сбор только данных о хитах, то используйте следующий код:

function() {
    return function(tracker){

    if("undefined"===typeof tracker.get("OWOXBIStreaming")){var f=tracker.get("sendHitTask"),h=function(){function d(c){var a=!1;try{document.createElement("img").src=e(!0)+"?"+c,a=!0}catch(k){}return a}function e(c){var a="https://google-analytics-ru.bi.owox.com/collect";c||(a+="?tid="+encodeURIComponent(tracker.get("trackingId")));return a}return{send:function(c){var a;if(!(a=2036>=c.length&&d(c))){a=!1;try{a=navigator.sendBeacon&&navigator.sendBeacon(e(),
c)}catch(g){}}if(!a){a=!1;var b;try{window.XMLHttpRequest&&"withCredentials"in(b=new XMLHttpRequest)&&(b.open("POST",e(),!0),b.setRequestHeader("Content-Type","text/plain"),b.send(c),a=!0)}catch(g){}}return a||d(c)}}}();tracker.set("sendHitTask",function(d){f(d);h.send(d.get("hitPayload"));tracker.set("OWOXBIStreaming",!0)})}}
}

Все прочие настройки остаются неизменны. 

Обратите внимание:
Если после настройки и начала сбора данных вы наблюдаете расхождения с Google Analytics, изучите информацию в нашей статье о возможных причинах таких расхождений.

Отправка данных только в OWOX BI 

В тегах, где вам необходима отправка только в OWOX BI, блокируя отправку в Google Analytics, задайте переменную customTask со следующим кодом, где вместо «XX» в «dimensionXX» укажите индекс пользовательского параметра для сбора sessionId:


 function() {
return function(tracker){
tracker.set("dimensionXX", tracker.get("clientId")+"_"+Date.now());

if("undefined"===typeof tracker.get("OWOXBIStreaming")){var f=tracker.get("sendHitTask"),h=function(){function d(c){var a=!1;try{document.createElement("img").src=e(!0)+"?"+c,a=!0}catch(k){}return a}function e(c){var a="https://google-analytics-ru.bi.owox.com/collect";c||(a+="?tid="+encodeURIComponent(tracker.get("trackingId")));return a}return{send:function(c){var a;if(!(a=2036>=c.length&&d(c))){a=!1;try{a=navigator.sendBeacon&&navigator.sendBeacon(e(),
c)}catch(g){}}if(!a){a=!1;var b;try{window.XMLHttpRequest&&"withCredentials"in(b=new XMLHttpRequest)&&(b.open("POST",e(),!0),b.setRequestHeader("Content-Type","text/plain"),b.send(c),a=!0)}catch(g){}}return a||d(c)}}}();tracker.set("sendHitTask",function(d){h.send(d.get("hitPayload"));tracker.set("OWOXBIStreaming",!0)})}}
}

Задавая разные переменные customTask для разных тегов, вы можете регулировать источники данных по событиям каждого тега.

Была ли эта статья полезной?
Пользователи, считающие этот материал полезным: 0 из 0
Еще есть вопросы? Отправить запрос

0 Комментарии

Войдите в службу, чтобы оставить комментарий.