1*d5ef99ddSAndreas Gohr############### 2*d5ef99ddSAndreas Gohr# Device Detector - The Universal Device Detection library for parsing User Agents 3*d5ef99ddSAndreas Gohr# 4*d5ef99ddSAndreas Gohr# @link https://matomo.org 5*d5ef99ddSAndreas Gohr# @license http://www.gnu.org/licenses/lgpl.html LGPL v3 or later 6*d5ef99ddSAndreas Gohr############### 7*d5ef99ddSAndreas Gohr 8*d5ef99ddSAndreas Gohr- regex: 'Audacious(?:[ /]([\d.]+))?' 9*d5ef99ddSAndreas Gohr name: 'Audacious' 10*d5ef99ddSAndreas Gohr version: '$1' 11*d5ef99ddSAndreas Gohr 12*d5ef99ddSAndreas Gohr- regex: '(?:AlexaMediaPlayer/|^AlexaMediaPlayer/|^Echo/|Amazon;Echo(?:_|;)|^AlexaService/|^Alexa Mobile Voice/)([a-z\d]+\.[a-z.\d]+)?' 13*d5ef99ddSAndreas Gohr name: 'Alexa' 14*d5ef99ddSAndreas Gohr version: '$1' 15*d5ef99ddSAndreas Gohr 16*d5ef99ddSAndreas Gohr- regex: 'Banshee(?:[ /]([\d.]+))?' 17*d5ef99ddSAndreas Gohr name: 'Banshee' 18*d5ef99ddSAndreas Gohr version: '$1' 19*d5ef99ddSAndreas Gohr 20*d5ef99ddSAndreas Gohr- regex: 'Boxee(?:[ /]([\d.]+))?' 21*d5ef99ddSAndreas Gohr name: 'Boxee' 22*d5ef99ddSAndreas Gohr version: '$1' 23*d5ef99ddSAndreas Gohr 24*d5ef99ddSAndreas Gohr- regex: 'Clementine(?:[ /]([\d.]+))?' 25*d5ef99ddSAndreas Gohr name: 'Clementine' 26*d5ef99ddSAndreas Gohr version: '$1' 27*d5ef99ddSAndreas Gohr 28*d5ef99ddSAndreas Gohr- regex: 'Deezer(?:/([\d.]+))?' 29*d5ef99ddSAndreas Gohr name: 'Deezer' 30*d5ef99ddSAndreas Gohr version: '$1' 31*d5ef99ddSAndreas Gohr 32*d5ef99ddSAndreas Gohr- regex: 'iTunes(?:-iPhone|-iPad)?(?:/([\d.]+))?' 33*d5ef99ddSAndreas Gohr name: 'iTunes' 34*d5ef99ddSAndreas Gohr version: '$1' 35*d5ef99ddSAndreas Gohr 36*d5ef99ddSAndreas Gohr- regex: 'FlyCast(?:/([\d.]+))?' 37*d5ef99ddSAndreas Gohr name: 'FlyCast' 38*d5ef99ddSAndreas Gohr version: '$1' 39*d5ef99ddSAndreas Gohr 40*d5ef99ddSAndreas Gohr- regex: 'foobar2000(?:/([\d.]+))?' 41*d5ef99ddSAndreas Gohr name: 'Foobar2000' 42*d5ef99ddSAndreas Gohr version: '$1' 43*d5ef99ddSAndreas Gohr 44*d5ef99ddSAndreas Gohr- regex: 'MediaMonkey(?:[ /](\d+[.\d]+))?' 45*d5ef99ddSAndreas Gohr name: 'MediaMonkey' 46*d5ef99ddSAndreas Gohr version: '$1' 47*d5ef99ddSAndreas Gohr 48*d5ef99ddSAndreas Gohr- regex: 'Miro(?:/(\d+[.\d]+))?' 49*d5ef99ddSAndreas Gohr name: 'Miro' 50*d5ef99ddSAndreas Gohr version: '$1' 51*d5ef99ddSAndreas Gohr 52*d5ef99ddSAndreas Gohr- regex: 'NexPlayer(?:/(\d+[.\d]+))?' 53*d5ef99ddSAndreas Gohr name: 'NexPlayer' 54*d5ef99ddSAndreas Gohr version: '$1' 55*d5ef99ddSAndreas Gohr 56*d5ef99ddSAndreas Gohr- regex: 'Nightingale(?:/([\d.]+))?' 57*d5ef99ddSAndreas Gohr name: 'Nightingale' 58*d5ef99ddSAndreas Gohr version: '$1' 59*d5ef99ddSAndreas Gohr 60*d5ef99ddSAndreas Gohr- regex: 'QuickTime(?:(?:(?:.+qtver=)|(?:(?: E-)?[\./]))([\d.]+))?' 61*d5ef99ddSAndreas Gohr name: 'QuickTime' 62*d5ef99ddSAndreas Gohr version: '$1' 63*d5ef99ddSAndreas Gohr 64*d5ef99ddSAndreas Gohr- regex: 'Songbird(?:/([\d.]+))?' 65*d5ef99ddSAndreas Gohr name: 'Songbird' 66*d5ef99ddSAndreas Gohr version: '$1' 67*d5ef99ddSAndreas Gohr 68*d5ef99ddSAndreas Gohr- regex: 'SubStream(?:/([\d.]+))?' 69*d5ef99ddSAndreas Gohr name: 'SubStream' 70*d5ef99ddSAndreas Gohr version: '$1' 71*d5ef99ddSAndreas Gohr 72*d5ef99ddSAndreas Gohr- regex: 'Sonos/([\d.]+)?' 73*d5ef99ddSAndreas Gohr name: 'SONOS' 74*d5ef99ddSAndreas Gohr version: '$1' 75*d5ef99ddSAndreas Gohr 76*d5ef99ddSAndreas Gohr- regex: '(?:Lib)?VLC(?:/([\d.]+))?' 77*d5ef99ddSAndreas Gohr name: 'VLC' 78*d5ef99ddSAndreas Gohr version: '$1' 79*d5ef99ddSAndreas Gohr 80*d5ef99ddSAndreas Gohr- regex: 'Winamp(?:MPEG)?(?:/(\d+[.\d]+))?' 81*d5ef99ddSAndreas Gohr name: 'Winamp' 82*d5ef99ddSAndreas Gohr version: '$1' 83*d5ef99ddSAndreas Gohr 84*d5ef99ddSAndreas Gohr- regex: 'J\. River Internet Reader/(\d+\.[.\d]+)' 85*d5ef99ddSAndreas Gohr name: 'JRiver Media Center' 86*d5ef99ddSAndreas Gohr version: '$1' 87*d5ef99ddSAndreas Gohr 88*d5ef99ddSAndreas Gohr- regex: '(?:Windows-Media-Player|NSPlayer)(?:/(\d+[.\d]+))?' 89*d5ef99ddSAndreas Gohr name: 'Windows Media Player' 90*d5ef99ddSAndreas Gohr version: '$1' 91*d5ef99ddSAndreas Gohr 92*d5ef99ddSAndreas Gohr- regex: 'XBMC(?:/([\d.]+))?' 93*d5ef99ddSAndreas Gohr name: 'XBMC' 94*d5ef99ddSAndreas Gohr version: '$1' 95*d5ef99ddSAndreas Gohr 96*d5ef99ddSAndreas Gohr- regex: 'Kodi(?:/([\d.]+))?' 97*d5ef99ddSAndreas Gohr name: 'Kodi' 98*d5ef99ddSAndreas Gohr version: '$1' 99*d5ef99ddSAndreas Gohr 100*d5ef99ddSAndreas Gohr- regex: 'stagefright(?:/([\d.]+))?' 101*d5ef99ddSAndreas Gohr name: 'Stagefright' 102*d5ef99ddSAndreas Gohr version: '$1' 103*d5ef99ddSAndreas Gohr 104*d5ef99ddSAndreas Gohr- regex: 'GoogleChirp(?:/(\d+[.\d]+))?' 105*d5ef99ddSAndreas Gohr name: 'Google Podcasts' 106*d5ef99ddSAndreas Gohr version: '$1' 107*d5ef99ddSAndreas Gohr 108*d5ef99ddSAndreas Gohr- regex: 'Music Player Daemon (?:(\d+[.\d]+))?' 109*d5ef99ddSAndreas Gohr name: 'Music Player Daemon' 110*d5ef99ddSAndreas Gohr version: '$1' 111*d5ef99ddSAndreas Gohr 112*d5ef99ddSAndreas Gohr- regex: 'mpv (?:(\d+[.\d]+))?' 113*d5ef99ddSAndreas Gohr name: 'mpv' 114*d5ef99ddSAndreas Gohr version: '$1' 115*d5ef99ddSAndreas Gohr 116*d5ef99ddSAndreas Gohr- regex: 'HTC Streaming Player' 117*d5ef99ddSAndreas Gohr name: 'HTC Streaming Player' 118*d5ef99ddSAndreas Gohr version: '' 119*d5ef99ddSAndreas Gohr 120*d5ef99ddSAndreas Gohr- regex: 'MediaGo(?:/([\w\.]+))?' 121*d5ef99ddSAndreas Gohr name: 'Sony Media Go' 122*d5ef99ddSAndreas Gohr version: '$1' 123*d5ef99ddSAndreas Gohr 124*d5ef99ddSAndreas Gohr- regex: 'MPlayer[ /](\d+\.[\d.])' 125*d5ef99ddSAndreas Gohr name: 'MPlayer' 126*d5ef99ddSAndreas Gohr version: '$1' 127*d5ef99ddSAndreas Gohr 128*d5ef99ddSAndreas Gohr- regex: 'Downcast/(\d+\.[\d.]+)?' 129*d5ef99ddSAndreas Gohr name: 'Downcast' 130*d5ef99ddSAndreas Gohr version: '$1' 131*d5ef99ddSAndreas Gohr 132*d5ef99ddSAndreas Gohr- regex: '^Juice/([\d.]+)' 133*d5ef99ddSAndreas Gohr name: 'Juice' 134*d5ef99ddSAndreas Gohr version: '$1' 135*d5ef99ddSAndreas Gohr 136*d5ef99ddSAndreas Gohr- regex: 'just_audio/(\d+\.[.\d]+)' 137*d5ef99ddSAndreas Gohr name: 'Just Audio' 138*d5ef99ddSAndreas Gohr version: '$1' 139*d5ef99ddSAndreas Gohr 140*d5ef99ddSAndreas Gohr# https://apps.kde.org/kasts/ ? 141*d5ef99ddSAndreas Gohr- regex: '^Kasts/(\d+\.[.\d]+)' 142*d5ef99ddSAndreas Gohr name: 'Kasts' 143*d5ef99ddSAndreas Gohr version: '$1' 144*d5ef99ddSAndreas Gohr 145*d5ef99ddSAndreas Gohr- regex: 'MixerBox(?:%20Pro)?/([.\d]+)' 146*d5ef99ddSAndreas Gohr name: 'MixerBox' 147*d5ef99ddSAndreas Gohr version: '$1' 148*d5ef99ddSAndreas Gohr 149*d5ef99ddSAndreas Gohr- regex: '^MusicBee(?:/(\d+\.[.\d]+))?' 150*d5ef99ddSAndreas Gohr name: 'MusicBee' 151*d5ef99ddSAndreas Gohr version: '$1' 152*d5ef99ddSAndreas Gohr 153*d5ef99ddSAndreas Gohr- regex: '^amarok/(\d+\.[.\d]+)' 154*d5ef99ddSAndreas Gohr name: 'Amarok' 155*d5ef99ddSAndreas Gohr version: '$1' 156*d5ef99ddSAndreas Gohr 157*d5ef99ddSAndreas Gohr- regex: 'Hubhopper/([\d.]+)' 158*d5ef99ddSAndreas Gohr name: 'Hubhopper' 159*d5ef99ddSAndreas Gohr version: '$1' 160*d5ef99ddSAndreas Gohr 161*d5ef99ddSAndreas Gohr- regex: 'StudioDisplay/(\d+\.[\d.]+)' 162*d5ef99ddSAndreas Gohr name: 'StudioDisplay' 163*d5ef99ddSAndreas Gohr version: '$1' 164*d5ef99ddSAndreas Gohr 165*d5ef99ddSAndreas Gohr# JHelioviewer (https://www.jhelioviewer.org/) 166*d5ef99ddSAndreas Gohr- regex: 'JHV/SWHV-([.\d+]+)' 167*d5ef99ddSAndreas Gohr name: 'JHelioviewer' 168*d5ef99ddSAndreas Gohr version: '$1' 169*d5ef99ddSAndreas Gohr 170*d5ef99ddSAndreas Gohr# Xtream Player (https://play.google.com/store/apps/details?id=com.devcoder.iptvxtreamplayer) 171*d5ef99ddSAndreas Gohr- regex: 'com\.devcoder\.iptvxtreamplayer' 172*d5ef99ddSAndreas Gohr name: 'Xtream Player' 173*d5ef99ddSAndreas Gohr version: '' 174*d5ef99ddSAndreas Gohr 175*d5ef99ddSAndreas Gohr# DIGA (https://av.jpn.support.panasonic.com/support/global/cs/bd/diga_player/2013/android/index.html) 176*d5ef99ddSAndreas Gohr- regex: 'DIGA(?:Plus/(\d+\.[.\d]+))?' 177*d5ef99ddSAndreas Gohr name: 'DIGA' 178*d5ef99ddSAndreas Gohr version: '$1' 179*d5ef99ddSAndreas Gohr 180*d5ef99ddSAndreas Gohr# YouView (https://www.youview.com/) 181*d5ef99ddSAndreas Gohr- regex: 'YouView(?:HTML/(\d+\.[.\d]+))?' 182*d5ef99ddSAndreas Gohr name: 'YouView' 183*d5ef99ddSAndreas Gohr version: '$1' 184