device_detector 1.0.1 → 1.0.5

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 +5 -5
  2. data/.rubocop.yml +49 -0
  3. data/.ruby-version +1 -0
  4. data/.travis.yml +5 -10
  5. data/CHANGELOG.md +14 -1
  6. data/README.md +6 -6
  7. data/Rakefile +20 -13
  8. data/device_detector.gemspec +1 -0
  9. data/lib/device_detector.rb +30 -26
  10. data/lib/device_detector/bot.rb +2 -2
  11. data/lib/device_detector/client.rb +3 -2
  12. data/lib/device_detector/device.rb +46 -20
  13. data/lib/device_detector/memory_cache.rb +26 -19
  14. data/lib/device_detector/metadata_extractor.rb +7 -8
  15. data/lib/device_detector/model_extractor.rb +3 -3
  16. data/lib/device_detector/name_extractor.rb +2 -2
  17. data/lib/device_detector/os.rb +121 -111
  18. data/lib/device_detector/parser.rb +22 -9
  19. data/lib/device_detector/version.rb +3 -1
  20. data/lib/device_detector/version_extractor.rb +2 -3
  21. data/regexes/bots.yml +442 -19
  22. data/regexes/client/browser_engine.yml +7 -1
  23. data/regexes/client/browsers.yml +773 -103
  24. data/regexes/client/feed_readers.yml +14 -8
  25. data/regexes/client/libraries.yml +43 -2
  26. data/regexes/client/mediaplayers.yml +21 -5
  27. data/regexes/client/mobile_apps.yml +131 -1
  28. data/regexes/client/pim.yml +6 -1
  29. data/regexes/device/cameras.yml +1 -1
  30. data/regexes/device/car_browsers.yml +7 -3
  31. data/regexes/device/consoles.yml +3 -3
  32. data/regexes/device/mobiles.yml +11365 -791
  33. data/regexes/device/notebooks.yml +114 -0
  34. data/regexes/device/portable_media_player.yml +2 -2
  35. data/regexes/device/televisions.yml +17 -3
  36. data/regexes/oss.yml +115 -47
  37. data/regexes/vendorfragments.yml +6 -2
  38. data/spec/device_detector/concrete_user_agent_spec.rb +16 -17
  39. data/spec/device_detector/detector_fixtures_spec.rb +30 -35
  40. data/spec/device_detector/device_spec.rb +28 -48
  41. data/spec/device_detector/memory_cache_spec.rb +60 -28
  42. data/spec/device_detector/model_extractor_spec.rb +3 -3
  43. data/spec/device_detector/version_extractor_spec.rb +5 -6
  44. data/spec/device_detector_spec.rb +49 -78
  45. data/spec/fixtures/client/browser.yml +1521 -406
  46. data/spec/fixtures/client/feed_reader.yml +39 -51
  47. data/spec/fixtures/client/library.yml +72 -11
  48. data/spec/fixtures/client/mediaplayer.yml +29 -40
  49. data/spec/fixtures/client/mobile_app.yml +172 -32
  50. data/spec/fixtures/client/pim.yml +32 -19
  51. data/spec/fixtures/detector/bots.yml +854 -19
  52. data/spec/fixtures/detector/camera.yml +22 -2
  53. data/spec/fixtures/detector/car_browser.yml +60 -0
  54. data/spec/fixtures/detector/console.yml +43 -3
  55. data/spec/fixtures/detector/desktop.yml +2860 -1527
  56. data/spec/fixtures/detector/feature_phone.yml +69 -1
  57. data/spec/fixtures/detector/feed_reader.yml +158 -130
  58. data/spec/fixtures/detector/mediaplayer.yml +113 -39
  59. data/spec/fixtures/detector/mobile_apps.yml +262 -89
  60. data/spec/fixtures/detector/phablet.yml +3444 -663
  61. data/spec/fixtures/detector/portable_media_player.yml +57 -0
  62. data/spec/fixtures/detector/smart_speaker.yml +55 -0
  63. data/spec/fixtures/detector/smartphone-1.yml +4739 -4765
  64. data/spec/fixtures/detector/smartphone-10.yml +9973 -0
  65. data/spec/fixtures/detector/smartphone-11.yml +10015 -0
  66. data/spec/fixtures/detector/smartphone-12.yml +9897 -0
  67. data/spec/fixtures/detector/smartphone-13.yml +9912 -0
  68. data/spec/fixtures/detector/smartphone-14.yml +9935 -0
  69. data/spec/fixtures/detector/smartphone-15.yml +6595 -0
  70. data/spec/fixtures/detector/smartphone-16.yml +10021 -0
  71. data/spec/fixtures/detector/smartphone-17.yml +9408 -0
  72. data/spec/fixtures/detector/smartphone-2.yml +4265 -4238
  73. data/spec/fixtures/detector/smartphone-3.yml +4487 -4391
  74. data/spec/fixtures/detector/smartphone-4.yml +4210 -4179
  75. data/spec/fixtures/detector/smartphone-5.yml +5794 -2901
  76. data/spec/fixtures/detector/smartphone-6.yml +10114 -0
  77. data/spec/fixtures/detector/smartphone-7.yml +9975 -0
  78. data/spec/fixtures/detector/smartphone-8.yml +9897 -0
  79. data/spec/fixtures/detector/smartphone-9.yml +9880 -0
  80. data/spec/fixtures/detector/smartphone.yml +4152 -4048
  81. data/spec/fixtures/detector/tablet-1.yml +3997 -3991
  82. data/spec/fixtures/detector/tablet-2.yml +6820 -1935
  83. data/spec/fixtures/detector/tablet-3.yml +9968 -0
  84. data/spec/fixtures/detector/tablet-4.yml +7113 -0
  85. data/spec/fixtures/detector/tablet.yml +3789 -3804
  86. data/spec/fixtures/detector/tv.yml +3889 -1495
  87. data/spec/fixtures/detector/unknown.yml +45 -179
  88. data/spec/fixtures/detector/wearable.yml +61 -0
  89. data/spec/fixtures/device/camera.yml +4 -3
  90. data/spec/fixtures/device/car_browser.yml +9 -2
  91. data/spec/fixtures/device/console.yml +15 -14
  92. data/spec/fixtures/device/notebook.yml +7 -0
  93. data/spec/fixtures/parser/oss.yml +177 -0
  94. data/spec/fixtures/parser/vendorfragments.yml +6 -0
  95. metadata +57 -7
