device_detector 1.0.4 → 1.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +10 -0
  3. data/README.md +8 -7
  4. data/lib/device_detector/browser.rb +364 -0
  5. data/lib/device_detector/client.rb +8 -0
  6. data/lib/device_detector/device.rb +1204 -2
  7. data/lib/device_detector/os.rb +39 -12
  8. data/lib/device_detector/parser.rb +1 -1
  9. data/lib/device_detector/version.rb +1 -1
  10. data/lib/device_detector/version_extractor.rb +28 -0
  11. data/lib/device_detector.rb +57 -13
  12. data/regexes/bots.yml +651 -61
  13. data/regexes/client/browser_engine.yml +7 -1
  14. data/regexes/client/browsers.yml +774 -78
  15. data/regexes/client/feed_readers.yml +4 -10
  16. data/regexes/client/libraries.yml +71 -2
  17. data/regexes/client/mediaplayers.yml +25 -1
  18. data/regexes/client/mobile_apps.yml +923 -73
  19. data/regexes/client/pim.yml +65 -2
  20. data/regexes/device/cameras.yml +5 -5
  21. data/regexes/device/car_browsers.yml +16 -0
  22. data/regexes/device/consoles.yml +13 -1
  23. data/regexes/device/mobiles.yml +17029 -3889
  24. data/regexes/device/notebooks.yml +114 -0
  25. data/regexes/device/portable_media_player.yml +36 -9
  26. data/regexes/device/shell_tv.yml +117 -0
  27. data/regexes/device/televisions.yml +439 -34
  28. data/regexes/oss.yml +620 -284
  29. metadata +9 -131
  30. data/.gitignore +0 -14
  31. data/.rubocop.yml +0 -49
  32. data/.ruby-version +0 -1
  33. data/.travis.yml +0 -14
  34. data/Gemfile +0 -8
  35. data/Rakefile +0 -85
  36. data/device_detector.gemspec +0 -27
  37. data/spec/device_detector/bot_fixtures_spec.rb +0 -30
  38. data/spec/device_detector/client_fixtures_spec.rb +0 -31
  39. data/spec/device_detector/concrete_user_agent_spec.rb +0 -135
  40. data/spec/device_detector/detector_fixtures_spec.rb +0 -100
  41. data/spec/device_detector/device_fixtures_spec.rb +0 -36
  42. data/spec/device_detector/device_spec.rb +0 -131
  43. data/spec/device_detector/memory_cache_spec.rb +0 -148
  44. data/spec/device_detector/model_extractor_spec.rb +0 -63
  45. data/spec/device_detector/os_fixtures_spec.rb +0 -26
  46. data/spec/device_detector/version_extractor_spec.rb +0 -79
  47. data/spec/device_detector_spec.rb +0 -189
  48. data/spec/fixtures/client/browser.yml +0 -2836
  49. data/spec/fixtures/client/feed_reader.yml +0 -199
  50. data/spec/fixtures/client/library.yml +0 -193
  51. data/spec/fixtures/client/mediaplayer.yml +0 -163
  52. data/spec/fixtures/client/mobile_app.yml +0 -217
  53. data/spec/fixtures/client/pim.yml +0 -115
  54. data/spec/fixtures/detector/bots.yml +0 -3726
  55. data/spec/fixtures/detector/camera.yml +0 -141
  56. data/spec/fixtures/detector/car_browser.yml +0 -81
  57. data/spec/fixtures/detector/console.yml +0 -321
  58. data/spec/fixtures/detector/desktop.yml +0 -5461
  59. data/spec/fixtures/detector/feature_phone.yml +0 -891
  60. data/spec/fixtures/detector/feed_reader.yml +0 -551
  61. data/spec/fixtures/detector/mediaplayer.yml +0 -253
  62. data/spec/fixtures/detector/mobile_apps.yml +0 -494
  63. data/spec/fixtures/detector/phablet.yml +0 -4167
  64. data/spec/fixtures/detector/portable_media_player.yml +0 -178
  65. data/spec/fixtures/detector/smart_display.yml +0 -61
  66. data/spec/fixtures/detector/smart_speaker.yml +0 -55
  67. data/spec/fixtures/detector/smartphone-1.yml +0 -9927
  68. data/spec/fixtures/detector/smartphone-10.yml +0 -9977
  69. data/spec/fixtures/detector/smartphone-11.yml +0 -9891
  70. data/spec/fixtures/detector/smartphone-12.yml +0 -9906
  71. data/spec/fixtures/detector/smartphone-13.yml +0 -9920
  72. data/spec/fixtures/detector/smartphone-14.yml +0 -2662
  73. data/spec/fixtures/detector/smartphone-2.yml +0 -9992
  74. data/spec/fixtures/detector/smartphone-3.yml +0 -9945
  75. data/spec/fixtures/detector/smartphone-4.yml +0 -9923
  76. data/spec/fixtures/detector/smartphone-5.yml +0 -9914
  77. data/spec/fixtures/detector/smartphone-6.yml +0 -9962
  78. data/spec/fixtures/detector/smartphone-7.yml +0 -9899
  79. data/spec/fixtures/detector/smartphone-8.yml +0 -9931
  80. data/spec/fixtures/detector/smartphone-9.yml +0 -9899
  81. data/spec/fixtures/detector/smartphone.yml +0 -9984
  82. data/spec/fixtures/detector/tablet-1.yml +0 -9995
  83. data/spec/fixtures/detector/tablet-2.yml +0 -9977
  84. data/spec/fixtures/detector/tablet-3.yml +0 -9959
  85. data/spec/fixtures/detector/tablet-4.yml +0 -4528
  86. data/spec/fixtures/detector/tablet.yml +0 -9971
  87. data/spec/fixtures/detector/tv.yml +0 -4933
  88. data/spec/fixtures/detector/unknown.yml +0 -3236
  89. data/spec/fixtures/detector/wearable.yml +0 -61
  90. data/spec/fixtures/device/camera.yml +0 -19
  91. data/spec/fixtures/device/car_browser.yml +0 -13
  92. data/spec/fixtures/device/console.yml +0 -79
  93. data/spec/fixtures/parser/oss.yml +0 -1082
  94. data/spec/fixtures/parser/vendorfragments.yml +0 -168
  95. data/spec/spec_helper.rb +0 -9
