matomo-org / device-detector

The Universal Device Detection library will parse any User Agent and detect the browser, operating system, device used (desktop, tablet, mobile, tv, cars, console, etc.), brand and model.
http://devicedetector.net
GNU Lesser General Public License v3.0
3.15k stars 482 forks source link

Not detected: `StudioDisplay/0.5` #7456

Closed Moonbase59 closed 1 year ago

Moonbase59 commented 1 year ago

AzuraCast uses your library and pointed me here.

I was wondering why my StudioDisplay is reported as Unknown browser 0.00, instead of (at least) StudioDisplay 0.5.

StudioDisplay is a modular MQTT-based signalling & display solution for Web Radio Stations. The software is around since 2017.

It has a stream metadata reader module that reads in-stream metadata from Icecast and Shoutcast audio streams and publishes that to an MQTT server.

Its user agent looks like this (examples):

StudioDisplay/0.5 (Linux; 5.15.0-79-generic; x86_64; 64bit; latin1)
StudioDisplay/0.5 (Windows; 10; AMD64; 64bit; utf-8)
StudioDisplay/0.5 (Darwin; 21.4.0; x86_64; 64bit; utf-8)
StudioDisplay/0.5 (Linux; 5.10.63-v7+; armv7l; 32bit; utf-8)

where

* = This is the software version. Known versions so far are 0.4 and 0.5.
** = It uses a Python3 module, so these depend on what the platform module reports. *** = typically utf-8 or latin1 but can be empty (=guess) or have other values.

It is difficult to categorize, since it’s no browser but concentrates on detecting if an audio stream is live, and reads ICY metadata for displaying purposes ("now playing"). It is also not a bot or a crawler but typically watches this one stream defined in its configuration.

Maybe it could be categorized as a (non-mobile) app, or, better yet, a media player, since it behaves exactly like a media player: Connects to an audio stream and reads it (although throwing away all audio information and just keeping the in-stream metadata).

I’d still be happy if it was at least detected as StudioDisplay 0.5 and not "unknown". It is of interest to station operators (like AzuraCast) to see which listeners are actually listeners and which are just dumb displays hanging at studio walls.

Together with other data, this is typically used by web radio studios for a wall-mounted studio display like this:

grafik

sgiehl commented 1 year ago

Should be fixed with #7457

Moonbase59 commented 1 year ago

Thanks, appreciated!