@@ -96,7 +96,7 @@
96
96
  device:
97
97
  type: feature phone
98
98
  brand: GI
99
- model: 50
99
+ model: "50"
100
100
  os_family: Unknown
101
101
  browser_family: Unknown
102
102
  -
@@ -227,6 +227,38 @@
227
227
  model: Coast
228
228
  os_family: Brew
229
229
  browser_family: NetFront
230
+ -
231
+ user_agent: lephone K10/Dorado WAP-Browser/1.0.0
232
+ os: [ ]
233
+ client:
234
+ type: browser
235
+ name: Dorado
236
+ short_name: DO
237
+ version: "1.0.0"
238
+ engine: ""
239
+ engine_version: ""
240
+ device:
241
+ type: feature phone
242
+ brand: L7
243
+ model: K10
244
+ os_family: Unknown
245
+ browser_family: Nokia Browser
246
+ -
247
+ user_agent: lephone K7/Dorado WAP-Browser/1.0.0
248
+ os: [ ]
249
+ client:
250
+ type: browser
251
+ name: Dorado
252
+ short_name: DO
253
+ version: "1.0.0"
254
+ engine: ""
255
+ engine_version: ""
256
+ device:
257
+ type: feature phone
258
+ brand: L7
259
+ model: K7
260
+ os_family: Unknown
261
+ browser_family: Nokia Browser
230
262
  -
231
263
  user_agent: MOT-V360v/08.B7.58R MIB/2.2.1 Profile/MIDP-2.0 Configuration/CLDC-1.1
232
264
  os: [ ]
@@ -257,6 +289,26 @@
257
289
  model: Kin Two
258
290
  os_family: Windows Mobile
259
291
  browser_family: Internet Explorer
