Skip to content

Commit 0486fb6

Browse files
authored
Detect new devices brand and Detect devices exist brands (#218)
feat(sync) Detect new brand: SOWLY and Detect devices for exist brands (matomo-org#7977) feat(device) detect brand Xiaomi: Redmi Note 12 Pro Speed, Redmi Note 13 Pro, Redmi Pad SE 8.7" feat(device) detect brand Coolpad: CP12s, Cool 30i (CP12Q) feat(device) detect brand HMD: Vibe (N159V) feat(device) detect brand PAGRAER: A35 Pro (PGR3042) feat(device) detect brand Sparx: Neo 11 feat(device) detect brand Mione: U1 feat(device) detect brand Hafury: MEET feat(device) detect brand Digma: Pro Hit 106 10.1" (HS1007PL), Pro Hit 104 10.1" (HS1009PL) feat(device) detect brand OPPO: Find X8 Pro (PKC110), A1x 5G (PJU110_A1) feat(device) detect new brand SOWLY: A133P feat(device) detect brand Lava: Yuva 3 (LZX415) feat(device) detect brand OPPO: Reno 9 A (CPH2524) feat(device) detect brand Blu: C6L Max feat(device) detect brand Oukitel: C38 feat(device) detect brand Hammer: Blade V 5G feat(device) detect brand Blackview: A96 feat(device) detect brand Benco: V91 Plus (AEOP520) --- feat(sync) Adds detection for OpenVAS, Telegram, Webex Teams and improves detection for Semrush bots (matomo-org#7980) * Adds detection for BacklinksExtendedBot * Adds detection for Webex Teams * Adds detection for Telegram * Adds detection for OpenVAS --- feat(sync) Adds detection for LOGAN brand and improves detection for Aspera, Condor, Maxcom (matomo-org#7982) * Improves detection for Aspera devices * Improves detection for Condor devices * Adds detection for LOGAN brand * Improves detection for Maxcom devices --- feat(sync) Improves detection for Android, Chrome OS, iOS and macOS, improves detection for Mobile Safari and Safari (matomo-org#7981) * Improves version detection for Android and Chrome OS * Improves version detection for iOS and macOS * Improves detection for Safari and Mobile Safari --- feat(sync) Adds detection for various bots (matomo-org#7987) * Improves detection for generic bots * Adds detection for PHP * Improves detection for generic bots * Improves detection for generic bots * Adds detection for SnoopSecInspect * Improves detection for generic bots * Adds detection for ModatScanner * Adds detection for researchcyber.net * Adds detection for CrystalSemanticsBot * Improves detection for generic bots * Improves detection for PHP * Adds detection for go-network * Adds detection for najdu.s.holubem.eu * Improves detection for Siteimprove --- feat(sync) Detect new brand: HAVIT and Detect devices for exist brands (matomo-org#7989) feat(device) detect brand OSCAL: Tiger 13 feat(device) detect brand Huawei: Honor Magic 7 Pro (PTP-AN70) feat(device) detect brand Cricket: Magic 2 5G (U655AC) feat(device) detect brand Ulefone: Armor Pad Pro feat(device) detect brand Symphony: SymTab 20 feat(device) detect brand Lenovo: Tab Plus (TB351FU), Legion Y700 (TB321FU) feat(device) detect brand Asano: 40LF7010T 40.0" feat(device) detect new brand HAVIT: PJ209 Pro feat(device) detect brand Samsung: Galaxy Xcover 7 (SM-G556B) feat(device) detect brand OPPO: A60 (CPH3669) feat(device) detect brand Vivo: iQOO Neo 10 (V2425A) feat(device) detect brand POCO: X7 Pro (2412DPC0AG) feat(device) detect brand IconBIT: Movie 2100 (XLR3089) feat(device) detect brand Tecno Mobile: MegaPad 11 (TECNO T1101) feat(device) detect brand Huawei: MatePad Pro 12.2" (2024) WiFi (MRO-W09) --- feat(sync) Adds detection for coocaa brand and improves detection for Metz and RCA Tablets brands (matomo-org#7996) * Adds detection for coocaa brand * Improves detection for Metz devices * Improves detection for RCA Tablets devices --- feat(sync) Adds detection for VORTEX bot (matomo-org#7998) --- feat(sync) Detect devices for exist brands (matomo-org#7993) feat(device) detect brand Xiaomi: Redmi Note 14 (24117RN76O), Redmi Note 14 Pro 5G (24090RA29G) feat(device) detect brand ELARI: 4G Wink feat(device) detect brand OnePlus: 13 (CPH2653, CPH2655) feat(device) detect brand Vivo: iQOO 13 (I2401), iQOO Neo 10 Pro (V2426A), S20 (V2429A), S20 Pro (V2430A) feat(device) detect brand OPPO: Reno 13 5G (CPH2689) feat(device) detect brand Sony: Xperia 1 VI (SO-51E) feat(device) detect brand ZTE: Axon 30 Ultra (A2022PG) feat(device) detect brand Oukitel: RT9, RT3 Pro feat(device) detect brand Maunfeld: MQT55USD03 feat(device) detect brand Blackton: Bt 32FS34B, Bt 50FSU34B feat(device) detect brand Asano: 32LH7011T 32.0" feat(device) detect brand Huawei: P20 Lite (ANE-L22), Honor Magic 7 Pro (PTP-N49) feat(device) detect brand Nubia: Red Magic 10 Pro (NX789J), Z70 Ultra Starry Night (NX736J) feat(device) detect brand Realme: GT Neo 7 (RMX5060), 14 Pro+ 5G (RMX5051), 13 Pro (RMX5002), Note 60x (RMX3938), C75 (RMX3941) --- feat(sync) Improves year detection for various tv brands (matomo-org#7997) * Improves year detection for various tv brands * Improves year detection for Hisense --- feat(sync) Adds detection for andersson, FINIX, HUMElab brands and improves detection for Lenco brand (matomo-org#8003) * Adds detection for andersson brand * Adds detection for FINIX brand * Adds detection for HUMElab * Improves detection for Lenco devices --- feat(sync) Improves detection for various tv brands (matomo-org#8004) * Improve isHbbTv regex --- feat(sync) Detect new brands: CONSUNG, FONTEL and Detect devices for exist brands (matomo-org#8005) feat(device) detect new brand CONSUNG: N101B, N101A feat(device) detect new brand FONTEL: FT1000, FT800 feat(device) detect brand OSCAL: Pilot 1 feat(device) detect brand Samsung: Galaxy S4 ACTIVE (SHV-E470S) feat(device) detect brand FOSSiBOT: F101 P feat(device) detect brand X-View: FTB13 feat(device) detect brand Lenovo: TAB3 7 Essential (TB3-710F) feat(device) detect brand Digma: Q8 DA6B8P01, Pro Pulse TA3E0P01, Pro Pulse TA3D0P01, Pro Pulse TA2D0P01, Pro Spark TA1C8M01, Pro Spectrum TA2D0P02 feat(device) detect brand Xiaomi: Redmi Note 14 Pro (24116RACCG), Redmi Note 14 Pro+ (24115RA8EG) --- * chore: generate indexes
1 parent 70b8dcb commit 0486fb6

34 files changed

+5877
-1840
lines changed

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@
88
"test-coverage-text": "nyc --check-coverage --lines 90 --per-file --reporter=text mocha -- -R dot tests/*.spec.js",
99
"test-coverage-html": "nyc --reporter=html mocha -- -R dot tests/*.spec.js",
1010
"prettier": "prettier --write .",
11-
"eslint": "eslint . --ext .jsx,.ts,.tsx"
11+
"eslint": "eslint . --ext .jsx,.ts,.tsx",
12+
"publish-info": "npm publish --dry-run"
1213
},
1314
"repository": {
1415
"type": "git",

parser/device/brand-short.js

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ module.exports = {
8484
'ANX': 'ANXONIT',
8585
'ANL': 'ANCEL',
8686
'ANC': 'ANBERNIC',
87+
'AND': 'andersson',
8788
'6J': 'Angelcare',
8889
'ANG': 'AngelTech',
8990
'7A': 'Anry',
@@ -307,13 +308,15 @@ module.exports = {
307308
'C5': 'Condor',
308309
'C5M': 'C5 Mobile',
309310
'4C': 'Conquest',
311+
'COG': 'CONSUNG',
310312
'3C': 'Contixo',
311313
'8C': 'Connex',
312314
'53': 'Connectce',
313315
'CON': 'Conceptum',
314316
'CED': 'Continental Edison',
315317
'9C': 'Colors',
316318
'COL': 'COLORROOM',
319+
'CAA': 'coocaa',
317320
'CO': 'Coolpad',
318321
'COO': 'Coopers',
319322
'CDE': 'COOD-E',
@@ -556,6 +559,7 @@ module.exports = {
556559
'FIT': 'FITCO',
557560
'FLM': 'Filimo',
558561
'FIL': 'FILIX',
562+
'FIN': 'FINIX',
559563
'FL': 'Fly',
560564
'QC': 'FLYCAT',
561565
'FLY': 'FLYCOAY',
@@ -566,6 +570,7 @@ module.exports = {
566570
'0F': 'Fourel',
567571
'44': 'Four Mobile',
568572
'F0': 'Fonos',
573+
'F0N': 'FONTEL',
569574
'F2': 'FORME',
570575
'FRM': 'Formovie',
571576
'F5': 'Formuler',
@@ -687,6 +692,7 @@ module.exports = {
687692
'8H': 'Hamlet',
688693
'HAM': 'Hammer',
689694
'HAT': 'Hathway',
695+
'HAV': 'HAVIT',
690696
'HEM': 'Hemilton',
691697
'H6': 'Helio',
692698
'HQ': 'HERO',
@@ -745,6 +751,7 @@ module.exports = {
745751
'HU': 'Huawei',
746752
'HX': 'Humax',
747753
'HUM': 'Humanware',
754+
'HME': 'HUMElab',
748755
'HR': 'Hurricane',
749756
'H5': 'Huskee',
750757
'HUG': 'Hugerock',
@@ -982,6 +989,7 @@ module.exports = {
982989
'LNG': 'LongTV',
983990
'YL': 'Loview',
984991
'LOV': 'Lovme',
992+
'LGN': 'LOGAN',
985993
'1L': 'Logic',
986994
'LH': 'Logic Instrument',
987995
'LM': 'Logicom',
@@ -1570,6 +1578,7 @@ module.exports = {
15701578
'77': 'SONOS',
15711579
'68': 'Soho Style',
15721580
'SOB': 'SobieTech',
1581+
'SOW': 'SOWLY',
15731582
'PK': 'Spark',
15741583
'SPX': 'Sparx',
15751584
'FS': 'SPC',

parser/device/hbb-tv.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ class HbbTv extends DeviceAbstractParser {
1212
}
1313

1414
/**
15-
*
1615
* @param {string} userAgent
1716
* @param brandIndexes
1817
* @returns {null|{model: string, id: string, type: string, brand: string}}
1918
*/
2019
parse(userAgent, brandIndexes) {
20+
// only parse user agents containing fragments: hbbtv or SmartTvA
2121
if (!this.isHubTv(userAgent)) {
2222
return null;
2323
}
@@ -44,7 +44,7 @@ class HbbTv extends DeviceAbstractParser {
4444
* @return {Boolean}
4545
*/
4646
isHubTv(userAgent) {
47-
let regex = 'HbbTV/([1-9]{1}(?:.[0-9]{1}){1,2})';
47+
let regex = '(?:HbbTV|SmartTvA)/([1-9]{1}(?:[.][0-9]{1}){1,2})';
4848
let match = this.getBaseRegExp(regex).exec(userAgent);
4949
return match !== null;
5050
}

0 commit comments

Comments
 (0)