Parcourir la source

Distinguish tracks that had been muted when calculating ttfm.

master
damencho il y a 9 ans
Parent
révision
fe9aebd0c6
1 fichiers modifiés avec 11 ajouts et 1 suppressions
  1. 11
    1
      modules/RTC/JitsiRemoteTrack.js

+ 11
- 1
modules/RTC/JitsiRemoteTrack.js Voir le fichier

@@ -25,6 +25,10 @@ function JitsiRemoteTrack(conference, ownerJid, stream, track, mediaType, videoT
25 25
     this.conference = conference;
26 26
     this.peerjid = ownerJid;
27 27
     this.muted = muted;
28
+    // we want to mark whether the track has been ever muted
29
+    // to detect ttfm events for startmuted conferences, as it can significantly
30
+    // increase ttfm values
31
+    this.hasBeenMuted = muted;
28 32
 }
29 33
 
30 34
 JitsiRemoteTrack.prototype = Object.create(JitsiTrack.prototype);
@@ -38,6 +42,9 @@ JitsiRemoteTrack.prototype.setMute = function (value) {
38 42
     if(this.muted === value)
39 43
         return;
40 44
 
45
+    if(value)
46
+        this.hasBeenMuted = true;
47
+
41 48
     // we can have a fake video stream
42 49
     if(this.stream)
43 50
         this.stream.muted = value;
@@ -120,7 +127,10 @@ JitsiRemoteTrack.prototype._attachTTFMTracker = function (container) {
120 127
             - this.conference.getConnectionTimes()["muc.joined"]);
121 128
         this.conference.getConnectionTimes()[type + ".ttfm"] = ttfm;
122 129
         console.log("(TIME) TTFM " + type + ":\t", ttfm);
123
-        Statistics.analytics.sendEvent(type +'.ttfm', ttfm);
130
+        var eventName = type +'.ttfm';
131
+        if(this.hasBeenMuted)
132
+            eventName += '.muted';
133
+        Statistics.analytics.sendEvent(eventName, ttfm);
124 134
     }.bind(this));
125 135
 };
126 136
 

Chargement…
Annuler
Enregistrer