292
+ -
293
+ user_agent: 'Mozilla/5.0 (Sonim-XP3400/E343B_2100B00_N1900;U;REX/1.0;BREW/3.1.5;240*320;CTC/2.0) POLARIS/6.2'
294
+ os:
295
+ name: Brew
296
+ short_name: BMP
297
+ version: "3.1.5"
298
+ platform: ""
299
+ client:
300
+ type: browser
301
+ name: Polaris
302
+ short_name: PO
303
+ version: "6.2"
304
+ engine: ""
305
+ engine_version: ""
306
+ device:
307
+ type: feature phone
308
+ brand: OI
309
+ model: XP3400
310
+ os_family: Brew
311
+ browser_family: Unknown
260
312
  -
261
313
  user_agent: Mozilla/4.0 (jig browser 7.3.7; P902i)
262
314
  os: [ ]
@@ -805,6 +857,22 @@
805
857
  model: XV6175
806
858
  os_family: Windows Mobile
807
859
  browser_family: Internet Explorer
860
+ -
861
+ user_agent: VK-VK700 UP.Browser/6.2.3.4 (GUI) MMP/2.0
862
+ os: [ ]
863
+ client:
864
+ type: browser
865
+ name: Openwave Mobile Browser
866
+ short_name: OV
867
+ version: "6.2.3.4"
868
+ engine: ""
869
+ engine_version: ""
870
+ device:
871
+ type: feature phone
872
+ brand: VK
873
+ model: VK700
874
+ os_family: Unknown
875
+ browser_family: Unknown
808
876
  -
809
877
  user_agent: vk-vk900/1.1 up.browser/6.2.3.4 (gui) mmp/2.0
810
878
  os: [ ]
@@ -1,9 +1,10 @@
1
- -
1
+ ---
2
+ -
2
3
  user_agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.21 (KHTML, like Gecko) akregator/4.11.5 Safari/537.21
3
4
  os:
4
5
  name: GNU/Linux
5
6
  short_name: LIN
6
- version:
7
+ version: ""
7
8
  platform: x64
8
9
  client:
9
10
  type: feed reader
@@ -11,28 +12,28 @@
11
12
  version: "4.11.5"
12
13
  device:
13
14
  type: desktop
14
- brand:
15
- model:
15
+ brand: ""
16
+ model: ""
16
17
  os_family: GNU/Linux
17
18
  browser_family: Unknown
18
- -
19
+ -
19
20
  user_agent: Akregator/4.12.3; syndication SUSE
20
21
  os:
21
22
  name: SUSE
22
23
  short_name: SSE
23
- version:
24
- platform:
24
+ version: ""
25
+ platform: ""
25
26
  client:
26
27
  type: feed reader
27
28
  name: Akregator
28
29
  version: "4.12.3"
29
30
  device:
30
31
  type: desktop
31
- brand:
32
- model:
32
+ brand: ""
33
+ model: ""
33
34
  os_family: GNU/Linux
34
35
  browser_family: Unknown
35
- -
36
+ -
36
37
  user_agent: Akregator/1.2.9; librss/remnants
37
38
  os: [ ]
38
39
  client:
@@ -40,12 +41,12 @@
40
41
  name: Akregator
41
42
  version: "1.2.9"
42
43
  device:
43
- type:
44
- brand:
45
- model:
44
+ type: ""
45
+ brand: ""
46
+ model: ""
46
47
  os_family: Unknown
47
48
  browser_family: Unknown
48
- -
49
+ -
49
50
  user_agent: Apple-PubSub/65.28
50
51
  os: [ ]
51
52
  client:
@@ -53,86 +54,86 @@
53
54
  name: Apple PubSub
54
55
  version: "65.28"
55
56
  device:
56
- type:
57
- brand:
58
- model:
57
+ type: ""
58
+ brand: ""
59
+ model: ""
59
60
  os_family: Unknown
60
61
  browser_family: Unknown
