From 8bb3e7b6ae7abf1b6ff695bde32f5081d6a2e27c Mon Sep 17 00:00:00 2001 From: sanchezzzhak Date: Wed, 29 Nov 2023 16:12:35 +0300 Subject: [PATCH 1/7] feat(device): detect brand Doogee: Nova Y100X --- Tests/fixtures/smartphone-37.yml | 54 ++++++++++++++++++++++++++++++++ regexes/device/mobiles.yml | 4 ++- 2 files changed, 57 insertions(+), 1 deletion(-) diff --git a/Tests/fixtures/smartphone-37.yml b/Tests/fixtures/smartphone-37.yml index b50abea067..9331c5fe0d 100644 --- a/Tests/fixtures/smartphone-37.yml +++ b/Tests/fixtures/smartphone-37.yml @@ -3479,3 +3479,57 @@ model: Raku-Raku Smartphone F-12D os_family: Android browser_family: Android Browser +- + user_agent: Mozilla/5.0 (Linux; Android 8.1.0; itel A32F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.99 Mobile Safari/537.36 + os: + name: Android + version: 8.1.0 + platform: "" + client: + type: browser + name: Chrome Mobile + version: 86.0.4240.99 + engine: Blink + engine_version: 86.0.4240.99 + device: + type: smartphone + brand: iTel + model: A32F + os_family: Android + browser_family: Chrome +- + user_agent: Mozilla/5.0 (Linux; Android 5.1.0; Beeline Smart 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Mobile Safari/537.36 + os: + name: Android + version: 5.1.0 + platform: "" + client: + type: browser + name: Chrome Mobile + version: 87.0.4280.66 + engine: Blink + engine_version: 87.0.4280.66 + device: + type: smartphone + brand: Beeline + model: Smart 5 + os_family: Android + browser_family: Chrome +- + user_agent: Mozilla/5.0 (Linux; Android 5.0; Y100X) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Mobile Safari/537.36 + os: + name: Android + version: "5.0" + platform: "" + client: + type: browser + name: Chrome Mobile + version: 84.0.4147.89 + engine: Blink + engine_version: 84.0.4147.89 + device: + type: smartphone + brand: Doogee + model: Nova Y100X + os_family: Android + browser_family: Chrome diff --git a/regexes/device/mobiles.yml b/regexes/device/mobiles.yml index b9d835f64a..f922cc98d8 100644 --- a/regexes/device/mobiles.yml +++ b/regexes/device/mobiles.yml @@ -6852,7 +6852,7 @@ DoCoMo: # Doogee Doogee: - regex: 'DOOGEE[/ _-]|Valencia2_Y100(?:_?(?:pro|plus))?|Y100_Plus|X5max(?:[_ ]PRO)?|Shoot_[12]|x5_doogee|(KISSME|BIGBOY|COLLO[23]?|DAGGER|DISCOVERY2?|FIND|HOTWIND|LATTE|MAX|MINT|MOON|PIXELS|RAINBOX|TURBO|VALENCIA|VOYAGER2?|TITANS2?)[ -_](DG[0-9]+C?)(?:[);/ ]|$)|(?:BL12000|BL5500[_ ]Lite| Y6C|X9 Mini|LEO_DG280|Y9Plus|Y8 Plus|Hitman_DG850|S(?:4[01]|[568]8|9[05678]|59|61|8[69])Pro|X9[567]Pro|S[478]0Lite|S88Plus|BL[579]000|N[24]0Pro|(? Date: Wed, 29 Nov 2023 19:21:52 +0300 Subject: [PATCH 2/7] feat(device): detect new brand Getnord: Onyx feat(device): detect new brand Onida: i4G1 feat(device): detect brand Orbsmart: RX-01 feat(app): detect apps: Kinogo.ge, Download Hub --- Parser/Device/AbstractDeviceParser.php | 2 ++ Tests/fixtures/clienthints-app.yml | 36 ++++++++++++++++++++++++++ Tests/fixtures/smartphone-37.yml | 36 ++++++++++++++++++++++++++ Tests/fixtures/tv-2.yml | 18 +++++++++++++ regexes/client/hints/apps.yml | 2 ++ regexes/device/mobiles.yml | 12 +++++++++ 6 files changed, 106 insertions(+) diff --git a/Parser/Device/AbstractDeviceParser.php b/Parser/Device/AbstractDeviceParser.php index 60bc60f135..5c198759ea 100644 --- a/Parser/Device/AbstractDeviceParser.php +++ b/Parser/Device/AbstractDeviceParser.php @@ -597,6 +597,7 @@ abstract class AbstractDeviceParser extends AbstractParser 'GE' => 'Geotel', 'Q4' => 'Geotex', 'GEO' => 'GEOZON', + 'GNO' => 'Getnord', 'GER' => 'Gear Mobile', 'GH' => 'Ghia', '2C' => 'Ghong', @@ -1128,6 +1129,7 @@ abstract class AbstractDeviceParser extends AbstractParser 'ONL' => 'OneLern', 'OAN' => 'Oangcc', 'OX' => 'Onix', + 'OIN' => 'Onida', '3O' => 'ONYX BOOX', 'O4' => 'ONN', '9Q' => 'Onkyo', diff --git a/Tests/fixtures/clienthints-app.yml b/Tests/fixtures/clienthints-app.yml index 9b52dc904a..28bcd9892d 100644 --- a/Tests/fixtures/clienthints-app.yml +++ b/Tests/fixtures/clienthints-app.yml @@ -2197,3 +2197,39 @@ model: Galaxy Tab S6 10.5" os_family: Android browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; Android 12; M2010J19SY Build/SKQ1.211202.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/119.0.6045.163 Mobile Safari/537.36 + headers: + http-x-requested-with: com.oxoo.kinogo + os: + name: Android + version: "12" + platform: "" + client: + type: mobile app + name: Kinogo.ge + version: "" + device: + type: smartphone + brand: Xiaomi + model: Redmi 9T + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.75 Mobile Safari/537.36 + headers: + http-x-requested-with: com.tradron.hdvideodownloader + os: + name: Android + version: "11" + platform: "" + client: + type: mobile app + name: Download Hub + version: "" + device: + type: smartphone + brand: Google + model: Pixel 5 + os_family: Android + browser_family: Unknown diff --git a/Tests/fixtures/smartphone-37.yml b/Tests/fixtures/smartphone-37.yml index 9331c5fe0d..598b3d0b18 100644 --- a/Tests/fixtures/smartphone-37.yml +++ b/Tests/fixtures/smartphone-37.yml @@ -3533,3 +3533,39 @@ model: Nova Y100X os_family: Android browser_family: Chrome +- + user_agent: Mozilla/5.0 (Linux; Android 6.0; Getnord-Onyx) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Mobile Safari/537.36 + os: + name: Android + version: "6.0" + platform: "" + client: + type: browser + name: Chrome Mobile + version: 81.0.4044.138 + engine: Blink + engine_version: 81.0.4044.138 + device: + type: smartphone + brand: Getnord + model: Onyx + os_family: Android + browser_family: Chrome +- + user_agent: Mozilla/5.0 (Linux; Android 5.1.1; ONIDA_i4G1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.89 Mobile Safari/537.36 + os: + name: Android + version: 5.1.1 + platform: "" + client: + type: browser + name: Chrome Mobile + version: 76.0.3809.89 + engine: Blink + engine_version: 76.0.3809.89 + device: + type: smartphone + brand: Onida + model: i4G1 + os_family: Android + browser_family: Chrome diff --git a/Tests/fixtures/tv-2.yml b/Tests/fixtures/tv-2.yml index 08b18f9514..0d812dcec6 100644 --- a/Tests/fixtures/tv-2.yml +++ b/Tests/fixtures/tv-2.yml @@ -6275,3 +6275,21 @@ model: 4K55N400D os_family: Android browser_family: Opera +- + user_agent: Mozilla/5.0 (Linux; Android 5.1.1; Orbsmart RX-01) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36 + os: + name: Android + version: 5.1.1 + platform: "" + client: + type: browser + name: Chrome + version: 78.0.3904.108 + engine: Blink + engine_version: 78.0.3904.108 + device: + type: tv + brand: Orbsmart + model: RX-01 + os_family: Android + browser_family: Chrome diff --git a/regexes/client/hints/apps.yml b/regexes/client/hints/apps.yml index d2740ddd5a..980070e37b 100644 --- a/regexes/client/hints/apps.yml +++ b/regexes/client/hints/apps.yml @@ -114,6 +114,8 @@ 'com.sweep.cleaner.trash.junk': 'Sweep' 'com.google.android.apps.maps': 'Google Maps' 'com.box.video.downloader': 'BOX Video Downloader' +'com.oxoo.kinogo': 'Kinogo.ge' +'com.tradron.hdvideodownloader': 'Download Hub' # Vpns 'org.torproject.android': 'Orbot' diff --git a/regexes/device/mobiles.yml b/regexes/device/mobiles.yml index f922cc98d8..fd4067bb3b 100644 --- a/regexes/device/mobiles.yml +++ b/regexes/device/mobiles.yml @@ -37723,6 +37723,18 @@ Arçelik: device: 'tv' model: '' +# Getnord (getnord.com) +Getnord: + regex: 'Getnord[- ]([^/;)]+)(?: Build|[);])' + device: 'smartphone' + model: '$1' + +# Onida +Onida: + regex: 'ONIDA[_ ](i4G1)' + device: 'smartphone' + model: '$1' + # Devices with undectable brand, but detectable model Unknown: regex: 'Plasma Mobile|WebTV/(\d+\.\d+)|TV Bro|(?:M10 Ultra|FO-R15|TVBOX|Smart[ _-]?TV|SmartATV|M8S\+ 4K|PCBox|rk(?:3128|322x|3368)(?:[_-]box)?|H10 PLAY|Smart AIO TV|TVBOX_L|L-BOX|TVBOX-5G|mips.+(?:Opera TV|wireless|wired)|smartbox|TV BOX|I12Pro Max|(?:audi_)?ks1280x480|AT&T TV|RealtekATV|AOSP on r33a0|hx322x_box|X98_S500)(?:[);/ ]|$)' From 850f8b4503588c385654d6290ef7ff819efc67cb Mon Sep 17 00:00:00 2001 From: sanchezzzhak Date: Thu, 30 Nov 2023 20:03:16 +0300 Subject: [PATCH 3/7] feat(device): detect brand Soundmax: SM-LED65M01SU feat(device): detect brand Digma: Optima 1200B feat(device): detect brand Orbsmart: RX-01 feat(device): detect brand Digit4G: E3 Pro, E2 Pro feat(device): detect brand QMobile: i6 Metal (2018) feat(device): detect brand Pioneer: SDA-8TAB --- Tests/fixtures/car_browser.yml | 18 +++++++ Tests/fixtures/smartphone-37.yml | 90 ++++++++++++++++++++++++++++++++ Tests/fixtures/tablet-10.yml | 18 +++++++ Tests/fixtures/tv-2.yml | 18 +++++++ regexes/device/mobiles.yml | 16 +++--- 5 files changed, 153 insertions(+), 7 deletions(-) diff --git a/Tests/fixtures/car_browser.yml b/Tests/fixtures/car_browser.yml index 5d665421dd..36ef6bf95f 100644 --- a/Tests/fixtures/car_browser.yml +++ b/Tests/fixtures/car_browser.yml @@ -917,3 +917,21 @@ model: MPC-100 os_family: Android browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; U; Android 9; SDA-8TAB Build/PPR1.181005.003; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/119.0.6045.67 Safari/537.36 OPR/72.0.2254.67482 + os: + name: Android + version: "9" + platform: "" + client: + type: browser + name: Opera + version: 72.0.2254.67482 + engine: Blink + engine_version: 119.0.6045.67 + device: + type: car browser + brand: Pioneer + model: SDA-8TAB + os_family: Android + browser_family: Opera diff --git a/Tests/fixtures/smartphone-37.yml b/Tests/fixtures/smartphone-37.yml index 598b3d0b18..afff5df71e 100644 --- a/Tests/fixtures/smartphone-37.yml +++ b/Tests/fixtures/smartphone-37.yml @@ -3569,3 +3569,93 @@ model: i4G1 os_family: Android browser_family: Chrome +- + user_agent: Mozilla/5.0 (Linux; U; Android 9; en; QSmart Rocket Build/PPR1.180610.011) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.108 UCBrowser/12.10.0.1163 UCTurbo/1.10.9.900 Mobile Safari/537.36 + os: + name: Android + version: "9" + platform: "" + client: + type: browser + name: UC Browser Turbo + version: 1.10.9.900 + engine: WebKit + engine_version: "537.36" + device: + type: smartphone + brand: QMobile + model: Rocket + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; U; Android 8.1.0; en-US; Digit4G E3 pro Build/O21020) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.108 UCBrowser/12.12.9.1226 Mobile Safari/537.36 + os: + name: Android + version: 8.1.0 + platform: "" + client: + type: browser + name: UC Browser + version: 12.12.9.1226 + engine: WebKit + engine_version: "537.36" + device: + type: smartphone + brand: Digit4G + model: E3 Pro + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; U; Android 8.1.0; en-US; QMobile i6 Metal 2018 Build/OPM2.171019.012) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.108 UCBrowser/12.12.10.1227 Mobile Safari/537.36 + os: + name: Android + version: 8.1.0 + platform: "" + client: + type: browser + name: UC Browser + version: 12.12.10.1227 + engine: WebKit + engine_version: "537.36" + device: + type: smartphone + brand: QMobile + model: i6 Metal (2018) + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; U; Android 8.1.0; Digit4G E2 PRO Build/O21020; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/61.0.3163.98 Mobile Safari/537.36 OPR/70.0.2254.66606 + os: + name: Android + version: 8.1.0 + platform: "" + client: + type: browser + name: Opera Mobile + version: 70.0.2254.66606 + engine: Blink + engine_version: 61.0.3163.98 + device: + type: smartphone + brand: Digit4G + model: E2 Pro + os_family: Android + browser_family: Opera +- + user_agent: Mozilla/5.0 (Linux; U; Android 7.1; GN5001S Build/LMY47D; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/70.0.3538.80 Mobile Safari/537.36 OPR/37.1.2254.132401 + os: + name: Android + version: "7.1" + platform: "" + client: + type: browser + name: Opera Mobile + version: 37.1.2254.132401 + engine: Blink + engine_version: 70.0.3538.80 + device: + type: smartphone + brand: Gionee + model: GN5001S + os_family: Android + browser_family: Opera diff --git a/Tests/fixtures/tablet-10.yml b/Tests/fixtures/tablet-10.yml index 7f7cae3e81..72734483bb 100644 --- a/Tests/fixtures/tablet-10.yml +++ b/Tests/fixtures/tablet-10.yml @@ -1381,3 +1381,21 @@ model: Arrows Tab F-01D os_family: Android browser_family: Android Browser +- + user_agent: Mozilla/5.0 (Linux; arm; Android 11; Optima 1200B TS1266RW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.5845.64 YaSearchBrowser/23.99/apad BroPP/1.0 YaSearchApp/23.99/apad webOmni SA/3 Mobile Safari/537.36 + os: + name: Android + version: "11" + platform: ARM + client: + type: browser + name: Yandex Browser + version: "23.99" + engine: Blink + engine_version: 116.0.5845.64 + device: + type: tablet + brand: Digma + model: Optima 1200B + os_family: Android + browser_family: Unknown diff --git a/Tests/fixtures/tv-2.yml b/Tests/fixtures/tv-2.yml index 0d812dcec6..9288fc35ea 100644 --- a/Tests/fixtures/tv-2.yml +++ b/Tests/fixtures/tv-2.yml @@ -6293,3 +6293,21 @@ model: RX-01 os_family: Android browser_family: Chrome +- + user_agent: Mozilla/5.0 (Linux; arm; Android 11; SM-LED65M01SU) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.5005.167 YaApp_Android/22.79/apad YaSearchBrowser/22.79/apad BroPP/1.0 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "11" + platform: ARM + client: + type: browser + name: Yandex Browser + version: "22.79" + engine: Blink + engine_version: 102.0.5005.167 + device: + type: tv + brand: Soundmax + model: SM-LED65M01SU + os_family: Android + browser_family: Unknown diff --git a/regexes/device/mobiles.yml b/regexes/device/mobiles.yml index fd4067bb3b..e66341cd3e 100644 --- a/regexes/device/mobiles.yml +++ b/regexes/device/mobiles.yml @@ -6648,11 +6648,13 @@ Digiland: # Digit4G (https://digit4g.com/p) Digit4G: - regex: 'Digit(?:4G|play1)' + regex: 'Digit4G|Digit(?:4G|play1)' device: 'smartphone' models: - regex: 'Digitplay1(?:[);/ ]|$)' model: 'Play1' + - regex: 'Digit4G E([23]) pro(?:[);/ ]|$)' + model: 'E$1 Pro' - regex: 'Digit4G[ -](Energy|Pro)' model: '$1' @@ -6817,7 +6819,7 @@ Digma: - regex: 'RS1267PL' model: 'Pro 1480E 4G' device: 'tablet' - - regex: '((?:Optima|Platina|Plane)[ _](?:[EM])?(?:[0-9\.STNMEVCD]+|Prime(?:[ _][345])?)(?:[ _][43]G)?)' + - regex: '((?:Optima|Platina|Plane)[ _](?:[EM])?(?:[0-9\.BSTNMEVCD]+|Prime(?:[ _][345])?)(?:[ _][43]G)?)' model: '$1' device: 'tablet' - regex: 'Digma[_ ]([^;/]+) Build' @@ -19280,7 +19282,7 @@ Pioneer Computers: # Pioneer Pioneer: - regex: 'Pioneer|.*; R1 Build|(?:dvr700pi|XDP-300R|F9212[AB]|SDA-835TAB|SDA-80TAB)(?:[);/ ]|$)' + regex: 'Pioneer|.*; R1 Build|(?:dvr700pi|XDP-300R|F9212[AB]|SDA-835TAB|SDA-80?TAB)(?:[);/ ]|$)' device: 'smartphone' models: - regex: '.*; R1 Build' @@ -19292,7 +19294,7 @@ Pioneer: - regex: '(XDP-300R)' device: 'portable media player' model: '$1' - - regex: '(F9212[AB]|SDA-835TAB|SDA-80TAB)' + - regex: '(F9212[AB]|SDA-835TAB|SDA-80?TAB)' device: 'car browser' model: '$1' - regex: 'BDP-160' @@ -19674,7 +19676,7 @@ Siemens: # Soundmax Soundmax: - regex: '((?:SM-LED32M(?:11|04)S)|SM-LED40M04S)(?:_-Ver01)?(?:[);/ ]|$)' + regex: '((?:SM-LED32M(?:11|04)S)|SM-LED(?:40M04S|65M01SU))(?:_-Ver01)?(?:[);/ ]|$)' device: 'tv' model: '$1' @@ -22331,8 +22333,8 @@ QMobile: model: 'i8i' - regex: 'i6 Metal ONE' model: 'i6 Metal One' - - regex: 'i6 Metal 2017' - model: 'i6 Metal (2017)' + - regex: 'i6 Metal (2018)' + model: 'i6 Metal ($1)' - regex: 'Smart HD Pro' model: 'Smart HD Pro' - regex: 'Rocket Pro' From b199b521eed4ee786c2e0d2af5a6ed73da75cbdb Mon Sep 17 00:00:00 2001 From: sanchezzzhak Date: Thu, 30 Nov 2023 21:01:59 +0300 Subject: [PATCH 4/7] feat(device): detect new brand FreeYond: M5A feat(device): detect brand Sparx: Neo 5 Plus feat(device): detect brand POCO: C65 (2310FPCA4G) feat(device): detect brand HIPER: S-Pad feat(device): detect brand Blackview: Active 8 Pro feat(device): detect brand Xiaomi: Redmi Note 13 5G (2312DRAABC), Redmi Note 13 Pro+ (23090RA98C), Mix Fold 3 (2308CPXD0C), Redmi Note 12R (23076RA4BC), Redmi 13C (23106RN0DA), Redmi K60 Ultra (23078RKD5C), Redmi 12 (23053RN02I), Redmi Pad SE (23073RPBFG), Pad 6 (23043RP34C) --- Parser/Device/AbstractDeviceParser.php | 1 + Tests/fixtures/phablet-1.yml | 72 ++++++++++++++ Tests/fixtures/smartphone-37.yml | 126 +++++++++++++++++++++++++ Tests/fixtures/tablet-10.yml | 54 +++++++++++ regexes/device/mobiles.yml | 48 ++++++++-- 5 files changed, 295 insertions(+), 6 deletions(-) diff --git a/Parser/Device/AbstractDeviceParser.php b/Parser/Device/AbstractDeviceParser.php index b2e0bbf51e..a6422f1425 100644 --- a/Parser/Device/AbstractDeviceParser.php +++ b/Parser/Device/AbstractDeviceParser.php @@ -565,6 +565,7 @@ abstract class AbstractDeviceParser extends AbstractParser 'FJ' => 'FOODO', 'FOS' => 'FOSSiBOT', 'FT' => 'Freetel', + 'FEY' => 'FreeYond', 'FRU' => 'Frunsi', 'F4' => 'F&U', '1F' => 'FMT', diff --git a/Tests/fixtures/phablet-1.yml b/Tests/fixtures/phablet-1.yml index 65d2f59e2d..63ce372e8a 100644 --- a/Tests/fixtures/phablet-1.yml +++ b/Tests/fixtures/phablet-1.yml @@ -1767,3 +1767,75 @@ model: Pova 5 Pro 5G os_family: Android browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; 2312DRAABC) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.5845.64 YaSearchBrowser/23.99.1 BroPP/1.0 YaSearchApp/23.99.1 webOmni SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.99.1 + engine: Blink + engine_version: 116.0.5845.64 + device: + type: phablet + brand: Xiaomi + model: Redmi Note 13 5G + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; 23090RA98C) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.105 YaBrowser/23.11.1.105.00 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.11.1.105.00 + engine: Blink + engine_version: 118.0.5993.105 + device: + type: phablet + brand: Xiaomi + model: Redmi Note 13 Pro+ + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; 2308CPXD0C) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.105 YaBrowser/23.11.1.105.00 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.11.1.105.00 + engine: Blink + engine_version: 118.0.5993.105 + device: + type: phablet + brand: Xiaomi + model: Mix Fold 3 + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; 23076RA4BC) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.232 YaBrowser/23.11.0.232.00 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.11.0.232.00 + engine: Blink + engine_version: 118.0.5993.232 + device: + type: phablet + brand: Xiaomi + model: Redmi Note 12R + os_family: Android + browser_family: Unknown diff --git a/Tests/fixtures/smartphone-37.yml b/Tests/fixtures/smartphone-37.yml index 88588515a7..12c61ce24b 100644 --- a/Tests/fixtures/smartphone-37.yml +++ b/Tests/fixtures/smartphone-37.yml @@ -4415,3 +4415,129 @@ model: GN5001S os_family: Android browser_family: Opera +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 12; Sparx Neo 5 Plus) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.2332 YaApp_Android/23.110 YaSearchBrowser/23.110 BroPP/1.0 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "12" + platform: ARM + client: + type: browser + name: Yandex Browser + version: "23.110" + engine: Blink + engine_version: 118.0.5993.2332 + device: + type: smartphone + brand: Sparx + model: Neo 5 Plus + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; 2310FPCA4G) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.2332 YaApp_Android/23.110.1 YaSearchBrowser/23.110.1 BroPP/1.0 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.110.1 + engine: Blink + engine_version: 118.0.5993.2332 + device: + type: smartphone + brand: POCO + model: C65 + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; 23106RN0DA) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.2332 YaApp_Android/23.110 YaSearchBrowser/23.110 BroPP/1.0 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: "23.110" + engine: Blink + engine_version: 118.0.5993.2332 + device: + type: smartphone + brand: Xiaomi + model: Redmi 13C + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; 23078RKD5C) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.2332 YaApp_Android/23.110.1 YaSearchBrowser/23.110.1 BroPP/1.0 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.110.1 + engine: Blink + engine_version: 118.0.5993.2332 + device: + type: smartphone + brand: Xiaomi + model: Redmi K60 Ultra + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; 23053RN02I) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.5845.531 YaSearchBrowser/23.97.1 BroPP/1.0 YaSearchApp/23.97.1 webOmni SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.97.1 + engine: Blink + engine_version: 116.0.5845.531 + device: + type: smartphone + brand: Xiaomi + model: Redmi 12 + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; 2305003M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.232 YaBrowser/23.11.0.232.00 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.11.0.232.00 + engine: Blink + engine_version: 118.0.5993.232 + device: + type: smartphone + brand: FreeYond + model: M5A + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; Active 8 Pro) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.232 YaBrowser/23.11.0.232.01 Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.11.0.232.01 + engine: Blink + engine_version: 118.0.5993.232 + device: + type: smartphone + brand: Blackview + model: Active 8 Pro + os_family: Android + browser_family: Unknown diff --git a/Tests/fixtures/tablet-10.yml b/Tests/fixtures/tablet-10.yml index d20bf4b2f7..98e8dc3b9e 100644 --- a/Tests/fixtures/tablet-10.yml +++ b/Tests/fixtures/tablet-10.yml @@ -1633,3 +1633,57 @@ model: Optima 1200B os_family: Android browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 11; Hiper S-Pad) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.5845.701 YaSearchBrowser/23.93/apad BroPP/1.0 YaSearchApp/23.93/apad webOmni SA/3 Mobile Safari/537.36 + os: + name: Android + version: "11" + platform: ARM + client: + type: browser + name: Yandex Browser + version: "23.93" + engine: Blink + engine_version: 116.0.5845.701 + device: + type: tablet + brand: HIPER + model: S-Pad + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; 23073RPBFG) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.166 YaApp_Android/21.82/apad YaSearchBrowser/21.82/apad BroPP/1.0 SA/3 Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: "21.82" + engine: Blink + engine_version: 92.0.4515.166 + device: + type: tablet + brand: Xiaomi + model: Redmi Pad SE + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; 23043RP34C) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.5845.64 YaSearchBrowser/23.99/apad BroPP/1.0 YaSearchApp/23.99/apad webOmni SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: "23.99" + engine: Blink + engine_version: 116.0.5845.64 + device: + type: tablet + brand: Xiaomi + model: Pad 6 + os_family: Android + browser_family: Unknown diff --git a/regexes/device/mobiles.yml b/regexes/device/mobiles.yml index 98dd476cd7..21f0c34cde 100644 --- a/regexes/device/mobiles.yml +++ b/regexes/device/mobiles.yml @@ -3972,7 +3972,7 @@ Bluegood: # Blackview Blackview: - regex: 'Blackview|(BL8800|BV([24-9]000|8800|[46]900|(5[1589]|9[135689])00|6[1368]00|7100)(?:[ _](?:PRO))?|(P10000(?:[ _](?:PRO))?)|omega[ _]pro|Alife[ _][PS]1|Heatwave|DM550|BV9700Pro|(? Date: Fri, 1 Dec 2023 13:54:58 +0300 Subject: [PATCH 5/7] feat(device): detect brand Xiaomi: Mix Fold 3, 14 (23127PN0CC), 14 Pro (23116PN5BC) feat(device): detect brand Google: Pixel Fold (G9FPL), Pixel 7a (G0DZQ, G82U8), Pixel 8 Pro (G1MNW), Pixel 8 (G9BQD) feat(device): detect brand ZTE: Blade L210 feat(device): detect brand POCO: C51 feat(device): detect brand Vontar: R3 feat(device): detect brand Casper: VIA X30 feat(device): detect brand AT&T: Vista (WTATTRW2) feat(device): detect brand iTel: S23+ (S681LN) feat(device): detect brand Huawei: Honor Magic V2 (VER-AN10), Honor Magic Vs2 (VER-AN00) --- Tests/fixtures/phablet-1.yml | 36 +++++ Tests/fixtures/smartphone-37.yml | 270 +++++++++++++++++++++++++++++++ Tests/fixtures/tv-2.yml | 18 +++ regexes/device/mobiles.yml | 47 ++++-- 4 files changed, 358 insertions(+), 13 deletions(-) diff --git a/Tests/fixtures/phablet-1.yml b/Tests/fixtures/phablet-1.yml index 63ce372e8a..fb5a3477f0 100644 --- a/Tests/fixtures/phablet-1.yml +++ b/Tests/fixtures/phablet-1.yml @@ -1839,3 +1839,39 @@ model: Redmi Note 12R os_family: Android browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; Android 13; Xiaomi Mix Fold 3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.48 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: "" + client: + type: browser + name: Chrome Mobile + version: 118.0.5993.48 + engine: Blink + engine_version: 118.0.5993.48 + device: + type: phablet + brand: Xiaomi + model: Mix Fold 3 + os_family: Android + browser_family: Chrome +- + user_agent: Mozilla/5.0 (Linux; Android 14; G9FPL) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.48 Mobile Safari/537.36 + os: + name: Android + version: "14" + platform: "" + client: + type: browser + name: Chrome Mobile + version: 118.0.5993.48 + engine: Blink + engine_version: 118.0.5993.48 + device: + type: phablet + brand: Google + model: Pixel Fold + os_family: Android + browser_family: Chrome diff --git a/Tests/fixtures/smartphone-37.yml b/Tests/fixtures/smartphone-37.yml index 12c61ce24b..2fb338e9f8 100644 --- a/Tests/fixtures/smartphone-37.yml +++ b/Tests/fixtures/smartphone-37.yml @@ -4541,3 +4541,273 @@ model: Active 8 Pro os_family: Android browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; Android 10; Blade L210) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.101 Mobile Safari/537.36 OPR/77.0.4054.90 + os: + name: Android + version: "10" + platform: "" + client: + type: browser + name: Opera Mobile + version: 77.0.4054.90 + engine: Blink + engine_version: 91.0.4472.101 + device: + type: smartphone + brand: ZTE + model: Blade L210 + os_family: Android + browser_family: Opera +- + user_agent: Mozilla/5.0 (Linux; Android 10; Blade L210RU Build/QP1A.190711.020) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.96 Mobile Safari/537.36 + os: + name: Android + version: "10" + platform: "" + client: + type: browser + name: Chrome Mobile + version: 72.0.3626.96 + engine: Blink + engine_version: 72.0.3626.96 + device: + type: smartphone + brand: ZTE + model: Blade L210 + os_family: Android + browser_family: Chrome +- + user_agent: Mozilla/5.0 (Linux; Android 13; VIA X30 Build/TP1A.220624.014; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/119.0.6045.163 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: "" + client: + type: browser + name: Chrome Webview + version: 119.0.6045.163 + engine: Blink + engine_version: 119.0.6045.163 + device: + type: smartphone + brand: Casper + model: VIA X30 + os_family: Android + browser_family: Chrome +- + user_agent: Mozilla/5.0 (Linux; Android 13; VER-AN10) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.0.0 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: "" + client: + type: browser + name: Chrome Mobile + version: 102.0.0.0 + engine: Blink + engine_version: 102.0.0.0 + device: + type: smartphone + brand: Huawei + model: Honor Magic V2 + os_family: Android + browser_family: Chrome +- + user_agent: Mozilla/5.0 (Linux; Android 13; VER-AN00) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.101 Safari/537.36 + os: + name: Android + version: "13" + platform: "" + client: + type: browser + name: Chrome + version: 75.0.3770.101 + engine: Blink + engine_version: 75.0.3770.101 + device: + type: smartphone + brand: Huawei + model: Honor Magic Vs2 + os_family: Android + browser_family: Chrome +- + user_agent: Mozilla/5.0 (Linux; Android 13; WTATTRW2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.5938.154 Mobile Safari/537.36 OPR/78.5.4143.75924 + os: + name: Android + version: "13" + platform: "" + client: + type: browser + name: Opera Mobile + version: 78.5.4143.75924 + engine: Blink + engine_version: 117.0.5938.154 + device: + type: smartphone + brand: 'AT&T' + model: Vista + os_family: Android + browser_family: Opera +- + user_agent: Mozilla/5.0 (Linux; Android 13; itel S681LN) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.5938.154 Mobile Safari/537.36 OPR/78.5.4143.75924 + os: + name: Android + version: "13" + platform: "" + client: + type: browser + name: Opera Mobile + version: 78.5.4143.75924 + engine: Blink + engine_version: 117.0.5938.154 + device: + type: smartphone + brand: iTel + model: S23+ + os_family: Android + browser_family: Opera +- + user_agent: Mozilla/5.0 (Linux; Android 13; motorola edge 40) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/23.0 Chrome/115.0.0.0 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: "" + client: + type: browser + name: Samsung Browser + version: "23.0" + engine: Edge + engine_version: "40" + device: + type: smartphone + brand: Motorola + model: Edge 40 + os_family: Android + browser_family: Chrome +- + user_agent: Mozilla/5.0 (Linux; Android 14; 23127PN0CC Build/UKQ1.230804.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/119.0.6045.67 Mobile Safari/537.36 + os: + name: Android + version: "14" + platform: "" + client: + type: browser + name: Chrome Webview + version: 119.0.6045.67 + engine: Blink + engine_version: 119.0.6045.67 + device: + type: smartphone + brand: Xiaomi + model: "14" + os_family: Android + browser_family: Chrome +- + user_agent: Mozilla/5.0 (Linux; Android 14; 23116PN5BC) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.5938.154 Mobile Safari/537.36 OPR/78.5.4143.75924 + os: + name: Android + version: "14" + platform: "" + client: + type: browser + name: Opera Mobile + version: 78.5.4143.75924 + engine: Blink + engine_version: 117.0.5938.154 + device: + type: smartphone + brand: Xiaomi + model: 14 Pro + os_family: Android + browser_family: Opera +- + user_agent: Mozilla/5.0 (Linux; Android 14; G0DZQ) AppleWebKit/537.46 (KHTML, like Gecko) Chrome/118.0.5993.80 Mobile Safari/537.46 + os: + name: Android + version: "14" + platform: "" + client: + type: browser + name: Chrome Mobile + version: 118.0.5993.80 + engine: Blink + engine_version: 118.0.5993.80 + device: + type: smartphone + brand: Google + model: Pixel 7a + os_family: Android + browser_family: Chrome +- + user_agent: Mozilla/5.0 (Linux; Android 14; G1MNW) AppleWebKit/537.46 (KHTML, like Gecko) Chrome/118.0.5993.80 Mobile Safari/537.46 + os: + name: Android + version: "14" + platform: "" + client: + type: browser + name: Chrome Mobile + version: 118.0.5993.80 + engine: Blink + engine_version: 118.0.5993.80 + device: + type: smartphone + brand: Google + model: Pixel 8 Pro + os_family: Android + browser_family: Chrome +- + user_agent: Mozilla/5.0 (Linux; Android 14; G82U8) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.48 Mobile Safari/537.43 + os: + name: Android + version: "14" + platform: "" + client: + type: browser + name: Chrome Mobile + version: 118.0.5993.48 + engine: Blink + engine_version: 118.0.5993.48 + device: + type: smartphone + brand: Google + model: Pixel 7a + os_family: Android + browser_family: Chrome +- + user_agent: Mozilla/5.0 (Linux; Android 14; G9BQD) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.48 Mobile Safari/537.36 + os: + name: Android + version: "14" + platform: "" + client: + type: browser + name: Chrome Mobile + version: 118.0.5993.48 + engine: Blink + engine_version: 118.0.5993.48 + device: + type: smartphone + brand: Google + model: Pixel 8 + os_family: Android + browser_family: Chrome +- + user_agent: Mozilla/5.0 (Linux; Android 14; MZB0E6DIN) AppleWebKit/537.44 (KHTML, like Gecko) Chrome/118.0.5993.80 Mobile Safari/537.36 + os: + name: Android + version: "14" + platform: "" + client: + type: browser + name: Chrome Mobile + version: 118.0.5993.80 + engine: Blink + engine_version: 118.0.5993.80 + device: + type: smartphone + brand: POCO + model: C51 + os_family: Android + browser_family: Chrome diff --git a/Tests/fixtures/tv-2.yml b/Tests/fixtures/tv-2.yml index 1706f4fdad..f0cc5a77a6 100644 --- a/Tests/fixtures/tv-2.yml +++ b/Tests/fixtures/tv-2.yml @@ -6401,3 +6401,21 @@ model: SM-LED65M01SU os_family: Android browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; Android 13; VONTAR R3 Build/TQ2A.230305.008.F1; wv) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.61 YaBrowser/23.9.0.232 (lite) Safari/537.36 + os: + name: Android + version: "13" + platform: "" + client: + type: browser + name: Yandex Browser Lite + version: 23.9.0.232 + engine: Blink + engine_version: 101.0.4951.61 + device: + type: tv + brand: Vontar + model: R3 + os_family: Android + browser_family: Unknown diff --git a/regexes/device/mobiles.yml b/regexes/device/mobiles.yml index 21f0c34cde..38b31c6845 100644 --- a/regexes/device/mobiles.yml +++ b/regexes/device/mobiles.yml @@ -5486,12 +5486,12 @@ Casio: # Casper (casper.com.tr) Casper: - regex: 'CASPER[_ ]|VIA[- _](X30 Plus|[XF]20|T7D|A[34]|E[43]|E30|F[123]|G[345]|M4|[LS]8|S7|P[23]|V8C|A[13]_Plus(?:_64)?|A1(?:_1)?|S[13]0|S48|S|T17_M|T1[07]|T7|[ST]7-3G|T8B|T8D-3G|S1[78]|S48_0|[LS]30_0|L30|F30 Plus)(?:[);/ ]|$)' + regex: 'CASPER[_ ]|VIA[- _](X30(?: Plus)?|[XF]20|T7D|A[34]|E[43]|E30|F[123]|G[345]|M4|[LS]8|S7|P[23]|V8C|A[13]_Plus(?:_64)?|A1(?:_1)?|S[13]0|S48|S|T17_M|T1[07]|T7|[ST]7-3G|T8B|T8D-3G|S1[78]|S48_0|[LS]30_0|L30|F30 Plus)(?:[);/ ]|$)' device: 'smartphone' models: - regex: '(?:CASPER[_ ])?VIA[_ ](A1|X30)[_ ]Plus(?:_64)?' model: 'VIA $1 Plus' - - regex: '(?:CASPER[_ ])?VIA[_ ]([XF]20|G1_Plus|F30 Plus|A3_Plus|G[135]|E[14]|E30|[AE]2|M[123]|V[35689]|V10|G3|V6X|A[34]|E3|F[123]|G4|M4|P[23]|S|V8C|A1(?:_1)?)(?:[);/ ]|$)' + - regex: '(?:CASPER[_ ])?VIA[_ ]([XF]20|X30|G1_Plus|F30 Plus|A3_Plus|G[135]|E[14]|E30|[AE]2|M[123]|V[35689]|V10|G3|V6X|A[34]|E3|F[123]|G4|M4|P[23]|S|V8C|A1(?:_1)?)(?:[);/ ]|$)' model: 'VIA $1' - regex: 'CASPER_VIA_E1c' model: 'VIA E1C' @@ -8918,7 +8918,7 @@ Goly: # Google Google: - regex: 'Nexus(?! 6P)|GoogleTV|Google Fiber|Google Pixel|Glass(? Date: Mon, 4 Dec 2023 13:29:24 +0300 Subject: [PATCH 6/7] feat(device): detect brand Xiaomi: Redmi Note 12 Pro Speed (22101320C), Redmi K30S, Redmi K30 Pro Zoom, Redmi K20 Pro, Pad 6 Max 14 (2307BRPDCC) feat(device): detect brand Vivo: T2 (V2320), V29e 5G (V2317), Y17s (V2310) feat(device): detect brand Tecno Mobile: Spark Go (2024) (TECNO BG6) feat(device): detect brand F150: Air1 Ultra Pro feat(device): detect brand Hotwav: Cyber X Pro feat(device): detect brand CUBOT: King Kong Star feat(device): detect brand Infinix: Zero 30 (X6731B), Zero 30 5G (X6731) feat(device): detect brand Oukitel: WP27, WP26, WP23 Pro, OKT3, RT7 Titan 5G, RT6, RT5 feat(device): detect brand UMIDIGI: G5 Mecha (RP08) feat(device): detect brand Lenovo: Legion Y700 (TB320FC) feat(device): detect brand Skyline: 55U7510, 58U7510 --- Tests/fixtures/phablet-1.yml | 18 ++ Tests/fixtures/smartphone-37.yml | 342 +++++++++++++++++++++++++++++++ Tests/fixtures/tablet-10.yml | 108 ++++++++++ Tests/fixtures/tv-2.yml | 36 ++++ regexes/device/mobiles.yml | 61 ++++-- 5 files changed, 550 insertions(+), 15 deletions(-) diff --git a/Tests/fixtures/phablet-1.yml b/Tests/fixtures/phablet-1.yml index fb5a3477f0..2e42e6b109 100644 --- a/Tests/fixtures/phablet-1.yml +++ b/Tests/fixtures/phablet-1.yml @@ -1875,3 +1875,21 @@ model: Pixel Fold os_family: Android browser_family: Chrome +- + user_agent: Mozilla/5.0 (Linux; arm; Android 13; 22101320C) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.5845.549 YaSearchBrowser/23.95.1 BroPP/1.0 YaSearchApp/23.95.1 webOmni SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.95.1 + engine: Blink + engine_version: 116.0.5845.549 + device: + type: phablet + brand: Xiaomi + model: Redmi Note 12 Pro Speed + os_family: Android + browser_family: Unknown diff --git a/Tests/fixtures/smartphone-37.yml b/Tests/fixtures/smartphone-37.yml index 2fb338e9f8..a98162bec9 100644 --- a/Tests/fixtures/smartphone-37.yml +++ b/Tests/fixtures/smartphone-37.yml @@ -4811,3 +4811,345 @@ model: C51 os_family: Android browser_family: Chrome +- + user_agent: Mozilla/5.0 (Linux; arm; Android 13; V2320) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 YaSearchBrowser/23.15.1 BroPP/1.0 YaSearchApp/23.15.1 webOmni SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.15.1 + engine: Blink + engine_version: 108.0.0.0 + device: + type: smartphone + brand: Vivo + model: T2 + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm; Android 13; V2317) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.232 YaBrowser/23.11.0.232.00 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.11.0.232.00 + engine: Blink + engine_version: 118.0.5993.232 + device: + type: smartphone + brand: Vivo + model: V29e 5G + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm; Android 13; V2310) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 YaSearchBrowser/23.15.1 BroPP/1.0 YaSearchApp/23.15.1 webOmni SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.15.1 + engine: Blink + engine_version: 108.0.0.0 + device: + type: smartphone + brand: Vivo + model: Y17s + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm; Android 13; WDY-AN00) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.5845.808 YaApp_Android/23.92.1 YaSearchBrowser/23.92.1 BroPP/1.0 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.92.1 + engine: Blink + engine_version: 116.0.5845.808 + device: + type: smartphone + brand: Huawei + model: Honor Play 40C + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm; Android 13; TECNO BG6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.5845.64 YaSearchBrowser/23.99.1 BroPP/1.0 YaSearchApp/23.99.1 webOmni SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.99.1 + engine: Blink + engine_version: 116.0.5845.64 + device: + type: smartphone + brand: Tecno Mobile + model: Spark Go (2024) + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm; Android 13; Air1 Ultra Pro) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 YaBrowser/23.1.5.93.00 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.1.5.93.00 + engine: Blink + engine_version: 108.0.0.0 + device: + type: smartphone + brand: F150 + model: Air1 Ultra Pro + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm; Android 12; ZTE Blade A53) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.2332 YaApp_Android/23.110 YaSearchBrowser/23.110 BroPP/1.0 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "12" + platform: ARM + client: + type: browser + name: Yandex Browser + version: "23.110" + engine: Blink + engine_version: 118.0.5993.2332 + device: + type: smartphone + brand: ZTE + model: Blade A53 + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; Android 10; Redmi K30S) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.101 Mobile Safari/537.36 EdgA/91.0.864.48 + os: + name: Android + version: "10" + platform: "" + client: + type: browser + name: Microsoft Edge + version: 91.0.864.48 + engine: Blink + engine_version: 91.0.4472.101 + device: + type: smartphone + brand: Xiaomi + model: Redmi K30S + os_family: Android + browser_family: Internet Explorer +- + user_agent: Mozilla/5.0 (Linux; Android 10; Redmi K30 Pro Zoom) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.101 Mobile Safari/537.36 OPR/77.0.4054.90 + os: + name: Android + version: "10" + platform: "" + client: + type: browser + name: Opera Mobile + version: 77.0.4054.90 + engine: Blink + engine_version: 91.0.4472.101 + device: + type: smartphone + brand: Xiaomi + model: Redmi K30 Pro Zoom + os_family: Android + browser_family: Opera +- + user_agent: Mozilla/5.0 (Linux; Android 10; Redmi K20Pro) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.101 Mobile Safari/537.36 + os: + name: Android + version: "10" + platform: "" + client: + type: browser + name: Chrome Mobile + version: 91.0.4472.101 + engine: Blink + engine_version: 91.0.4472.101 + device: + type: smartphone + brand: Xiaomi + model: Redmi K20 Pro + os_family: Android + browser_family: Chrome +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; WP28) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.105 YaBrowser/23.11.1.105.00 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.11.1.105.00 + engine: Blink + engine_version: 118.0.5993.105 + device: + type: smartphone + brand: Oukitel + model: WP28 + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; WP27) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.232 YaBrowser/23.11.0.232.00 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.11.0.232.00 + engine: Blink + engine_version: 118.0.5993.232 + device: + type: smartphone + brand: Oukitel + model: WP27 + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; WP26) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.2332 YaApp_Android/23.110.1 YaSearchBrowser/23.110.1 BroPP/1.0 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.110.1 + engine: Blink + engine_version: 118.0.5993.2332 + device: + type: smartphone + brand: Oukitel + model: WP26 + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; WP23 Pro) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.2332 YaApp_Android/23.110.1 YaSearchBrowser/23.110.1 BroPP/1.0 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.110.1 + engine: Blink + engine_version: 118.0.5993.2332 + device: + type: smartphone + brand: Oukitel + model: WP23 Pro + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; Cyber X Pro) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.5845.64 YaSearchBrowser/23.99.1 BroPP/1.0 YaSearchApp/23.99.1 webOmni SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.99.1 + engine: Blink + engine_version: 116.0.5845.64 + device: + type: smartphone + brand: Hotwav + model: Cyber X Pro + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; KINGKONG STAR) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.5845.1159 YaApp_Android/23.96.1 YaSearchBrowser/23.96.1 BroPP/1.0 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.96.1 + engine: Blink + engine_version: 116.0.5845.1159 + device: + type: smartphone + brand: CUBOT + model: King Kong Star + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; Infinix X6731B) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.652 YaSearchBrowser/23.111.1 BroPP/1.0 YaSearchApp/23.111.1 webOmni SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.111.1 + engine: Blink + engine_version: 118.0.5993.652 + device: + type: smartphone + brand: Infinix + model: Zero 30 + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; Infinix X6731) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.652 YaSearchBrowser/23.111.1 BroPP/1.0 YaSearchApp/23.111.1 webOmni SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.111.1 + engine: Blink + engine_version: 118.0.5993.652 + device: + type: smartphone + brand: Infinix + model: Zero 30 5G + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; RP08) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.232 YaBrowser/23.11.0.232.00 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.11.0.232.00 + engine: Blink + engine_version: 118.0.5993.232 + device: + type: smartphone + brand: UMIDIGI + model: G5 Mecha + os_family: Android + browser_family: Unknown diff --git a/Tests/fixtures/tablet-10.yml b/Tests/fixtures/tablet-10.yml index 98e8dc3b9e..6fe13287ad 100644 --- a/Tests/fixtures/tablet-10.yml +++ b/Tests/fixtures/tablet-10.yml @@ -1687,3 +1687,111 @@ model: Pad 6 os_family: Android browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm; Android 13; TB320FC) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.5845.64 YaSearchBrowser/23.99/apad BroPP/1.0 YaSearchApp/23.99/apad webOmni SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: "23.99" + engine: Blink + engine_version: 116.0.5845.64 + device: + type: tablet + brand: Lenovo + model: Legion Y700 + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm; Android 13; 2307BRPDCC) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.5845.64 YaSearchBrowser/23.99/apad BroPP/1.0 YaSearchApp/23.99/apad webOmni SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: "23.99" + engine: Blink + engine_version: 116.0.5845.64 + device: + type: tablet + brand: Xiaomi + model: Pad 6 Max 14 + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; OKT3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.2332 YaApp_Android/23.110/apad YaSearchBrowser/23.110/apad BroPP/1.0 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: "23.110" + engine: Blink + engine_version: 118.0.5993.2332 + device: + type: tablet + brand: Oukitel + model: OKT3 + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; RT7 TITAN 5G) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.5845.39 YaBrowser/23.9.8.39.01 Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.9.8.39.01 + engine: Blink + engine_version: 116.0.5845.39 + device: + type: tablet + brand: Oukitel + model: RT7 Titan 5G + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; RT6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.232 YaBrowser/23.11.0.232.01 Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.11.0.232.01 + engine: Blink + engine_version: 118.0.5993.232 + device: + type: tablet + brand: Oukitel + model: RT6 + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; RT5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.232 YaBrowser/23.11.0.232.01 Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.11.0.232.01 + engine: Blink + engine_version: 118.0.5993.232 + device: + type: tablet + brand: Oukitel + model: RT5 + os_family: Android + browser_family: Unknown diff --git a/Tests/fixtures/tv-2.yml b/Tests/fixtures/tv-2.yml index f0cc5a77a6..29bc1b9b2f 100644 --- a/Tests/fixtures/tv-2.yml +++ b/Tests/fixtures/tv-2.yml @@ -6419,3 +6419,39 @@ model: R3 os_family: Android browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm; Android 11; SKYLINE_55U7510) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.5005.167 YaApp_Android/22.79/apad YaSearchBrowser/22.79/apad BroPP/1.0 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "11" + platform: ARM + client: + type: browser + name: Yandex Browser + version: "22.79" + engine: Blink + engine_version: 102.0.5005.167 + device: + type: tv + brand: Skyline + model: 55U7510 + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm; Android 11; SKYLINE 58U7510) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.5005.167 YaApp_Android/22.79/apad YaSearchBrowser/22.79/apad BroPP/1.0 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "11" + platform: ARM + client: + type: browser + name: Yandex Browser + version: "22.79" + engine: Blink + engine_version: 102.0.5005.167 + device: + type: tv + brand: Skyline + model: 58U7510 + os_family: Android + browser_family: Unknown diff --git a/regexes/device/mobiles.yml b/regexes/device/mobiles.yml index 38b31c6845..b443543826 100644 --- a/regexes/device/mobiles.yml +++ b/regexes/device/mobiles.yml @@ -4176,7 +4176,7 @@ VGO TEL: # Vivo (vivo.com.cn, vivo.com) Vivo: - regex: '((?:VIV-|BBG-)?(? Date: Mon, 4 Dec 2023 13:44:36 +0300 Subject: [PATCH 7/7] feat(device): detect brand Realme: GT 5 (RMX3823), 11 Pro (RMX3770) --- Tests/fixtures/smartphone-37.yml | 36 ++++++++++++++++++++++++++++++++ regexes/device/mobiles.yml | 10 ++++++--- 2 files changed, 43 insertions(+), 3 deletions(-) diff --git a/Tests/fixtures/smartphone-37.yml b/Tests/fixtures/smartphone-37.yml index a98162bec9..6b7aa19e73 100644 --- a/Tests/fixtures/smartphone-37.yml +++ b/Tests/fixtures/smartphone-37.yml @@ -5153,3 +5153,39 @@ model: G5 Mecha os_family: Android browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; RMX3823) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.5845.64 YaSearchBrowser/23.99.1 BroPP/1.0 YaSearchApp/23.99.1 webOmni SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.99.1 + engine: Blink + engine_version: 116.0.5845.64 + device: + type: smartphone + brand: Realme + model: GT 5 + os_family: Android + browser_family: Unknown +- + user_agent: Mozilla/5.0 (Linux; arm_64; Android 13; RMX3770) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.2332 YaApp_Android/23.110.1 YaSearchBrowser/23.110.1 BroPP/1.0 SA/3 Mobile Safari/537.36 + os: + name: Android + version: "13" + platform: ARM + client: + type: browser + name: Yandex Browser + version: 23.110.1 + engine: Blink + engine_version: 118.0.5993.2332 + device: + type: smartphone + brand: Realme + model: 11 Pro + os_family: Android + browser_family: Unknown diff --git a/regexes/device/mobiles.yml b/regexes/device/mobiles.yml index b443543826..5ec1798964 100644 --- a/regexes/device/mobiles.yml +++ b/regexes/device/mobiles.yml @@ -17936,7 +17936,7 @@ OnePlus: # Realme (sub brand Oppo) Realme: - regex: 'Realme[ _]|(?:RMX(?:18(0[13579]|11|3[13]|2[1257]|[45]1|53|45)|19(03|4[1235]|19|9[23]|2[1579]|[01379]1|73)|20(?:[025-7]1|42|[0357]2|03|2[257]|63|7[56]|63L1|8[1356]|[2-5]0)|21(?:0[13]|1[27]|[12]1|4[24]|5[156]|6[13]|7[036]|8[0359]|9[345])|220[0125]|30(?:[3468]1|4[23]|9[23]|63|85)|31(?:15|2[125]|42|51|6[16]|71|9[1357])|32(?:0[13]|35|42|[346]1|6[0235689]|86)|33(?:[0157]0|[17]2|71|6[036]|[0186]1|57|88|9[12356])|34(?:30|78|[69]1|[67]2|7[145]|9[23])|35(?:0[1236]|1[1367]|21|[578]1|6[0123]|7[24])|36(?:1[01257]|[39]0|2[347]|8[67]|6[013])|370[0689]|37[146]0|37[47]1|3830)|(?:OPPO[ _]?)?CPH1861|RMP210[235-8]|4K Google TV Stick)(?:[);/ ]|$)' + regex: 'Realme[ _]|(?:RMX(?:18(0[13579]|11|3[13]|2[1257]|[45]1|53|45)|19(03|4[1235]|19|9[23]|2[1579]|[01379]1|73)|20(?:[025-7]1|42|[0357]2|03|2[257]|63|7[56]|63L1|8[1356]|[2-5]0)|21(?:0[13]|1[27]|[12]1|4[24]|5[156]|6[13]|7[036]|8[0359]|9[345])|220[0125]|30(?:[3468]1|4[23]|9[23]|63|85)|31(?:15|2[125]|42|51|6[16]|71|9[1357])|32(?:0[13]|35|42|[346]1|6[0235689]|86)|33(?:[0157]0|[17]2|71|6[036]|[0186]1|57|88|9[12356])|34(?:30|78|[69]1|[67]2|7[145]|9[23])|35(?:0[1236]|1[1367]|21|[578]1|6[0123]|7[24])|36(?:1[01257]|[39]0|2[347]|8[67]|6[013])|370[0689]|37[1467]0|37[47]1|3830|3823)|(?:OPPO[ _]?)?CPH1861|RMP210[235-8]|4K Google TV Stick)(?:[);/ ]|$)' device: 'smartphone' models: - regex: 'RMX370[68]' @@ -18049,6 +18049,8 @@ Realme: model: '11 Pro+' - regex: 'RMX3771' model: '11 Pro 5G' + - regex: 'RMX3770' + model: '11 Pro' - regex: 'RMX1925(?:[);/ ]|$)' model: '5S' - regex: 'RMX1811(?:[);/ ]|$)' @@ -18097,6 +18099,8 @@ Realme: model: 'C53' - regex: 'RMX3231' model: 'C11 (2021)' + - regex: 'RMX3823' + model: 'GT 5' - regex: 'RMX3709' model: 'GT 3' - regex: 'RMX330[01]' @@ -22397,7 +22401,7 @@ QMobile: model: 'i8i' - regex: 'i6 Metal ONE' model: 'i6 Metal One' - - regex: 'i6 Metal (2018)' + - regex: 'i6 Metal (201[78])' model: 'i6 Metal ($1)' - regex: 'Smart HD Pro' model: 'Smart HD Pro' @@ -29196,7 +29200,7 @@ Ryte: # Vontar Vontar: - regex: '(HK1 (?:Max|MINI\+?|PLUS|PRO)|KK MAX|VONTAR[ -](?:Z[58]|[VH]1|KIII|MX-4K|X[234])|H618|R3)(?:[);/ ]|$)' + regex: '(HK1 (?:Max|MINI\+?|PLUS|PRO)|KK MAX|VONTAR[ -](?:Z[58]|[VH]1|KIII|MX-4K|X[234]|R3)|H618)(?:[);/ ]|$)' device: 'tv' models: - regex: 'VONTAR[ -](Z[58]|[VH]1|KIII|MX-4K|X[234]|H618|R3)(?:[);/ ]|$)'