Опубликовать событие в Google Analytics (GA) без установленной javascript? - PullRequest
0 голосов
/ 04 мая 2020

Я бы предпочел не устанавливать все GA. Я просто хочу опубликовать Analytics js Событие ТОЛЬКО, когда кто-то начинает и заканчивает смотреть видео.

Прежде чем перестраивать свои ajax запросы, кто-нибудь знает, примут ли они такие события без инициализации с помощью ga('create') и выполнения ga('send'....)

Вместо этого я бы добавил свой собственный пиксель отслеживания прямо в GA:

<img src="https://www.google-analytics.com/collect?v=1&_v=j81&a=1781194028&t=event&_s=3&dl=https%3A%2F%2Fexample.com%2Fsearch&ul=es-us&de=UTF-8&dt=Example%20Search%20%7C%20Federal%20Labs&sd=24-bit&sr=1440x900&vp=520x697&je=0&ec=favorites&ea=click&el=PlayVideo&ev=144010&_u=KADAAUAB~&jid=&gjid=&cid=574436065.1574442199&tid=UA-117937369-1&_gid=2130537277.1588637150&gtm=2ou4m0&z=1472884464" />

Это разрешено от Google Analytics?

1 Ответ

0 голосов
/ 09 мая 2020

Следуя документации по параметрам GA здесь - https://developers.google.com/analytics/devguides/collection/protocol/v1/parameters - и изображению src, созданному при использовании gtag("event", ...) на моей странице, я создал нижеприведенную функцию для установки пустого пикселя в состоянии моего игрока меняется.

buildGAUrl() {
         // GA ids and version
         let params = ['v=1', 't=event', 'tid=UA-XXXXXXX-YY'];
         // device context
         params.push(`dl=${encodeURIComponent(document.location.href)}`);
         params.push(`dt=${document.title}`);
         params.push(`de=${document.inputEncoding}`);
         params.push(`z=${this.state.lastchange}`); // cache buster
         if (window.navigator) {
             params.push(`ul=${window.navigator.language}`);
         }
         if (window.screen) {
             params.push(`sd=${window.screen.colorDepth}-bit`);
             params.push(`sr=${window.screen.availWidth}x${window.screen.availHeight}`); // * window.devicePixelRatio?
         }
         params.push(`vp=${window.innerWidth}x${window.innerHeight}`);
         params.push("je=0"); // java is not enabled

         // my custom event data
         params.push(`ec=${this.props.media}`); // audio, video, youtube
         params.push(`ea=${this.props.status}`);
         params.push(`el=trackgc`);
         params.push(`ev=${this.props.curTrack.id[0].value}`);

         // none of these are documented so I gave them the same value set by gtag('event',...)
         params.push("_v=j82");
         params.push("a=928687677"); // use apiVersion?
         params.push("s=1"); // simple incrementing integer
         params.push("_u=CACAAUABAAAAAC~"); // ?
         params.push("jid="); // ?
         params.push("gjid="); // ?
         params.push("_gid=902841918.1588921830"); // ?
         params.push("gtm=ou4t0"); // ?

         return 'https://www.google-analytics.com/collect?' + params.join('&');
     }

Google отвечает как на мой пользовательский sr c, так и на тот, который был инициирован их библиотекой: стандартный 200.

К сожалению, я не вижу своих событий, зарегистрированных в Realtime Analytics. как я был с их библиотечным методом.

gtag('config', 'UA-XXXXXXX-YY') действительно создает свой собственный пиксель отслеживания, поэтому с очень похожей подписью. Я еще не взял это, чтобы настроить параметры выше или подделать другой к их событию конфигурации.

...