Skip to content

Commit

Permalink
Detect new brands: ATMPC, GVC Pro, Jambo, LYOTECH LABS, MESWAO, SENNA…
Browse files Browse the repository at this point in the history
…, SERVO, XREAL and Detect devices for exist brands (#200)

* feat(sync) Improves detection for Dezor (matomo-org#7797)
---
feat(sync) Adds detection for various apps (matomo-org#7800)
* Adds detection for Sticky Password
* Adds detection for The Crossword
* Adds detection for Castify
---
feat(sync) Detect new brands: ATMPC, SENNA, XREAL and Detect devices for exist brands (matomo-org#7799)
feat(device) detect new brand SENNA: 32SN6000H
feat(device) detect new brand XREAL: Beam Pro (X4000)
feat(device) detect brand Retroid Pocket: 3 Plus
feat(device) detect brand OPPO: A3 5G (PKA110)
feat(device) detect brand Doffler: 42GFS56
feat(device) detect brand Leff: 32F550T, 40F550T
feat(device) detect brand OLTO: 32ST30H
feat(device) detect brand Motorola: Moto G64 5G
feat(device) detect brand Asano: 32LH8011T, 32LF7111T
feat(device) detect brand Realme: C61 (RMX3930)
feat(device) detect brand Walton: Primo RX9
feat(device) detect brand Condor: Plume L5 Pro
feat(device) detect brand Maxwest: Astro 63R
feat(device) detect brand MicroMax: Bharat 5
feat(device) detect brand Sky: Pad 8 Pro
feat(device) detect brand Nordmende: 55NM6000U
feat(device) detect brand Vorcom: Quartz Lite
feat(device) detect brand VGO TEL: V Tab 2
feat(device) detect brand Hot Pepper: Panca (HPPL63A)
feat(device) detect brand Hotwav: Pearl K3 (2021)
feat(device) detect brand Sharp: Aquos Sense 8 (SH-54D)
feat(device) detect brand Vivo: iQOO Z9 Lite 5G (I2306)
feat(device) detect brand OnePlus: Ace 3 Pro 5G (PJX110)
feat(device) detect brand mipo: M17
feat(device) detect brand CUBOT: King Kong X, King Kong Ace 3
feat(device) detect brand Hometech: ALFA 10BT V2
feat(device) detect brand Beelink: GT King II
feat(device) detect new brand ATMPC: IT-701A
feat(device) detect brand Vivo: iQOO 7
feat(device) detect brand FEONAL: K113
feat(device) detect brand Zonko: K118
feat(device) detect brand Cwowdefu: F35W, C82W
feat(device) detect brand Weelikeit: F21W
feat(device) detect brand iGet: Smart W31
feat(device) detect brand TOSCIDO: T28
feat(device) detect brand Yandex: YNDX-00075
feat(device) detect brand Yestel: T13
feat(device) detect brand Motorola: Moto Tab G62 (XT2261-1)
feat(device) detect brand Lava: Yuva Star (LZG409)
feat(device) detect brand Realme: V60 (RMX3995)
feat(device) detect brand Xiaomi: Redmi K70 Ultra (2407FRK8EC), 14 Pro (2311BPN23C), 14, 13T
feat(device) detect brand ZTE: Blade A55 (Z2450)
feat(device) detect brand Vivo: iQOO 7 Legend, iQOO 7 India
---
feat(sync) Adds detection for various browsers (matomo-org#7801)
* Adds detection for TUSK
* Adds detection for Privacy Browser
* Adds detection for ProxyFox
* Adds detection for ProxyMax
* Adds detection for KeepSolid Browser
* Adds detection for ONION Browser
* Adds detection for Ai Browser
* Improves detection for CM Browser
* Adds detection for Internet Webbrowser
* Improves detection for Web Explorer
* Adds detection for Halo Browser
* Adds detection for MMBOX XBrowser
* Change ONION Browser to ONIONBrowser
* Adds detection for TV-Browser Internet
* Adds detection for XnBrowse
* Adds detection for Open Browser Lite
* Improves version detection for Aloha Browser
* Improves detection for Keepsafe Browser
* Improves detection for Hawk Turbo Browser
* Adds detection for TQ Browser
* Adds detection for RCA Tor Explorer
* Adds detection for Armorfly Browser
---
feat(sync) Detect new brands: Jambo, LYOTECH LABS, MESWAO, SERVO and Detect devices for exist brands (matomo-org#7806)
feat(device) detect new brand Jambo: JamboPhone (JP1)
feat(device) detect new brand LYOTECH LABS: LFi One
feat(device) detect new brand MESWAO: MES-B1
feat(device) detect brand Huawei: Mate 30 Pro 5G (LIO-AL10)
feat(device) detect brand BMAX: MaxPad I9 Plus
feat(device) detect brand NEC: LAVIE Tab 9QHD1
feat(device) detect brand MAGCH: M821, M820
feat(device) detect brand UMIDIGI: G3 Plus (MP25), G3 (MP24), C2 (MP20), F3 Pro 5G (MP19)
feat(device) detect brand Logicom: Lunar
feat(device) detect brand CUBOT: X30
feat(device) detect brand Google: Pixel 5 (G5NZ6), Pixel 6 Pro (G8VOU)
feat(device) detect brand SPC: Discovery SE
feat(device) detect brand Ace: Buzz 5 Ultra
feat(device) detect brand Blu: Bold K10
feat(device) detect brand Maxwest: Astro A64 (MX-A64)
feat(device) detect brand Maxcom: MS651
feat(device) detect brand UMIDIGI: G2 Tab (MT11), G1 Tab (MT10), A13 Tab (MT07)
feat(device) detect new brand SERVO: 16 Max
feat(device) detect brand Huawei: Honor Play 60 Plus (ALT-AN00)
feat(device) detect brand Tecno Mobile: Spark Go (2024) (TECNO BG6m)
feat(device) detect brand Vivo: S19 Pro (V2362A)
feat(device) detect brand iHunt: S24 Xtreme
feat(device) detect brand Google: Pixel 4a (G025N)
feat(device) detect brand Energizer: Hard Case G5
feat(device) detect brand OPPO: Reno 6, Reno 5
feat(device) detect brand HTC: U Play (2PZM3)
feat(device) detect brand Atouch: M-T4, M-T3, S-Tab10
feat(device) detect brand YUHO: Y1 Star S
feat(device) detect brand Inoi: Pad WiFi
feat(device) detect brand Oangcc: Tab A15
feat(device) detect brand Motorola: Moto G34 5G (XT2363-2), Moto G54 5G (XT2343-1)
feat(device) detect brand ZTE: Blade A6 Lite (A0622), Blade A3 (A0616)
---
feat(sync) Adds detection for GVC Pro brand, improves detection for various brands and Blink engine (matomo-org#7809)
* Improves detection for Blink engine
* Improve LG regex
* Improves detection for Akai devices
* Improves detection for unknown brands
* Improves detection for AWOX devices
* Improves detection for DIJITSU devices
* Adds detection for GVC Pro brand
* Improves detection for Vision Technology devices
* Improves detection for Stream devices
* Improves detection for Skytech devices
* Improves detection for WANSA devices
* Improves detection for Sunny devices
* Add website for MESWAO
* Improves detection for Next & NextStar devices
---
feat(sync) Adds detection for Cromite and Mises browsers (matomo-org#7812)
* Adds detection for Cromite
* Adds detection for Mises
---
feat(sync) Improve code for version detection (matomo-org#7804)
---
* chore: generate indexes
* feat: set version 2.1.4
chore: update readme
  • Loading branch information
sanchezzzhak authored Sep 9, 2024
1 parent b6f7955 commit f397a09
Show file tree
Hide file tree
Showing 24 changed files with 5,474 additions and 2,640 deletions.
571 changes: 287 additions & 284 deletions README.md

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "node-device-detector",
"version": "2.1.3",
"version": "2.1.4",
"description": "Nodejs device detector (port matomo-org/device-detector)",
"main": "index.js",
"scripts": {
Expand Down
4 changes: 3 additions & 1 deletion parser/client/browser-families.js
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,9 @@ module.exports = {
'K3', 'Q4', 'G2', 'R2', 'WX', 'XP', '3I', 'BG', 'R0',
'JO', 'OL', 'GN', 'W4', 'QI', 'E1', 'RI', '8B', '5B',
'K4', 'WK', 'T3', 'K5', 'MU', '9P', 'K6', 'VR', 'N9',
'M9', 'F9', '0P', '0A', 'JR', 'D3',
'M9', 'F9', '0P', '0A', 'JR', 'D3', 'TK', 'BP', '2F',
'2M', 'K7', '1N', '8A', 'H7', 'X3', 'T4', 'X4', '5O',
'8C', '3M',
],
'Firefox': [
'FF', 'BI', 'BF', 'BH', 'BN', 'C0', 'CU', 'EI', 'F1',
Expand Down
3 changes: 2 additions & 1 deletion parser/client/browser-short-mobile.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ module.exports = [
'M7', 'GN', 'JR', 'IG', 'HW', '4O', 'OU', '5P', 'KE',
'5A', 'TT', '6P', 'G3', '7P', 'VU', 'F8', 'L4', 'DK',
'DP', 'KL', 'K4', 'N6', 'KU', 'WK', 'M8', 'UP', 'ZT',
'9P', 'N8', 'VR', 'N9', 'M9', 'F9', '0P', '0A',
'9P', 'N8', 'VR', 'N9', 'M9', 'F9', '0P', '0A', '2F',
'2M', 'K7', '1N', '8A', 'H7', 'X3', 'X4', '5O', '3M',

];
18 changes: 18 additions & 0 deletions parser/client/browser-short.js
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ module.exports = {
'4A': 'Acoo Browser',
'BW': 'AdBlock Browser',
'A7': 'Adult Browser',
'8A': 'Ai Browser',
'A9': 'Airfind Secure Browser',
'AF': 'ANT Fresco',
'AG': 'ANTGalio',
Expand All @@ -62,6 +63,7 @@ module.exports = {
'PN': 'APN Browser',
'6A': 'Arachne',
'RA': 'Arc',
'R5': 'Armorfly Browser',
'AI': 'Arvin',
'AK': 'Ask.com',
'AU': 'Asus Browser',
Expand Down Expand Up @@ -152,6 +154,7 @@ module.exports = {
'C5': 'Chromium GOST',
'CY': 'Cyberfox',
'CS': 'Cheshire',
'8C': 'Cromite',
'RC': 'Crow Browser',
'CT': 'Crusta',
'CG': 'Craving Explorer',
Expand Down Expand Up @@ -245,6 +248,7 @@ module.exports = {
'G2': 'GO Browser',
'RN': 'GreenBrowser',
'HW': 'Habit Browser',
'H7': 'Halo Browser',
'HB': 'Harman Browser',
'HS': 'HasBrowser',
'HA': 'Hawk Turbo Browser',
Expand Down Expand Up @@ -281,6 +285,7 @@ module.exports = {
'I9': 'Insta Browser',
'IE': 'Internet Explorer',
'I7': 'Internet Browser Secure',
'5I': 'Internet Webbrowser',
'3I': 'Intune Managed Browser',
'I5': 'Indian UC Mini Browser',
'Z0': 'InBrowser',
Expand All @@ -297,6 +302,7 @@ module.exports = {
'JZ': 'JUZI Browser',
'KB': 'K.Browser',
'KF': 'Keepsafe Browser',
'K7': 'KeepSolid Browser',
'KS': 'Kids Safe Browser',
'KI': 'Kindle Browser',
'KM': 'K-meleon',
Expand Down Expand Up @@ -360,6 +366,7 @@ module.exports = {
'MX': 'Maxthon',
'M4': 'MaxTube Browser',
'MA': 'Maelstrom',
'3M': 'Mises',
'MM': 'Mmx Browser',
'NM': 'MxNitro',
'MY': 'Mypal',
Expand Down Expand Up @@ -403,6 +410,7 @@ module.exports = {
'OL': 'OnBrowser Lite',
'OE': 'ONE Browser',
'N4': 'Onion Browser',
'1N': 'ONIONBrowser',
'Y1': 'Opera Crypto',
'OX': 'Opera GX',
'OG': 'Opera Neon',
Expand All @@ -424,6 +432,7 @@ module.exports = {
'O4': 'Open Browser',
'4U': 'Open Browser 4U',
'5G': 'Open Browser fast 5G',
'5O': 'Open Browser Lite',
'O7': 'Open TV Browser',
'OW': 'OmniWeb',
'OT': 'Otter Browser',
Expand Down Expand Up @@ -458,12 +467,15 @@ module.exports = {
'PT': 'Polarity',
'LY': 'PolyBrowser',
'9P': 'Presearch',
'BP': 'Privacy Browser',
'PI': 'PrivacyWall',
'P4': 'Privacy Explorer Fast Safe',
'P3': 'Private Internet Browser',
'P5': 'Proxy Browser',
'7P': 'Proxyium',
'6P': 'Proxynet',
'2F': 'ProxyFox',
'2M': 'ProxyMax',
'P2': 'Pi Browser',
'P0': 'PronHub Browser',
'PC': 'PSI Secure Browser',
Expand All @@ -488,6 +500,7 @@ module.exports = {
'R3': 'Rakuten Browser',
'R4': 'Rakuten Web Search',
'R2': 'Raspbian Chromium',
'RT': 'RCA Tor Explorer',
'RE': 'Realme Browser',
'RK': 'Rekonq',
'RM': 'RockMelt',
Expand Down Expand Up @@ -573,11 +586,14 @@ module.exports = {
'TI': 'Tint Browser',
'TL': 'TrueLocation Browser',
'TC': 'TUC Mini Browser',
'TK': 'TUSK',
'TU': 'Tungsten',
'TG': 'ToGate',
'T3': 'Total Browser',
'TQ': 'TQ Browser',
'TS': 'TweakStyle',
'TV': 'TV Bro',
'T4': 'TV-Browser Internet',
'U0': 'U Browser',
'UB': 'UBrowser',
'UC': 'UC Browser',
Expand Down Expand Up @@ -638,13 +654,15 @@ module.exports = {
'Y3': 'YouBrowser',
'YZ': 'Yuzu Browser',
'XR': 'xBrowser',
'X3': 'MMBOX XBrowser',
'XB': 'X Browser Lite',
'X0': 'X-VPN',
'X1': 'xBrowser Pro Super Fast',
'XN': 'XNX Browser',
'XT': 'XtremeCast',
'XS': 'xStand',
'XI': 'Xiino',
'X4': 'XnBrowse',
'XO': 'Xooloo Internet',
'XV': 'Xvast',
'ZE': 'Zetakey',
Expand Down
11 changes: 4 additions & 7 deletions parser/client/browser.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ const CLIENTHINT_MAPPING = {
'Vewd Browser': ['Vewd Core'],
};

const BROWSERHINT_SKIP_VERSION = ['MU', 'OM', 'OP', 'VR'];
const BROWSERHINT_SKIP_VERSION = ['A0', 'AL', 'HP', 'JR', 'MU', 'OM', 'OP', 'VR'];

const compareBrandForClientHints = (brand) => {
for (let brandName in CLIENTHINT_MAPPING) {
Expand Down Expand Up @@ -104,7 +104,8 @@ class Browser extends ClientAbstractParser {
engineVersion = data.engine_version;
}

if ('Atom' === name || 'Huawei Browser' === name) {
// If client hints report the following browsers, we use the version from useragent
if (data.version && BROWSERHINT_SKIP_VERSION.indexOf(short) !== -1) {
version = data.version;
}

Expand Down Expand Up @@ -142,10 +143,6 @@ class Browser extends ClientAbstractParser {
if ('DuckDuckGo Privacy Browser' === name) {
version = '';
}
// If client hints report the following browsers, we use the version from useragent
if (data.version && BROWSERHINT_SKIP_VERSION.indexOf(short) !== -1) {
version = data.version;
}
}
} else if (data !== null) {
name = data.name;
Expand Down Expand Up @@ -448,7 +445,7 @@ class Browser extends ClientAbstractParser {
let engineToken = '' + engine;

if ('Blink' === engine) {
engineToken = 'Chrome|Cronet';
engineToken = 'Chr[o0]me|Cronet';
}

if ('LibWeb' === engine) {
Expand Down
8 changes: 8 additions & 0 deletions parser/device/brand-short.js
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,7 @@ module.exports = {
'ATE': 'Atlantic Electrics',
'5Q': 'Atmaca Elektronik',
'YH': 'ATMAN',
'ATM': 'ATMPC',
'2A': 'Atom',
'AT1': 'Atozee',
'ATO': 'ATOL',
Expand Down Expand Up @@ -628,6 +629,7 @@ module.exports = {
'GU': 'Grundig',
'GV': 'Gtel',
'CUO': 'Guophone',
'GVC': 'GVC Pro',
'H13': 'H133',
'9Z': 'H96',
'HF': 'Hafury',
Expand Down Expand Up @@ -800,6 +802,7 @@ module.exports = {
'IXT': 'iXTech',
'IOT': 'IOTWE',
'JA': 'JAY-Tech',
'JAM': 'Jambo',
'KJ': 'Jiake',
'JD': 'Jedi',
'JEE': 'Jeep',
Expand Down Expand Up @@ -944,6 +947,7 @@ module.exports = {
'LR': 'Luxor',
'LY': 'LYF',
'LL': 'Leader Phone',
'LTL': 'LYOTECH LABS',
'QL': 'LT Mobile',
'LW1': 'LW',
'MQ': 'M.T.T.',
Expand Down Expand Up @@ -1007,6 +1011,7 @@ module.exports = {
'ME': 'Metz',
'MEO': 'MEO',
'MX': 'MEU',
'MES': 'MESWAO',
'MI': 'MicroMax',
'MIP': 'mipo',
'MS': 'Microsoft',
Expand Down Expand Up @@ -1396,6 +1401,8 @@ module.exports = {
'89': 'Seatel',
'SEW': 'Sewoo',
'SE1': 'SEEWO',
'SEN': 'SENNA',
'SER': 'SERVO',
'Y7': 'Saiet',
'SLF': 'SAILF',
'X1': 'Safaricom',
Expand Down Expand Up @@ -1857,6 +1864,7 @@ module.exports = {
'XN': 'Xion',
'XO': 'Xolo',
'XR': 'Xoro',
'XRL': 'XREAL',
'XS': 'Xshitou',
'XSM': 'Xsmart',
'4X': 'Xtouch',
Expand Down
Loading

0 comments on commit f397a09

Please sign in to comment.