Skip to content

Commit

Permalink
Adds detection for COOD-E, Droidlogic, ETOE, Fenoti, free, Imaq, Inka…
Browse files Browse the repository at this point in the history
…, Infomir, IOTWE, Panodic, Techstorm, WeChip brands (#7584)

* Improves detection for Uniqcell devices
* Improves detection for Wolki devices
* Improves detection for Takara devices
* Improves detection for tv devices
* Adds detection for Panodic brand
* Adds detection for Fenoti brand
* Adds detection for Infomir brand
* Adds detection for ETOE brand
* Adds detection for Imaq brand
* Adds detection for IPTV Pro
* Improves detection for Beelink devices
* Adds detection for COOD-E brand
* Improves detection for Anker devices
* Improves detection for Changhong devices
* Improves detection for Vontar devices
* Improves detection for Sunvell devices
* Adds detection for Inka brand
* Improves detection for Botech devices
* Adds detection for free brand
* Adds detection for Droidlogic brand
* Improves detection for Skyworth devices
* Adds detection for Techstorm devices
* Replace SWTV with Skyworth
* Improves detection for Skyworth devices
* Improves detection for Next & NextStar devices
* Adds detection for WeChip brand
* Adds detection for IOTWE brand
* Improves detection for Hiremco devices
* Improves detection for unknown devices
This device is Transpeed or Magcubic.
* Improves detection for Sunvell devices
* Improves unknown tv models
* Improves Skyworth regex
* Move regex
* Move from Changhong to Unknown

ref #7582
  • Loading branch information
liviuconcioiu authored Feb 15, 2024
1 parent ce1cb4d commit 14a8051
Show file tree
Hide file tree
Showing 10 changed files with 732 additions and 28 deletions.
4 changes: 2 additions & 2 deletions DeviceDetector.php
Original file line number Diff line number Diff line change
Expand Up @@ -1049,11 +1049,11 @@ protected function parseDevice(): void
}

