Page MenuHomePhabricator

Capture browser size and screen size for web users
Open, LowestPublic

Description

Multimedia team began recording browser size and screen size for users to determine image pre-rendering requirements, this information would be valuable for making general product decisions.

https://git.wikimedia.org/blob/mediawiki%2Fextensions%2FMultimediaViewer/a8838e4bae1f32b5240ef2cbd8e5a5edd2f12a83/resources%2Fmmv%2Flogging%2Fmmv.logging.DimensionLogger.js

Must Haves

  • Capture screen size at session start
  • Capture browser size at session start
  • Capture HiDPI/Retina status
  • Ability to segment data based on geo region, and device class, and zero user status

Should Haves

  • Capture browser resize events
  • Capture new size after resize event
  • Capture users using browser screen zoom and zoom factor
  • Capture device orientation (Mobile/tablet)

Event Timeline

Jaredzimmerman-WMF raised the priority of this task from to Needs Triage.
Jaredzimmerman-WMF updated the task description. (Show Details)
Jaredzimmerman-WMF added a project: FINCH.
Jaredzimmerman-WMF changed Security from none to None.
Gilles triaged this task as Normal priority.Nov 24 2014, 1:34 PM
Tgr added a comment.Dec 4 2014, 11:50 PM

Probably duplicate of T76039 (which has some code but it hasn't been decided yet where to put it).

@Tgr, I just make a blocking task T76809: Rename WikimediaEvents extension to FINCH to aggregate tracking information from non-feature specific sources. similar to VectorBeta that we could use to contain all of these dispersed elements like this one. Let me know if that works for you…

Jaredzimmerman-WMF renamed this task from Generalize browser size and screen size detection from multimedia to all web users. to Capture browser size and screen size for web users.Dec 5 2014, 12:17 AM
Jaredzimmerman-WMF updated the task description. (Show Details)
Tgr added a comment.Dec 5 2014, 12:44 AM

It's not fully clear from the description, do you want the FINCH extension (cool name by the way) to host all the metrics collection code, or do you want it to aggregate data collected by other extensions?

We have an extension called ImageMetrics which was supposed to host the code for media-related metrics, but a shared metrics extension would be as fine place as any.

@Tgr since the collected metrics will span many projects, features, and possibly even content projects, a generalized thing seems more appropriate than keeping them within features.

Whether the extension collects or only aggregates is not a decision I feel comfortable making due to my limited technical understanding of how the code would work. I'll leave it to you or anyone you would like to involve in making that decision. If you click on the FINCH project you can get an idea of the metrics that we want to collect (or aggregate)

Tgr added a comment.Dec 5 2014, 1:01 AM

Capture HiDPI/Retina status

One thing I am unsure of (but didn't have time looking into when I wrote MediaViewer's screen size logging code) is how zoom is reported. How window.devicePixelRatio, screen.width etc are affected by zoom and/or by a real retina screen differs from browser to browser. There are also claims that sometimes it can differ within the same browser as well.

@Tgr it looks like you can detect a screen zoom event with JS but only the event, e.g. if someone zoomed, and then navigated to the site, we might not be able to detect that they were zoomed. HiDPI/Retina is separate, Juliusz was able to show me some simple query that showed this at some point. We should research this more, I'll add it to the description

Aklapper lowered the priority of this task from Normal to Lowest.Sep 1 2015, 12:31 PM
Restricted Application added a subscriber: Matanya. · View Herald TranscriptSep 1 2015, 12:31 PM
Jdforrester-WMF moved this task from Untriaged to Backlog on the Multimedia board.Sep 4 2015, 6:08 PM