@@ -1,141 +0,0 @@
1
- ---
2
- -
3
- user_agent: Mozilla/5.0 (Linux; U; Android 2.3.3; ja-jp; COOLPIX S800c Build/CP01_WW) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1
4
- os:
5
- name: Android
6
- short_name: AND
7
- version: "2.3.3"
8
- platform: ""
9
- client:
10
- type: browser
11
- name: Android Browser
12
- short_name: AN
13
- version: ""
14
- engine: WebKit
15
- engine_version: "533.1"
16
- device:
17
- type: camera
18
- brand: NN
19
- model: Coolpix S800c
20
- os_family: Android
21
- browser_family: Android Browser
22
- -
23
- user_agent: Mozilla/5.0 (Linux; Android 5.0.2; DMC-CM1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.92 Mobile Safari/537.36
24
- os:
25
- name: Android
26
- short_name: AND
27
- version: "5.0.2"
28
- platform: ""
29
- client:
30
- type: browser
31
- name: Chrome Mobile
32
- short_name: CM
33
- version: "77.0.3865.92"
34
- engine: Blink
35
- engine_version: ""
36
- device:
37
- type: camera
38
- brand: PA
39
- model: Lumix DMC-CM1
40
- os_family: Android
41
- browser_family: Chrome
42
- -
43
- user_agent: Mozilla/5.0 (Linux; U; Android 4.0; de-DE; EK-GC100 Build/IMM76D) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30
44
- os:
45
- name: Android
46
- short_name: AND
47
- version: "4.0"
48
- platform: ""
49
- client:
50
- type: browser
51
- name: Android Browser
52
- short_name: AN
53
- version: ""
54
- engine: WebKit
55
- engine_version: "534.30"
56
- device:
57
- type: camera
58
- brand: SA
59
- model: GALAXY Camera
60
- os_family: Android
61
- browser_family: Android Browser
62
- -
63
- user_agent: Mozilla/5.0 (Linux; Android 4.1.2; EK-GC100 Build/JZO54K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.63 Mobile Safari/537.36 OPR/15.0.1162.60140
64
- os:
65
- name: Android
66
- short_name: AND
67
- version: "4.1.2"
68
- platform: ""
69
- client:
70
- type: browser
71
- name: Opera Mobile
72
- short_name: OM
73
- version: "15.0.1162.60140"
74
- engine: Blink
75
- engine_version: ""
76
- device:
77
- type: camera
78
- brand: SA
79
- model: GALAXY Camera
80
- os_family: Android
81
- browser_family: Opera
82
- -
83
- user_agent: Mozilla/5.0 (Linux; Android 4.3; EK-GC200 Build/JSS15J) AppleWebKit/537.36 (KHTML like Gecko) Chrome/35.0.1916.141 Mobile Safari/537.36
84
- os:
85
- name: Android
86
- short_name: AND
87
- version: "4.3"
88
- platform: ""
89
- client:
90
- type: browser
91
- name: Chrome Mobile
92
- short_name: CM
93
- version: "35.0.1916.141"
94
- engine: Blink
95
- engine_version: ""
96
- device:
97
- type: camera
98
- brand: SA
99
- model: GALAXY Camera 2
100
- os_family: Android
101
- browser_family: Chrome
102
- -
103
- user_agent: Mozilla/5.0 (Linux; Android 4.1.2; EK-GC110 Build/JZO54K) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Mobile Safari/535.19
104
- os:
105
- name: Android
106
- short_name: AND
107
- version: "4.1.2"
108
- platform: ""
109
- client:
110
- type: browser
111
- name: Chrome Mobile
112
- short_name: CM
113
- version: "18.0.1025.166"
114
- engine: WebKit
115
- engine_version: "535.19"
116
- device:
117
- type: camera
118
- brand: SA
119
- model: GALAXY Camera WiFi only
120
- os_family: Android
121
- browser_family: Chrome
122
- -
123
- user_agent: Mozilla/5.0 (Linux; Android 4.2.2; en-nz; SAMSUNG EK-GN120 Build/JDQ39) AppleWebKit/535.19 (KHTML, like Gecko) Version/1.0 Chrome/18.0.1025.308 Mobile Safari/535.19
124
- os:
125
- name: Android
126
- short_name: AND
127
- version: "4.2.2"
128
- platform: ""
129
- client:
130
- type: browser
131
- name: Chrome Webview
132
- short_name: CV
133
- version: "18.0.1025.308"
134
- engine: WebKit
135
- engine_version: "535.19"
136
- device:
137
- type: camera
138
- brand: SA
139
- model: GALAXY NX
140
- os_family: Android
141
- browser_family: Chrome
@@ -1,81 +0,0 @@
1
- ---
2
- -
3
- user_agent: Mozilla/5.0 (Linux; Android 4.4.2; CarPad-II-P Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/30.0.0.0 Safari/537.36
4
- os:
5
- name: Android
6
- short_name: AND
7
- version: "4.4.2"
8
- platform: ""
9
- client:
10
- type: browser
11
- name: Chrome Webview
12
- short_name: CV
13
- version: "30.0.0.0"
14
- engine: Blink
15
- engine_version: ""
16
- device:
17
- type: car browser
18
- brand: NS
19
- model: CarPad-II-P
20
- os_family: Android
21
- browser_family: Chrome
22
- -
23
- user_agent: Mozilla/5.0 (Linux; Android 4.4.2; CarPad-III-P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.116 Safari/537.36
24
- os:
25
- name: Android
26
- short_name: AND
27
- version: "4.4.2"
28
- platform: ""
29
- client:
30
- type: browser
31
- name: Chrome
32
- short_name: CH
33
- version: "77.0.3865.116"
34
- engine: Blink
35
- engine_version: ""
36
- device:
37
- type: car browser
38
- brand: NS
39
- model: CarPad-III-P
40
- os_family: Android
41
- browser_family: Chrome
42
- -
43
- user_agent: Mozilla/5.0 (X11; GNU/Linux) AppleWebKit/537.36 (KHTML, like Gecko) Chromium/75.0.3770.100 Chrome/75.0.3770.100 Safari/537.36 Tesla/2019.40.50.7-ad132c7b057e
44
- os:
45
- name: GNU/Linux
46
- short_name: LIN
47
- version: ""
48
- platform: ""
49
- client:
50
- type: browser
51
- name: Chromium
52
- short_name: CR
53
- version: "75.0.3770.100"
54
- engine: Blink
55
- engine_version: ""
56
- device:
57
- type: car browser
58
- brand: TA
59
- model: ""
60
- os_family: GNU/Linux
61
- browser_family: Chrome
62
- -
63
- user_agent: Mozilla/5.0 (X11; u; Linux; C) AppleWebKit /533.3 (Khtml, like Gheko) QtCarBrowser Safari/533.3
64
- os:
65
- name: GNU/Linux
66
- short_name: LIN
67
- version: ""
68
- platform: ""
69
- client:
70
- type: browser
71
- name: Safari
72
- short_name: SF
73
- version: ""
74
- engine: WebKit
75
- engine_version: "533.3"
76
- device:
77
- type: car browser
78
- brand: TA
79
- model: Model S
80
- os_family: GNU/Linux
81
- browser_family: Safari
@@ -1,321 +0,0 @@
1
- ---
2
- -
3
- user_agent: Mozilla/5.0 (Linux; Android 4.1.1; ARCHOS GAMEPAD Build/JRO03H) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Safari/535.19
4
- os:
5
- name: Android
6
- short_name: AND
7
- version: "4.1.1"
8
- platform: ""
9
- client:
10
- type: browser
11
- name: Chrome
12
- short_name: CH
13
- version: "18.0.1025.166"
14
- engine: WebKit
15
- engine_version: "535.19"
16
- device:
17
- type: console
18
- brand: AR
19
- model: Gamepad
20
- os_family: Android
21
- browser_family: Chrome
22
- -
23
- user_agent: Mozilla/5.0 (Linux; U; Android 4.2.2; fr-fr; ARCHOS GAMEPAD2 Build/JDQ39) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Safari/534.30
24
- os:
25
- name: Android
26
- short_name: AND
27
- version: "4.2.2"
28
- platform: ""
29
- client:
30
- type: browser
31
- name: Android Browser
32
- short_name: AN
33
- version: ""
34
- engine: WebKit
35
- engine_version: "534.30"
36
- device:
37
- type: console
38
- brand: AR
39
- model: Gamepad 2
40
- os_family: Android
41
- browser_family: Android Browser
42
- -
43
- user_agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; Xbox)
44
- os:
45
- name: Windows
46
- short_name: WIN
47
- version: "7"
48
- platform: ""
49
- client:
50
- type: browser
51
- name: Internet Explorer
52
- short_name: IE
53
- version: "9.0"
54
- engine: Trident
55
- engine_version: "5.0"
56
- device:
57
- type: console
58
- brand: MS
59
- model: Xbox 360
60
- os_family: Windows
61
- browser_family: Internet Explorer
62
- -
63
- user_agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0; Xbox; Xbox One)
64
- os:
65
- name: Windows
66
- short_name: WIN
67
- version: "8"
68
- platform: ""
69
- client:
70
- type: browser
71
- name: Internet Explorer
72
- short_name: IE
73
- version: "10.0"
74
- engine: Trident
75
- engine_version: "6.0"
76
- device:
77
- type: console
78
- brand: MS
79
- model: Xbox One
80
- os_family: Windows
81
- browser_family: Internet Explorer
82
- -
83
- user_agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows Phone 8.0; Trident/6.0; IEMobile/10.0; Xbox; Xbox One)
84
- os:
85
- name: Windows Phone
86
- short_name: WPH
87
- version: "8.0"
88
- platform: ""
89
- client:
90
- type: browser
91
- name: IE Mobile
92
- short_name: IM
93
- version: "10.0"
94
- engine: Trident
95
- engine_version: "6.0"
96
- device:
97
- type: console
98
- brand: MS
99
- model: Xbox One
100
- os_family: Windows Mobile
101
- browser_family: Internet Explorer
102
- -
103
- user_agent: Mozilla/5.0 (Nintendo 3DS; U; ; en) Version/1.7498.EU
104
- os:
105
- name: Nintendo Mobile
106
- short_name: NDS
107
- version: "3DS"
108
- platform: ""
109
- client:
110
- type: browser
111
- name: NetFront
112
- short_name: NF
113
- version: ""
114
- engine: ""
115
- engine_version: ""
116
- device:
117
- type: console
118
- brand: NI
119
- model: 3DS
120
- os_family: Mobile Gaming Console
121
- browser_family: NetFront
122
- -
123
- user_agent: Bunjalloo/0.7.6(Nintendo DS;U;en)
124
- os:
125
- name: Nintendo Mobile
126
- short_name: NDS
127
- version: "DS"
128
- platform: ""
129
- client:
130
- type: browser
131
- name: Bunjalloo
132
- short_name: BJ
133
- version: "0.7.6"
134
- engine: ""
135
- engine_version: ""
136
- device:
137
- type: console
138
- brand: NI
139
- model: DS
140
- os_family: Mobile Gaming Console
141
- browser_family: Unknown
142
- -
143
- user_agent: Mozilla/5.0 (Nintendo Switch; WifiWebAuthApplet) AppleWebKit/601.6 (KHTML, like Gecko) NF/4.0.0.7.9 NintendoBrowser/5.1.0.15785
144
- os:
145
- name: Nintendo
146
- short_name: WII
147
- version: "Switch"
148
- platform: ""
149
- client:
150
- type: browser
151
- name: NetFront
152
- short_name: NF
153
- version: ""
154
- engine: WebKit
155
- engine_version: "601.6"
156
- device:
157
- type: console
158
- brand: NI
159
- model: Switch
160
- os_family: Gaming Console
161
- browser_family: NetFront
162
- -
163
- user_agent: Opera/9.30 (Nintendo Wii; U; ; 3642; en)
164
- os:
165
- name: Nintendo
166
- short_name: WII
167
- version: "Wii"
168
- platform: ""
169
- client:
170
- type: browser
171
- name: Opera
172
- short_name: OP
173
- version: "9.30"
174
- engine: Presto
175
- engine_version: ""
176
- device:
177
- type: console
178
- brand: NI
179
- model: Wii
180
- os_family: Gaming Console
181
- browser_family: Opera
182
- -
183
- user_agent: Mozilla/5.0 (Nintendo WiiU) AppleWebKit/534.52 (KHTML, like Gecko) NX/2.1.0.8.21 NintendoBrowser/1.0.0.7494.US
184
- os:
185
- name: Nintendo
186
- short_name: WII
187
- version: "Wii"
188
- platform: ""
189
- client:
190
- type: browser
191
- name: NetFront
192
- short_name: NF
193
- version: ""
194
- engine: WebKit
195
- engine_version: "534.52"
196
- device:
197
- type: console
198
- brand: NI
199
- model: WiiU
200
- os_family: Gaming Console
201
- browser_family: NetFront
202
- -
203
- user_agent: Mozilla/5.0 (Linux; U; Android OUYA 4.1.2; en-us; OUYA Build/JZO54L-OUYA) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Safari/534.30
204
- os:
205
- name: Android
206
- short_name: AND
207
- version: "4.1.2"
208
- platform: ""
209
- client:
210
- type: browser
211
- name: Android Browser
212
- short_name: AN
213
- version: ""
214
- engine: WebKit
215
- engine_version: "534.30"
216
- device:
217
- type: console
218
- brand: OU
219
- model: OUYA
220
- os_family: Android
221
- browser_family: Android Browser
222
- -
223
- user_agent: Mozilla/5.0 (PLAYSTATION 3 4.46) AppleWebKit/531.22.8 (KHTML, like Gecko)
224
- os:
225
- name: PlayStation
226
- short_name: PS3
227
- version: "3"
228
- platform: ""
229
- client:
230
- type: browser
231
- name: NetFront
232
- short_name: NF
233
- version: ""
234
- engine: WebKit
235
- engine_version: "531.22.8"
236
- device:
237
- type: console
238
- brand: SO
239
- model: PlayStation 3
240
- os_family: Gaming Console
241
- browser_family: NetFront
242
- -
243
- user_agent: Mozilla/5.0 (PlayStation 4 1.52) AppleWebKit/536.26 (KHTML, like Gecko)
244
- os:
245
- name: PlayStation
246
- short_name: PS3
247
- version: "4"
248
- platform: ""
249
- client:
250
- type: browser
251
- name: NetFront
252
- short_name: NF
253
- version: ""
254
- engine: WebKit
255
- engine_version: "536.26"
256
- device:
257
- type: console
258
- brand: SO
259
- model: PlayStation 4
260
- os_family: Gaming Console
261
- browser_family: NetFront
262
- -
263
- user_agent: Mozilla/5.0 (PlayStation 4 Pro 5.0)
264
- os:
265
- name: PlayStation
266
- short_name: PS3
267
- version: "4"
268
- platform: ""
269
- client:
270
- type: browser
271
- name: NetFront
272
- short_name: NF
273
- version: ""
274
- engine: ""
275
- engine_version: ""
276
- device:
277
- type: console
278
- brand: SO
279
- model: PlayStation 4 Pro
280
- os_family: Gaming Console
281
- browser_family: NetFront
282
- -
283
- user_agent: Mozilla/4.0 (PlayStation Portable); 2.00)
284
- os:
285
- name: PlayStation Portable
286
- short_name: PSP
287
- version: "Portable"
288
- platform: ""
289
- client:
290
- type: browser
291
- name: NetFront
292
- short_name: NF
293
- version: ""
294
- engine: ""
295
- engine_version: ""
296
- device:
297
- type: console
298
- brand: SO
299
- model: PlayStation Portable
300
- os_family: Mobile Gaming Console
301
- browser_family: NetFront
302
- -
303
- user_agent: Mozilla/5.0 (PlayStation Vita 3.01) AppleWebKit/536.26 (KHTML, like Gecko) Silk/3.2
304
- os:
305
- name: PlayStation Portable
306
- short_name: PSP
307
- version: "Vita"
308
- platform: ""
309
- client:
310
- type: browser
311
- name: Mobile Silk
312
- short_name: MS
313
- version: "3.2"
314
- engine: WebKit
315
- engine_version: "536.26"
316
- device:
317
- type: console
318
- brand: SO
319
- model: PlayStation Vita
320
- os_family: Mobile Gaming Console
321
- browser_family: Chrome