Skip to content

Commit

Permalink
feat(device) detect new brand Biegedy: B22
Browse files Browse the repository at this point in the history
feat(device) detect brand Blackview: Wave 8
feat(device) detect brand Sony: Xperia 1 VI (XQ-EC44)
feat(device) detect brand OPPO: A60 5G (CPH2683)
feat(device) detect brand Chuwi: Hi10 XPro Pad
feat(device) detect brand Motorola: Moto G Play (2023) (XT2271-5), Moto E14
  • Loading branch information
sanchezzzhak committed Nov 19, 2024
1 parent 838f054 commit 8c4ebc4
Show file tree
Hide file tree
Showing 5 changed files with 254 additions and 5 deletions.
1 change: 1 addition & 0 deletions Parser/Device/AbstractDeviceParser.php
Original file line number Diff line number Diff line change
Expand Up @@ -267,6 +267,7 @@ abstract class AbstractDeviceParser extends AbstractParser
'BT' => 'Bitel',
'B7' => 'Bitmore',
'ZB' => 'Bittium',
'BIE' => 'Biegedy',
'BK' => 'Bkav',
'5B' => 'Black Bear',
'BLK' => 'Black Box',
Expand Down
144 changes: 144 additions & 0 deletions Tests/fixtures/smartphone-41.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1169,3 +1169,147 @@
model: Narzo 70 Turbo 5G
os_family: Android
browser_family: Chrome
-
user_agent: Mozilla/5.0 (Linux; Android 14; WAVE 8) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36
os:
name: Android
version: "14"
platform: ""
client:
type: browser
name: Chrome Mobile
version: 130.0.0.0
engine: Blink
engine_version: 130.0.0.0
device:
type: smartphone
brand: Blackview
model: Wave 8
os_family: Android
browser_family: Chrome
-
user_agent: Mozilla/5.0 (Linux; Android 14; XT2271-5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Mobile Safari/537.36
os:
name: Android
version: "14"
platform: ""
client:
type: browser
name: Chrome Mobile
version: 116.0.0.0
engine: Blink
engine_version: 116.0.0.0
device:
type: smartphone
brand: Motorola
model: Moto G Play (2023)
os_family: Android
browser_family: Chrome
-
user_agent: Mozilla/5.0 (Linux; Android 14; moto e14 Build/ULBS34.66-76-1-1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.6668.102 Mobile Safari/537.36
os:
name: Android
version: "14"
platform: ""
client:
type: browser
name: Chrome Mobile
version: 129.0.6668.102
engine: Blink
engine_version: 129.0.6668.102
device:
type: smartphone
brand: Motorola
model: Moto E14
os_family: Android
browser_family: Chrome
-
user_agent: Mozilla/5.0 (Linux; Android 14; XQ-EC44) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Mobile Safari/537.36
os:
name: Android
version: "14"
platform: ""
client:
type: browser
name: Chrome Mobile
version: 127.0.0.0
engine: Blink
engine_version: 127.0.0.0
device:
type: smartphone
brand: Sony
model: Xperia 1 VI
os_family: Android
browser_family: Chrome
-
user_agent: Mozilla/5.0 (Linux; Android 14; CPH2683) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Mobile Safari/537.36
os:
name: Android
version: "14"
platform: ""
client:
type: browser
name: Chrome Mobile
version: 130.0.0.0
engine: Blink
engine_version: 130.0.0.0
device:
type: smartphone
brand: OPPO
model: A60 5G
os_family: Android
browser_family: Chrome
-
user_agent: Mozilla/5.0 (Linux; Android 14; Armor Mini 20T Pro) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Mobile Safari/537.36
os:
name: Android
version: "14"
platform: ""
client:
type: browser
name: Chrome Mobile
version: 126.0.0.0
engine: Blink
engine_version: 126.0.0.0
device:
type: smartphone
brand: Ulefone
model: Armor Mini 20T Pro
os_family: Android
browser_family: Chrome
-
user_agent: Mozilla/5.0 (Linux; Android 13; ZTE V70) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.5845.141 Mobile Safari/537.36 OPR/102.0.4880.46
os:
name: Android
version: "13"
platform: ""
client:
type: browser
name: Opera Mobile
version: 102.0.4880.46
engine: Blink
engine_version: 116.0.5845.141
device:
type: tablet
brand: ZTE
model: V70
os_family: Android
browser_family: Opera
-
user_agent: Mozilla/5.0 (Linux; Android 13; Lenovo Legion Duel) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.5672.24 Mobile Safari/537.36 OPR/100.0.4796.0
os:
name: Android
version: "13"
platform: ""
client:
type: browser
name: Opera Mobile
version: 100.0.4796.0
engine: Blink
engine_version: 113.0.5672.24
device:
type: smartphone
brand: Lenovo
model: Legion Duel
os_family: Android
browser_family: Opera
36 changes: 36 additions & 0 deletions Tests/fixtures/tablet-12.yml
Original file line number Diff line number Diff line change
Expand Up @@ -611,3 +611,39 @@
model: RT8
os_family: Android
browser_family: Unknown
-
user_agent: Mozilla/5.0 (Linux; Android 14; Hi10_XPro_Pad) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
os:
name: Android
version: "14"
platform: ""
client:
type: browser
name: Chrome
version: 130.0.0.0
engine: Blink
engine_version: 130.0.0.0
device:
type: tablet
brand: Chuwi
model: Hi10 XPro Pad
os_family: Android
browser_family: Chrome
-
user_agent: Mozilla/5.0 (Linux; Android 14; B22_EEA) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36
os:
name: Android
version: "14"
platform: ""
client:
type: browser
name: Chrome
version: 126.0.0.0
engine: Blink
engine_version: 126.0.0.0
device:
type: tablet
brand: Biegedy
model: B22
os_family: Android
browser_family: Chrome
54 changes: 54 additions & 0 deletions Tests/fixtures/tv-4.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4611,3 +4611,57 @@
model: TOX3 Plus
os_family: Android
browser_family: Unknown
-
user_agent: Mozilla/5.0 (Linux; Android 13; SL-LED50S02T2SU Build/TP1A.220905.004.A2; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/101.0.4951.61 YaBrowser/23.1.0.39 (lite) Safari/537.36 TV
os:
name: Android
version: "13"
platform: ""
client:
type: browser
name: Yandex Browser Lite
version: 23.1.0.39
engine: Blink
engine_version: 101.0.4951.61
device:
type: tv
brand: Scoole
model: SL-LED50S02T2SU
os_family: Android
browser_family: Unknown
-
user_agent: Mozilla/5.0 (Linux; Android 13; 32LES901T2SM Build/TP1A.220905.004.A2; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/101.0.4951.61 YaBrowser/23.1.0.39 (lite) Safari/537.36 TV
os:
name: Android
version: "13"
platform: ""
client:
type: browser
name: Yandex Browser Lite
version: 23.1.0.39
engine: Blink
engine_version: 101.0.4951.61
device:
type: tv
brand: Erisson
model: 32LES901T2SM
os_family: Android
browser_family: Unknown
-
user_agent: Mozilla/5.0 (Linux; Android 13; 32LES903T2SM Build/TP1A.220905.004.A2; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/101.0.4951.61 YaBrowser/24.1.2.250 (lite) Safari/537.36 TV
os:
name: Android
version: "13"
platform: ""
client:
type: browser
name: Yandex Browser Lite
version: 24.1.2.250
engine: Blink
engine_version: 101.0.4951.61
device:
type: tv
brand: Erisson
model: 32LES903T2SM
os_family: Android
browser_family: Unknown
24 changes: 19 additions & 5 deletions regexes/device/mobiles.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4203,7 +4203,7 @@ Bluegood:

# Blackview
Blackview:
regex: 'Blackview|(BL8[08]00|BV([24-9]000|8[18]00|[468]900|(5[1589]|9[135689])00|6[12368]00|7100)(?:[ _](?:PRO))?|(?<!Titan )P10000(?:[ _](?:PRO))?|omega[ _]pro|Alife[ _][PS]1|N6000|Heatwave|DM550|BV9700Pro|BL9000 Pro|(?<!Lenovo[_ ])A[68]0(?:Pro)?\))|(?:SOLID 4 G2|A[86]0Plus|A80S|BL(?:6000|8800)Pro|R6 Lite|P2Lite|A8 MAX|A30-RU|A20Pro|Android 10(?:[\d.]*);(?: [\w-]+;)? Tab[89]|Android 10(?:[\d.]*);(?: [\w-]+;)? (?:A80)|Android 11(?:[\d.]*);(?: [\w-]+;)? (?:A95|A100|BL5000|Tab 12)|Android 1[12](?:[\d.]*);(?: [\w-]+;)? (?:A[79]0|A70 Pro|A55 Pro|Tab 1[01356]|Tab 6)|Android 13(?:[\d.]*);(?: [\w-]+;)? (?:A200 Pro|Tab [86]0|Tab 18|BL9000)|BV500|BV4800|BV[579]200|SOLID_4G1|BV5300(?: Pro)?|Tab [56]0 Kids|Active 8 Pro|Active 8|SHARK 8|Tab 8E|Tab (?:7|[57]0|8|11) WiFi|COLOR 8|Tab 1[236] Pro|MEGA 1|WAVE 6C|HERO 10|A52 Pro)(?:[);/ ]|$)'
regex: 'Blackview|(BL8[08]00|BV([24-9]000|8[18]00|[468]900|(5[1589]|9[135689])00|6[12368]00|7100)(?:[ _](?:PRO))?|(?<!Titan )P10000(?:[ _](?:PRO))?|omega[ _]pro|Alife[ _][PS]1|N6000|Heatwave|DM550|BV9700Pro|BL9000 Pro|(?<!Lenovo[_ ])A[68]0(?:Pro)?\))|(?:SOLID 4 G2|A[86]0Plus|A80S|BL(?:6000|8800)Pro|R6 Lite|P2Lite|A8 MAX|A30-RU|A20Pro|Android 10(?:[\d.]*);(?: [\w-]+;)? Tab[89]|Android 10(?:[\d.]*);(?: [\w-]+;)? (?:A80)|Android 11(?:[\d.]*);(?: [\w-]+;)? (?:A95|A100|BL5000|Tab 12)|Android 1[12](?:[\d.]*);(?: [\w-]+;)? (?:A[79]0|A70 Pro|A55 Pro|Tab 1[01356]|Tab 6)|Android 13(?:[\d.]*);(?: [\w-]+;)? (?:A200 Pro|Tab [86]0|Tab 18|BL9000)|BV500|BV4800|BV[579]200|SOLID_4G1|BV5300(?: Pro)?|Tab [56]0 Kids|Active 8 Pro|Active 8|SHARK 8|Tab 8E|Tab (?:7|[57]0|8|11) WiFi|COLOR 8|Tab 1[236] Pro|MEGA 1|WAVE 6C|WAVE 8C?|HERO 10|A52 Pro)(?:[);/ ]|$)'
device: 'smartphone'
models:
- regex: 'A([2678]0|5[25]) ?Pro(?:[);/ ]|$)'
Expand Down Expand Up @@ -4234,6 +4234,8 @@ Blackview:
model: 'Shark 8'
- regex: 'WAVE 6C'
model: 'Wave 6C'
- regex: 'WAVE 8'
model: 'Wave 8'
- regex: 'HERO 10'
model: 'Hero 10'
- regex: 'SOLID_4G1'
Expand Down Expand Up @@ -17752,7 +17754,7 @@ Torque:

# motorola
Motorola:
regex: 'MOT(?!TO)|(?<!AN)DROID ?(?:Build|[a-z0-9]+)|portalmmm/2\.0 (?:E378i|L6|L7|v3)|XOOM [^;/]*Build|XT1941-2|XT1924-9|XT1925-10|XT1965-6|XT1970-[25]|XT1799-2|XT1021|XT2171-[23]|XT2013-[124]|XT2015-2|XT2061-3|XT2071-4|XT2201-[126]|XT-2201|XT2113-2|XT2115-1|XT2175-2|XT2141-1|XT2125-4|XT2127-2|XT2129-[123]|XT2143-1|XT2153-1|XT2158-6|XT2215-[124]|XT2221-[12]|XT2225-[12]|XT2233-2|XT2251-1|XT2243-2|XT2241-1|XT2169-1|XT2137-[12]|XT1710-(?:08|10)|XT180[3-5]|XT2315-1|XT2261-1|XT2333-1|XT2335-[23]|XT2131(?:-[134]|DL)|XT2303-2|XT2301-5|XT2307-1|XT2321-[23]|XT2323-3|XT2343-[1236]|XT2363-2| XT2401-2|XT2409-5|XT2453-2|XT194[23]-1|XT1929-15|XT2083-9|XT2081-1|XT2093DL|XT2093-[37]|(?<!Xtreme )(?:XT|MZ|MB|ME)[0-9]{3,4}[a-z]?(?:\(Defy\)|-0[1-5])?(?:[;]? Build|\))|lineage_osprey|ATRIX HD|PAMR00(?:0[28]|10)IN|PANB0001IN|PANB001[35]IN|PANV000[59]IN'
regex: 'MOT(?!TO)|(?<!AN)DROID ?(?:Build|[a-z0-9]+)|portalmmm/2\.0 (?:E378i|L6|L7|v3)|XOOM [^;/]*Build|XT1941-2|XT1924-9|XT1925-10|XT1965-6|XT1970-[25]|XT1799-2|XT1021|XT2171-[23]|XT2013-[124]|XT2015-2|XT2061-3|XT2071-4|XT2201-[126]|XT-2201|XT2113-2|XT2115-1|XT2175-2|XT2141-1|XT2125-4|XT2127-2|XT2129-[123]|XT2143-1|XT2153-1|XT2158-6|XT2215-[124]|XT2221-[12]|XT2225-[12]|XT2233-2|XT2251-1|XT2243-2|XT2241-1|XT2169-1|XT2137-[12]|XT1710-(?:08|10)|XT180[3-5]|XT2315-1|XT2261-1|XT2271-5|XT2333-1|XT2335-[23]|XT2131(?:-[134]|DL)|XT2303-2|XT2301-5|XT2307-1|XT2321-[23]|XT2323-3|XT2343-[1236]|XT2363-2| XT2401-2|XT2409-5|XT2453-2|XT194[23]-1|XT1929-15|XT2083-9|XT2081-1|XT2093DL|XT2093-[37]|(?<!Xtreme )(?:XT|MZ|MB|ME)[0-9]{3,4}[a-z]?(?:\(Defy\)|-0[1-5])?(?:[;]? Build|\))|lineage_osprey|ATRIX HD|PAMR00(?:0[28]|10)IN|PANB0001IN|PANB001[35]IN|PANV000[59]IN'
device: 'smartphone'
models:
# Explicit feature phone models
Expand Down Expand Up @@ -18097,6 +18099,8 @@ Motorola:
model: 'Moto G Stylus'
- regex: 'moto g play \(2021\)|XT2093DL|XT2093-[37]'
model: 'Moto G Play (2021)'
- regex: 'XT2271-5'
model: 'Moto G Play (2023)'
- regex: 'moto g power \(XT2041DL\)'
model: 'Moto G Power'
- regex: 'moto g power \(2021\)'
Expand Down Expand Up @@ -20222,6 +20226,8 @@ OPPO:
model: 'A55'
- regex: 'CPH2631'
model: 'A60'
- regex: 'CPH2683'
model: 'A60 5G'
- regex: '(?:A102OP|CPH2309)(?:[);/ ]|$)'
model: 'A55s 5G'
- regex: 'PFVM10'
Expand Down Expand Up @@ -31516,7 +31522,7 @@ Unihertz:

# Chuwi (www.chuwi.com)
Chuwi:
regex: '(?:CW-(Hi8-super|Hi12|V99i?|V17HD3G|VX8-3G|V88-QUAD|V9-DUAL|V88S|Vi[78]|[HV]i10 (?:pro|plus))|Hi10 (?:Pro|plus)|HiPad[ -](?:X|X?Pro|Air|Max)|HiPadX|HiBox-hero|HiBook(?: pro)?|Hi(?:[89]|10) ?(?:Air|X?Pro)|HiPad ?Plus|Hi8SE|Vi8 plus|Vi10(?: ?Pro)?|Surpad|HiPadPro)(?:[);/ ]|$)'
regex: '(?:CW-(Hi8-super|Hi12|V99i?|V17HD3G|VX8-3G|V88-QUAD|V9-DUAL|V88S|Vi[78]|[HV]i10 (?:pro|plus))|Hi10 (?:Pro|plus)|HiPad[ -](?:X|X?Pro|Air|Max)|HiPadX|HiBox-hero|HiBook(?: pro)?|Hi(?:[89]|10)[ _]?(?:Air|[_ ]?X?Pro(?:_PAD)?)|HiPad ?Plus|Hi8SE|Vi8 plus|Vi10(?: ?Pro)?|Surpad|HiPadPro)(?:[);/ ]|$)'
device: 'tablet'
models:
- regex: '(CW-Hi8-super)(?:[);/ ]|$)'
Expand Down Expand Up @@ -31551,6 +31557,8 @@ Chuwi:
model: 'Hi$1 Air'
- regex: 'Hi8SE(?:[);/ ]|$)'
model: 'Hi8 SE'
- regex: 'Hi10_XPro_Pad'
model: 'Hi10 XPro Pad'
- regex: 'Hi10 ?XPro'
model: 'Hi10 XPro'
- regex: 'Hi([89]) ?pro(?:[);/ ]|$)'
Expand Down Expand Up @@ -37870,7 +37878,7 @@ Bubblegum:

# Erisson
Erisson:
regex: '(24LM8002CT2|42FLEA73T2SM|43FLES90[12]T2SM|42FLX9060T2|32LX9000CT|39LES80T2SM|32LX9051T2|43ULX9060T2|32LX9050T2|55ULES92T2SM|32LEA73T2SM|32LES90[24]T2SM|42FLES904T2SM)(?:[);/ ]|$)'
regex: '(24LM8002CT2|42FLEA73T2SM|43FLES90[12]T2SM|42FLX9060T2|32LX9000CT|39LES80T2SM|32LX9051T2|43ULX9060T2|32LX9050T2|55ULES92T2SM|32LEA73T2SM|32LES90[24]T2SM|42FLES904T2SM|32LES90[13]T2SM)(?:[);/ ]|$)'
device: 'tv'
model: '$1'

Expand Down Expand Up @@ -42412,7 +42420,7 @@ Relndoo:

# Scoole
Scoole:
regex: '(SL-LED24S90T2S|SL-LED32S49T2S|SL-LED43S98T2SU|SL-LED43S94T2S|SL-LED55S01T2SU)(?:[);/ ]|$)'
regex: '(SL-LED24S90T2S|SL-LED32S49T2S|SL-LED43S98T2SU|SL-LED43S94T2S|SL-LED50S02T2SU|SL-LED55S01T2SU)(?:[);/ ]|$)'
device: 'tv'
model: '$1'

Expand Down Expand Up @@ -42715,6 +42723,12 @@ Temigereev:
device: 'tablet'
model: 'TG $1'

# Biegedy
Biegedy:
regex: 'B(2[1239])(?:_U)?_(?:EEA|US)(?:[);/ ]|$)'
device: 'tablet'
model: 'B$1'

# Blackton (https://blackton.tv)
Blackton:
regex: 'Bt[_ -](\d{2}FS\d{2}B)(?:[);/ ]|$)'
Expand Down

0 comments on commit 8c4ebc4

Please sign in to comment.