61
- -
62
+ -
62
63
  user_agent: FeedDemon/4.5 (http://www.feeddemon.com/; Microsoft Windows)
63
64
  os:
64
65
  name: Windows
65
66
  short_name: WIN
66
- version:
67
- platform:
67
+ version: ""
68
+ platform: ""
68
69
  client:
69
70
  type: feed reader
70
71
  name: FeedDemon
71
72
  version: "4.5"
72
73
  device:
73
74
  type: desktop
74
- brand:
75
- model:
75
+ brand: ""
76
+ model: ""
76
77
  os_family: Windows
77
78
  browser_family: Unknown
78
- -
79
+ -
79
80
  user_agent: FeedDemon/4.5 (http://www.feeddemon.com/; Microsoft Windows XP)
80
81
  os:
81
82
  name: Windows
82
83
  short_name: WIN
83
84
  version: "XP"
84
- platform:
85
+ platform: ""
85
86
  client:
86
87
  type: feed reader
87
88
  name: FeedDemon
88
89
  version: "4.5"
89
90
  device:
90
91
  type: desktop
91
- brand:
92
- model:
92
+ brand: ""
93
+ model: ""
93
94
  os_family: Windows
94
95
  browser_family: Unknown
95
- -
96
+ -
96
97
  user_agent: FeeddlerPro/2.4 CFNetwork/672.0.8 Darwin/14.0.0
97
98
  os:
98
99
  name: iOS
99
100
  short_name: IOS
100
101
  version: "7.0"
101
- platform:
102
+ platform: ""
102
103
  client:
103
104
  type: feed reader
104
105
  name: Feeddler RSS Reader
105
106
  version: "2.4"
106
107
  device:
107
- type:
108
+ type: ""
108
109
  brand: AP
109
- model:
110
+ model: ""
110
111
  os_family: iOS
111
112
  browser_family: Unknown
112
- -
113
+ -
113
114
  user_agent: FeeddlerRSS/2.4 CFNetwork/548.1.4 Darwin/11.0.0
114
115
  os:
115
116
  name: iOS
116
117
  short_name: IOS
117
118
  version: "5.1"
118
- platform:
119
+ platform: ""
119
120
  client:
120
121
  type: feed reader
121
122
  name: Feeddler RSS Reader
122
123
  version: "2.4"
123
124
  device:
124
- type:
125
+ type: ""
125
126
  brand: AP
126
- model:
127
+ model: ""
127
128
  os_family: iOS
128
129
  browser_family: Unknown
129
- -
130
+ -
130
131
  user_agent: FeeddlerRSS 2.4 (iPad; iPhone OS 5.1.1; en_US)
131
132
  os:
132
133
  name: iOS
133
134
  short_name: IOS
134
135
  version: "5.1.1"
135
- platform:
136
+ platform: ""
136
137
  client:
137
138
  type: feed reader
138
139
  name: Feeddler RSS Reader
@@ -144,6 +145,23 @@
144
145
  os_family: iOS
145
146
  browser_family: Unknown
146
147
  -
148
+ user_agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/602.1 (KHTML, like Gecko) QuiteRSS/0.18.12 Safari/602.1
149
+ os:
150
+ name: Windows
151
+ short_name: WIN
152
+ version: "7"
153
+ platform: ""
154
+ client:
155
+ type: feed reader
156
+ name: QuiteRSS
157
+ version: "0.18.12"
158
+ device:
159
+ type: "desktop"
160
+ brand: ""
161
+ model: ""
162
+ os_family: Windows
163
+ browser_family: Unknown
164
+ -
147
165
  user_agent: JetBrains Omea Reader 2.2 (http://www.jetbrains.com/omea/reader/)
148
166
  os: [ ]
149
167
  client:
@@ -151,139 +169,150 @@
151
169
  name: JetBrains Omea Reader
152
170
  version: "2.2"
153
171
  device:
154
- type:
155
- brand:
156
- model:
172
+ type: ""
173
+ brand: ""
174
+ model: ""
157
175
  os_family: Unknown
158
176
  browser_family: Unknown
159
- -
177
+ -
160
178
  user_agent: Liferea/1.6.4 (Linux; en_US.UTF-8; http://liferea.sf.net/)
161
179
  os:
162
180
  name: GNU/Linux
163
181
  short_name: LIN
164
- version:
165
- platform:
182
+ version: ""
183
+ platform: ""
166
184
  client:
167
185
  type: feed reader
168
186
  name: Liferea
169
187
  version: "1.6.4"
170
188
  device:
171
189
  type: desktop
172
- brand:
173
- model:
190
+ brand: ""
191
+ model: ""
174
192
  os_family: GNU/Linux
175
193
  browser_family: Unknown
176
- -
194
+ -
177
195
  user_agent: Liferea/1.10-RC1 (Linux; en_GB.UTF-8; http://liferea.sf.net/)
178
196
  os:
179
197
  name: GNU/Linux
180
198
  short_name: LIN
181
- version:
182
- platform:
199
+ version: ""
200
+ platform: ""
183
201
  client:
184
202
  type: feed reader
185
203
  name: Liferea
186
204
  version: "1.10"
187
205
  device:
188
206
  type: desktop
189
- brand:
190
- model:
207
+ brand: ""
208
+ model: ""
191
209
  os_family: GNU/Linux
192
210
  browser_family: Unknown
193
- -
211
+ -
194
212
  user_agent: Liferea/1.10.6 (Linux; en_US.UTF8; http://liferea.sf.net/) AppleWebKit (KHTML, like Gecko)
195
213
  os:
196
214
  name: GNU/Linux
197
215
  short_name: LIN
198
- version:
199
- platform:
216
+ version: ""
217
+ platform: ""
200
218
  client:
201
219
  type: feed reader
202
220
  name: Liferea
203
221
  version: "1.10.6"
204
222
  device:
205
223
  type: desktop
206
- brand:
207
- model:
224
+ brand: ""
225
+ model: ""
208
226
  os_family: GNU/Linux
209
227
  browser_family: Unknown
210
- -
228
+ -
211
229
  user_agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.74.9 (KHTML, like Gecko) Version/6.0 NetNewsWire/4.0.0
212
230
  os:
213
231
  name: Mac
214
232
  short_name: MAC
215
233
  version: "10.9.2"
216
- platform:
234
+ platform: ""
217
235
  client:
218
236
  type: feed reader
219
237
  name: NetNewsWire
220
238
  version: "4.0.0"
221
239
  device:
222
240
  type: desktop
223
- brand:
224
- model:
241
+ brand: AP
242
+ model: ""
225
243
  os_family: Mac
226
244
  browser_family: Unknown
227
- -
245
+ -
228
246
  user_agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.74.9 (KHTML, like Gecko) NetNewsWire/3.3.2
229
247
  os:
230
248
  name: Mac
231
249
  short_name: MAC
232
250
  version: "10.9.2"
233
- platform:
251
+ platform: ""
234
252
  client:
235
253
  type: feed reader
236
254
  name: NetNewsWire
237
255
  version: "3.3.2"
238
256
  device:
239
257
  type: desktop
240
- brand:
241
- model:
258
+ brand: AP
259
+ model: ""
242
260
  os_family: Mac
243
261
  browser_family: Unknown
244
- -
262
+ -
263
+ user_agent: Breaker/v315 (subscribers=9999; feed-id=123456; url=https://www.breaker.audio/url-slug-to-podcast)
264
+ os: [ ]
265
+ client:
266
+ type: feed reader
267
+ name: Breaker
268
+ version: "315"
269
+ device:
270
+ type: ""
271
+ brand: ""
272
+ model: ""
273
+ os_family: Unknown
274
+ browser_family: Unknown
275
+ -
245
276
  user_agent: NetNewsWire/4.0.0 (Mac OS X; http://netnewswireapp.com/mac/; gzip-happy)
246
277
  os:
247
278
  name: Mac
248
279
  short_name: MAC
249
- version:
250
- platform:
280
+ version: ""
281
+ platform: ""
251
282
  client:
252
283
  type: feed reader
253
284
  name: NetNewsWire
254
285
  version: "4.0.0"
255
286
  device:
256
287
  type: desktop
257
- brand:
258
- model:
288
+ brand: AP
289
+ model: ""
259
290
  os_family: Mac
260
291
  browser_family: Unknown
261
-
262
- -
292
+ -
263
293
  user_agent: Downcast/2.9.11 (Mac OS X Version 10.11.3 (Build 15D21))
264
294
  os:
265
295
  name: Mac
266
296
  short_name: MAC
267
297
  version: "10.11.3"
268
- platform:
298
+ platform: ""
269
299
  client:
270
300
  type: feed reader
271
301
  name: Downcast
272
302
  version: "2.9.11"
273
303
  device:
274
304
  type: desktop
275
- brand:
276
- model:
305
+ brand: AP
306
+ model: ""
277
307
  os_family: Mac
278
308
  browser_family: Unknown
279
-
280
- -
309
+ -
281
310
  user_agent: Downcast/2.9.11 (iPhone; iOS 9.2; Scale/2.00)
282
311
  os:
283
312
  name: iOS
284
313
  short_name: IOS
285
314
  version: "9.2"
286
- platform:
315
+ platform: ""
287
316
  client:
288
317
  type: feed reader
289
318
  name: Downcast
@@ -294,13 +323,12 @@
294
323
  model: iPhone
295
324
  os_family: iOS
296
325
  browser_family: Unknown
297
-
298
- -
326
+ -
299
327
  user_agent: newsbeuter/2.7 (Linux x86_64)
300
328
  os:
301
329
  name: GNU/Linux
302
330
  short_name: LIN
303
- version:
331
+ version: ""
304
332
  platform: x64
305
333
  client:
306
334
  type: feed reader
@@ -308,17 +336,17 @@
308
336
  version: "2.7"
309
337
  device:
310
338
  type: desktop
311
- brand:
312
- model:
339
+ brand: ""
340
+ model: ""
313
341
  os_family: GNU/Linux
314
342
  browser_family: Unknown
315
- -
343
+ -
316
344
  user_agent: NewsBlur iPhone App v3.6
317
345
  os:
318
346
  name: iOS
319
347
  short_name: IOS
320
- version:
321
- platform:
348
+ version: ""
349
+ platform: ""
322
350
  client:
323
351
  type: feed reader
324
352
  name: NewsBlur Mobile App
@@ -329,13 +357,13 @@
329
357
  model: iPhone
330
358
  os_family: iOS
331
359
  browser_family: Unknown
332
- -
360
+ -
333
361
  user_agent: NewsBlur iPad App v3.6
334
362
  os:
335
363
  name: iOS
336
364
  short_name: IOS
337
- version:
338
- platform:
365
+ version: ""
366
+ platform: ""
339
367
  client:
340
368
  type: feed reader
341
369
  name: NewsBlur Mobile App
@@ -346,29 +374,29 @@
346
374
  model: iPad
347
375
  os_family: iOS
348
376
  browser_family: Unknown
349
- -
377
+ -
350
378
  user_agent: NewsBlur/4.0.1 CFNetwork/672.1.13 Darwin/14.0.0
351
379
  os:
352
380
  name: iOS
353
381
  short_name: IOS
354
382
  version: "7.1"
355
- platform:
383
+ platform: ""
356
384
  client:
357
385
  type: feed reader
358
386
  name: NewsBlur
359
387
  version: "4.0.1"
360
388
  device:
361
- type:
389
+ type: ""
362
390
  brand: AP
363
- model:
391
+ model: ""
364
392
  os_family: iOS
365
393
  browser_family: Unknown
366
- -
394
+ -
367
395
  user_agent: newsbeuter/2.4 (Linux 3.2.0-23-generic; i686; http://www.newsbeuter.org/) libcurl/7.22.0 GnuTLS/2.12.14 zlib/1.2.3.4 libidn/1.23 librtmp/2.3
368
396
  os:
369
397
  name: GNU/Linux
370
398
  short_name: LIN
371
- version:
399
+ version: ""
372
400
  platform: x86
373
401
  client:
374
402
  type: feed reader
@@ -376,17 +404,17 @@
376
404
  version: "2.4"
377
405
  device:
378
406
  type: desktop
379
- brand:
380
- model:
407
+ brand: ""
408
+ model: ""
381
409
  os_family: GNU/Linux
382
410
  browser_family: Unknown
383
- -
411
+ -
384
412
  user_agent: Pulp/1.5.2 (iPad; http://www.acrylicapps.com/pulp/)
385
413
  os:
386
414
  name: iOS
387
415
  short_name: IOS
388
- version:
389
- platform:
416
+ version: ""
417
+ platform: ""
390
418
  client:
391
419
  type: feed reader
392
420
  name: Pulp
@@ -397,25 +425,25 @@
397
425
  model: iPad
398
426
  os_family: iOS
399
427
  browser_family: Unknown
400
- -
428
+ -
401
429
  user_agent: ReadKit/2.4.0 (Mac OS X Version 10.9.2 (Build 13C64))
402
430
  os:
403
431
  name: Mac
404
432
  short_name: MAC
405
433
  version: "10.9.2"
406
- platform:
434
+ platform: ""
407
435
  client:
408
436
  type: feed reader
409
437
  name: ReadKit
410
438
  version: "2.4.0"
411
439
  device:
412
440
  type: desktop
413
- brand:
414
- model:
441
+ brand: AP
442
+ model: ""
415
443
  os_family: Mac
416
444
  browser_family: Unknown
417
- -
418
- user_agent: ReadKit/7017 CFNetwork/673.2.1 Darwin/13.1.0 (x86_64) (MacBookPro10%2C1)
445
+ -
446
+ user_agent: 'ReadKit/7017 CFNetwork/673.2.1 Darwin/13.1.0 (x86_64) (MacBookPro10%2C1)'
419
447
  os:
420
448
  name: Mac
421
449
  short_name: MAC
@@ -428,27 +456,27 @@
428
456
  device:
429
457
  type: desktop
430
458
  brand: AP
431
- model:
459
+ model: ""
432
460
  os_family: Mac
433
461
  browser_family: Unknown
434
- -
462
+ -
435
463
  user_agent: Reeder/3.2 CFNetwork/672.1.12 Darwin/14.0.0
436
464
  os:
437
465
  name: iOS
438
466
  short_name: IOS
439
467
  version: "7.1"
440
- platform:
468
+ platform: ""
441
469
  client:
442
470
  type: feed reader
443
471
  name: Reeder
444
472
  version: "3.2"
445
473
  device:
446
- type:
474
+ type: ""
447
475
  brand: AP
448
- model:
476
+ model: ""
449
477
  os_family: iOS
450
478
  browser_family: Unknown
451
- -
479
+ -
452
480
  user_agent: RssBandit/1.9.0.1002
453
481
  os: [ ]
454
482
  client:
@@ -456,59 +484,59 @@
456
484
  name: RSS Bandit
457
485
  version: "1.9.0.1002"
458
486
  device:
459
- type:
460
- brand:
461
- model:
487
+ type: ""
488
+ brand: ""
489
+ model: ""
462
490
  os_family: Unknown
463
491
  browser_family: Unknown
464
- -
492
+ -
465
493
  user_agent: RssBandit/1.9.0.1002 (.NET CLR 2.0.50727.7512; WinNT 6.2.9200.0; http://www.rssbandit.org)
466
494
  os:
467
495
  name: Windows
468
496
  short_name: WIN
469
497
  version: "NT"
470
- platform:
498
+ platform: ""
471
499
  client:
472
500
  type: feed reader
473
501
  name: RSS Bandit
474
502
  version: "1.9.0.1002"
475
503
  device:
476
504
  type: desktop
477
- brand:
478
- model:
505
+ brand: ""
506
+ model: ""
479
507
  os_family: Windows
480
508
  browser_family: Unknown
481
- -
509
+ -
482
510
  user_agent: RSS Junkie Daemon
483
511
  os: [ ]
484
512
  client:
485
513
  type: feed reader
486
514
  name: RSS Junkie
487
- version:
515
+ version: ""
488
516
  device:
489
- type:
490
- brand:
491
- model:
517
+ type: ""
518
+ brand: ""
519
+ model: ""
492
520
  os_family: Unknown
493
521
  browser_family: Unknown
494
- -
522
+ -
495
523
  user_agent: RSSOwl/2.2.1.201312301314 (Windows; U; en)
496
524
  os:
497
525
  name: Windows
498
526
  short_name: WIN
499
- version:
500
- platform:
527
+ version: ""
528
+ platform: ""
501
529
  client:
502
530
  type: feed reader
503
531
  name: RSSOwl
504
532
  version: "2.2.1.201312301314"
505
533
  device:
506
534
  type: desktop
507
- brand:
508
- model:
535
+ brand: ""
536
+ model: ""
509
537
  os_family: Windows
510
538
  browser_family: Unknown
511
- -
539
+ -
512
540
  user_agent: RSSOwl/2.2.1.201312301316 (X11; U; en)
513
541
  os: [ ]
514
542
  client:
@@ -516,8 +544,8 @@
516
544
  name: RSSOwl
517
545
  version: "2.2.1.201312301316"
518
546
  device:
519
- type:
520
- brand:
521
- model:
547
+ type: ""
548
+ brand: ""
549
+ model: ""
522
550
  os_family: Unknown
523
551
  browser_family: Unknown