/**
* Devices running those browsers are assumed to be a TV
* Devices running those clients are assumed to be a TV
*/
if (\in_array($clientName, [
'Kylo', 'Espial TV Browser', 'LUJO TV Browser', 'LogicUI TV Browser', 'Open TV Browser', 'Seraphic Sraf',
'Opera Devices', 'Crow Browser', 'Vewd Browser', 'Quick Search TV',
'Opera Devices', 'Crow Browser', 'Vewd Browser', 'TiviMate', 'Quick Search TV',
])
) {
$this->device = AbstractDeviceParser::DEVICE_TYPE_TV;
Expand Down
13 changes: 12 additions & 1 deletion Parser/Device/AbstractDeviceParser.php
Original file line number Diff line number Diff line change
Expand Up @@ -354,6 +354,7 @@ abstract class AbstractDeviceParser extends AbstractParser
'9C' => 'Colors',
'CO' => 'Coolpad',
'COO' => 'Coopers',
'CDE' => 'COOD-E',
'4R' => 'CORN',
'1O' => 'Cosmote',
'CW' => 'Cowon',
Expand Down Expand Up @@ -441,6 +442,7 @@ abstract class AbstractDeviceParser extends AbstractParser
'JQ' => 'Doppio',
'DR' => 'Doro',
'ZD' => 'DORLAND',
'DRO' => 'Droidlogic',
'D8' => 'Droxio',
'DJ' => 'Dragon Touch',
'DRA' => 'DRAGON',
Expand Down Expand Up @@ -514,6 +516,7 @@ abstract class AbstractDeviceParser extends AbstractParser
'EE' => 'Essential',
'E2' => 'Essentielb',
'6E' => 'eSTAR',
'ETO' => 'ETOE',
'EN' => 'Eton',
'ET' => 'eTouch',
'1E' => 'Etuline',
Expand Down Expand Up @@ -553,6 +556,7 @@ abstract class AbstractDeviceParser extends AbstractParser
'FAR' => 'Farassoo',
'FB' => 'Fantec',
'FE' => 'Fengxiang',
'FEN' => 'Fenoti',
'F7' => 'Fero',
'67' => 'FEONAL',
'FI' => 'FiGO',
Expand Down Expand Up @@ -583,6 +587,7 @@ abstract class AbstractDeviceParser extends AbstractParser
'FOD' => 'FoxxD',
'FJ' => 'FOODO',
'FOS' => 'FOSSiBOT',
'FRE' => 'free',
'FT' => 'Freetel',
'FEY' => 'FreeYond',
'FRU' => 'Frunsi',
Expand Down Expand Up @@ -761,17 +766,20 @@ abstract class AbstractDeviceParser extends AbstractParser
'U4' => 'iMan',
'ILE' => 'iLepo',
'IL' => 'IMO Mobile',
'IMA' => 'Imaq',
'IM1' => 'Imose',
'I3' => 'Impression',
'FC' => 'INCAR',
'2H' => 'Inch',
'6I' => 'Inco',
'INK' => 'Inka',
'IW' => 'iNew',
'IF' => 'Infinix',
'INF' => 'Infiniton',
'I0' => 'InFocus',
'IN1' => 'InFone',
'II' => 'Inkti',
'MIR' => 'Infomir',
'81' => 'InfoKit',
'I5' => 'InnJoo',
'26' => 'Innos',
Expand Down Expand Up @@ -814,6 +822,7 @@ abstract class AbstractDeviceParser extends AbstractParser
'QW' => 'iWaylink',
'I9' => 'iZotron',
'IXT' => 'iXTech',
'IOT' => 'IOTWE',
'JA' => 'JAY-Tech',
'KJ' => 'Jiake',
'JD' => 'Jedi',
Expand Down Expand Up @@ -1220,6 +1229,7 @@ abstract class AbstractDeviceParser extends AbstractParser
'PA' => 'Panasonic',
'PT' => 'Pantech',
'PAN' => 'Pano',
'PND' => 'Panodic',
'PA1' => 'Panoramic',
'PLT' => 'Platoon',
'94' => 'Packard Bell',
Expand Down Expand Up @@ -1510,7 +1520,6 @@ abstract class AbstractDeviceParser extends AbstractParser
'SWI' => 'Switel',
'SS' => 'SWISSMOBILITY',
'1W' => 'Swisstone',
'W7' => 'SWTV',
'SSK' => 'SSKY',
'SYC' => 'Syco',
'SM' => 'Symphony',
Expand Down Expand Up @@ -1539,6 +1548,7 @@ abstract class AbstractDeviceParser extends AbstractParser
'TPS' => 'TPS',
'9E' => 'Techwood',
'7F' => 'Technopc',
'TCH' => 'Techstorm',
'T7' => 'Teclast',
'TB' => 'Tecno Mobile',
'TEC' => 'TecToy',
Expand Down Expand Up @@ -1742,6 +1752,7 @@ abstract class AbstractDeviceParser extends AbstractParser
'WAL' => 'Waltter',
'WHI' => 'White Mobile',
'WBL' => 'We. by Loewe.',
'WCP' => 'WeChip',
'WM' => 'Weimei',
'WE' => 'WellcoM',
'W6' => 'WELLINGTON',
Expand Down
6 changes: 6 additions & 0 deletions Tests/Parser/Client/fixtures/mobile_app.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1631,6 +1631,12 @@
type: mobile app
name: HistoryHound
version: "1.9"
-
user_agent: Mozilla/5.0 (Linux; Android 7.1.2; Amlogic Alvatech GT1 Build/NHG47L) IPTV Pro/7.1.3
client:
type: mobile app
name: IPTV Pro
version: 7.1.3
-
user_agent: Quicksilver (Blacktree,MacOSX)
client:
Expand Down
54 changes: 54 additions & 0 deletions Tests/fixtures/smartphone-37.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8111,6 +8111,60 @@
model: 11x 5G
os_family: Android
browser_family: Unknown
-
user_agent: Mozilla/5.0 (Linux; Android 8.1; Q5.8) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Mobile Safari/537.36
os:
name: Android
version: "8.1"
platform: ""
client:
type: browser
name: Chrome Mobile
version: 96.0.4664.45
engine: Blink
engine_version: 96.0.4664.45
device:
type: smartphone
brand: Uniqcell
model: Q5.8
os_family: Android
browser_family: Chrome
-
user_agent: Mozilla/5.0 (Linux; Android 8.1; Space A5.8 Build/MRA58K; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/44.0.2403.119 Mobile Safari/537.36
os:
name: Android
version: "8.1"
platform: ""
client:
type: browser
name: Chrome Webview
version: 44.0.2403.119
engine: Blink
engine_version: 44.0.2403.119
device:
type: smartphone
brand: Uniqcell
model: Space A5.8
os_family: Android
browser_family: Chrome
-
user_agent: Mozilla/5.0 (Linux; Android 8.1.0; WS054) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Mobile Safari/537.36
os:
name: Android
version: 8.1.0
platform: ""
client:
type: browser
name: Chrome Mobile
version: 96.0.4664.45
engine: Blink
engine_version: 96.0.4664.45
device:
type: smartphone
brand: Wolki
model: W5.5 Lite
os_family: Android
browser_family: Chrome
-
user_agent: iPhone11
os:
Expand Down
18 changes: 18 additions & 0 deletions Tests/fixtures/tablet-11.yml
Original file line number Diff line number Diff line change
Expand Up @@ -143,3 +143,21 @@
model: Red Magic Gaming Pad
os_family: Android
browser_family: Unknown
-
user_agent: Mozilla/5.0 (Linux; Android 8.1.0; MID169) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.92 Safari/537.36
os:
name: Android
version: 8.1.0
platform: ""
client:
type: browser
name: Chrome
version: 96.0.4664.92
engine: Blink
engine_version: 96.0.4664.92
device:
type: tablet
brand: Takara
model: MID169
os_family: Android
browser_family: Chrome
Loading

0 comments on commit 14a8051

Please sign in to comment.