2017-10-12 7 views

Répondre

1

Ce n'est pas possible avec Google Tag Manager par défaut.

Il est une pratique vraiment mauvais pour vos visiteurs de site Web, mais si vous voulez connaître leur vitesse en Mo/s (il est pas très précis), vous pouvez le faire suivant:

1) Créer API sur votre site Web qui répondra exactement à 1 Mo de données.

2) Ecrire du code JS, qui mesurera combien de temps ils ont passé sur le téléchargement de données 1MB

var start_time = new Date().getTime(); 

jQuery.get('your-url'+ '?timestamp=' + new Date.getTime().toString(), 
    function(data, status, xhr) { 
     var request_time = new Date().getTime() - start_time; 
     var mbs= 1/(request_time/1000.0); //this variable will have speed in MBS 
     dataLayer.push({'speed': mbs}); 
    } 
); 

3) Lisez ce dataLayer GTM

Encore une fois, il est une mauvaise pratique et il est pas très précis

0

Victors répondre, aussi imprécis que les résultats peuvent être, est probablement le moyen le plus facile (et pour la plupart des cas d'utilisation ayant quelques seaux pour les utilisateurs devraient être bien). Il fonctionnera également dans n'importe quel navigateur moderne à mi-chemin. Une implémentation qui ne dépend pas de jQuery peut être found in this very old answer (vous devrez adapter ceci pour pousser la valeur vers la couche de données).

Pour être complet:

  • Il y a aussi dedicated services pour mesurer la vitesse (je ne suis pas affilié, je viens de googlé) connexion.
  • Si vous vous sentez aventureux, vous pouvez explorer le Network Information API, qui est actuellement la plupart du temps inutile en raison au soutien du navigateur presque inexistante, mais peut-être mis en œuvre à un moment donné dans l'avenir (le downlinkMax property devrait vous donner la vitesse maximale possible pour les téléchargements)