device_detector 1.0.2 → 1.0.3

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 (61) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +4 -5
  3. data/CHANGELOG.md +3 -0
  4. data/README.md +5 -5
  5. data/Rakefile +13 -0
  6. data/lib/device_detector/version.rb +1 -1
  7. data/regexes/bots.yml +89 -2
  8. data/regexes/client/browser_engine.yml +3 -0
  9. data/regexes/client/browsers.yml +325 -76
  10. data/regexes/client/feed_readers.yml +6 -0
  11. data/regexes/client/libraries.yml +9 -0
  12. data/regexes/client/mobile_apps.yml +40 -1
  13. data/regexes/client/pim.yml +5 -0
  14. data/regexes/device/mobiles.yml +1607 -431
  15. data/regexes/oss.yml +1 -1
  16. data/regexes/vendorfragments.yml +1 -1
  17. data/spec/device_detector/concrete_user_agent_spec.rb +16 -17
  18. data/spec/device_detector/device_spec.rb +25 -25
  19. data/spec/device_detector/memory_cache_spec.rb +19 -19
  20. data/spec/device_detector/model_extractor_spec.rb +3 -3
  21. data/spec/device_detector/version_extractor_spec.rb +5 -6
  22. data/spec/device_detector_spec.rb +26 -26
  23. data/spec/fixtures/client/browser.yml +655 -322
  24. data/spec/fixtures/client/feed_reader.yml +39 -45
  25. data/spec/fixtures/client/library.yml +24 -11
  26. data/spec/fixtures/client/mediaplayer.yml +29 -28
  27. data/spec/fixtures/client/mobile_app.yml +100 -41
  28. data/spec/fixtures/client/pim.yml +32 -19
  29. data/spec/fixtures/detector/bots.yml +140 -23
  30. data/spec/fixtures/detector/camera.yml +2 -2
  31. data/spec/fixtures/detector/console.yml +3 -3
  32. data/spec/fixtures/detector/desktop.yml +312 -73
  33. data/spec/fixtures/detector/feature_phone.yml +48 -0
  34. data/spec/fixtures/detector/feed_reader.yml +141 -126
  35. data/spec/fixtures/detector/mediaplayer.yml +39 -38
  36. data/spec/fixtures/detector/mobile_apps.yml +86 -85
  37. data/spec/fixtures/detector/phablet.yml +715 -236
  38. data/spec/fixtures/detector/portable_media_player.yml +17 -0
  39. data/spec/fixtures/detector/smartphone-1.yml +3534 -3512
  40. data/spec/fixtures/detector/smartphone-10.yml +3848 -6286
  41. data/spec/fixtures/detector/smartphone-11.yml +5548 -3298
  42. data/spec/fixtures/detector/smartphone-12.yml +8655 -0
  43. data/spec/fixtures/detector/smartphone-2.yml +3645 -3625
  44. data/spec/fixtures/detector/smartphone-3.yml +4099 -4176
  45. data/spec/fixtures/detector/smartphone-4.yml +3861 -3865
  46. data/spec/fixtures/detector/smartphone-5.yml +3991 -4037
  47. data/spec/fixtures/detector/smartphone-6.yml +4074 -4047
  48. data/spec/fixtures/detector/smartphone-7.yml +4355 -4362
  49. data/spec/fixtures/detector/smartphone-8.yml +4087 -4136
  50. data/spec/fixtures/detector/smartphone-9.yml +4420 -4408
  51. data/spec/fixtures/detector/smartphone.yml +2900 -2904
  52. data/spec/fixtures/detector/tablet-1.yml +3946 -3912
  53. data/spec/fixtures/detector/tablet-2.yml +3593 -3617
  54. data/spec/fixtures/detector/tablet-3.yml +2738 -85
  55. data/spec/fixtures/detector/tablet.yml +3604 -3616
  56. data/spec/fixtures/detector/tv.yml +131 -51
  57. data/spec/fixtures/detector/unknown.yml +64 -27
  58. data/spec/fixtures/device/camera.yml +4 -3
  59. data/spec/fixtures/device/car_browser.yml +3 -2
  60. data/spec/fixtures/device/console.yml +15 -14
  61. metadata +4 -2
@@ -1,205 +1,199 @@
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
  client:
4
5
  type: feed reader
5
6
  name: Akregator
6
7
  version: "4.11.5"
7
- -
8
+ -
8
9
  user_agent: Akregator/4.12.3; syndication SUSE
9
10
  client:
10
11
  type: feed reader
11
12
  name: Akregator
12
13
  version: "4.12.3"
13
- -
14
+ -
14
15
  user_agent: Akregator/1.2.9; librss/remnants
15
16
  client:
16
17
  type: feed reader
17
18
  name: Akregator
18
19
  version: "1.2.9"
19
- -
20
+ -
20
21
  user_agent: Apple-PubSub/65.28
21
22
  client:
22
23
  type: feed reader
23
24
  name: Apple PubSub
24
25
  version: "65.28"
25
- -
26
+ -
26
27
  user_agent: FeedDemon/4.5 (http://www.feeddemon.com/; Microsoft Windows)
27
28
  client:
28
29
  type: feed reader
29
30
  name: FeedDemon
30
31
  version: "4.5"
31
- -
32
+ -
32
33
  user_agent: FeedDemon/4.5 (http://www.feeddemon.com/; Microsoft Windows XP)
33
34
  client:
34
35
  type: feed reader
35
36
  name: FeedDemon
36
37
  version: "4.5"
37
- -
38
+ -
38
39
  user_agent: FeeddlerPro/2.4 CFNetwork/672.0.8 Darwin/14.0.0
39
40
  client:
40
41
  type: feed reader
41
42
  name: Feeddler RSS Reader
42
43
  version: "2.4"
43
- -
44
+ -
44
45
  user_agent: FeeddlerRSS/2.4 CFNetwork/548.1.4 Darwin/11.0.0
45
46
  client:
46
47
  type: feed reader
47
48
  name: Feeddler RSS Reader
48
49
  version: "2.4"
49
- -
50
+ -
50
51
  user_agent: FeeddlerRSS 2.4 (iPad; iPhone OS 5.1.1; en_US)
51
52
  client:
52
53
  type: feed reader
53
54
  name: Feeddler RSS Reader
54
55
  version: "2.4"
55
- -
56
+ -
56
57
  user_agent: JetBrains Omea Reader 2.2 (http://www.jetbrains.com/omea/reader/)
57
58
  client:
58
59
  type: feed reader
59
60
  name: JetBrains Omea Reader
60
61
  version: "2.2"
61
- -
62
+ -
62
63
  user_agent: Liferea/1.6.4 (Linux; en_US.UTF-8; http://liferea.sf.net/)
63
64
  client:
64
65
  type: feed reader
65
66
  name: Liferea
66
67
  version: "1.6.4"
67
- -
68
+ -
68
69
  user_agent: Liferea/1.10-RC1 (Linux; en_GB.UTF-8; http://liferea.sf.net/)
69
70
  client:
70
71
  type: feed reader
71
72
  name: Liferea
72
73
  version: "1.10"
73
- -
74
+ -
74
75
  user_agent: Liferea/1.10.6 (Linux; en_US.UTF8; http://liferea.sf.net/) AppleWebKit (KHTML, like Gecko)
75
76
  client:
76
77
  type: feed reader
77
78
  name: Liferea
78
79
  version: "1.10.6"
79
- -
80
+ -
80
81
  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
81
82
  client:
82
83
  type: feed reader
83
84
  name: NetNewsWire
84
85
  version: "4.0.0"
85
- -
86
+ -
86
87
  user_agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.74.9 (KHTML, like Gecko) NetNewsWire/3.3.2
87
88
  client:
88
89
  type: feed reader
89
90
  name: NetNewsWire
90
91
  version: "3.3.2"
91
- -
92
+ -
92
93
  user_agent: NetNewsWire/4.0.0 (Mac OS X; http://netnewswireapp.com/mac/; gzip-happy)
93
94
  client:
94
95
  type: feed reader
95
96
  name: NetNewsWire
96
97
  version: "4.0.0"
97
- -
98
+ -
98
99
  user_agent: newsbeuter/2.7 (Linux x86_64)
99
100
  client:
100
101
  type: feed reader
101
102
  name: Newsbeuter
102
103
  version: "2.7"
103
- -
104
+ -
104
105
  user_agent: NewsBlur iPhone App v3.6
105
106
  client:
106
107
  type: feed reader
107
108
  name: NewsBlur Mobile App
108
109
  version: "3.6"
109
- -
110
+ -
110
111
  user_agent: NewsBlur iPad App v3.6
111
112
  client:
112
113
  type: feed reader
113
114
  name: NewsBlur Mobile App
114
115
  version: "3.6"
115
- -
116
+ -
116
117
  user_agent: NewsBlur/4.0.1 CFNetwork/672.1.13 Darwin/14.0.0
117
118
  client:
118
119
  type: feed reader
119
120
  name: NewsBlur
120
121
  version: "4.0.1"
121
- -
122
+ -
122
123
  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
123
124
  client:
124
125
  type: feed reader
125
126
  name: Newsbeuter
126
127
  version: "2.4"
127
- -
128
- user_agent: PritTorrent/1.0
129
- client:
130
- type: feed reader
131
- name: PritTorrent
132
- version: 1.0
133
- -
128
+ -
134
129
  user_agent: Pulp/1.5.2 (iPad; http://www.acrylicapps.com/pulp/)
135
130
  client:
136
131
  type: feed reader
137
132
  name: Pulp
138
133
  version: "1.5.2"
139
- -
134
+ -
140
135
  user_agent: ReadKit/2.4.0 (Mac OS X Version 10.9.2 (Build 13C64))
141
136
  client:
142
137
  type: feed reader
143
138
  name: ReadKit
144
139
  version: "2.4.0"
145
- -
146
- user_agent: ReadKit/7017 CFNetwork/673.2.1 Darwin/13.1.0 (x86_64) (MacBookPro10%2C1)
140
+ -
141
+ user_agent: 'ReadKit/7017 CFNetwork/673.2.1 Darwin/13.1.0 (x86_64) (MacBookPro10%2C1)'
147
142
  client:
148
143
  type: feed reader
149
144
  name: ReadKit
150
145
  version: "7017"
151
- -
146
+ -
152
147
  user_agent: Reeder/3.2 CFNetwork/672.1.12 Darwin/14.0.0
153
148
  client:
154
149
  type: feed reader
155
150
  name: Reeder
156
151
  version: "3.2"
157
- -
152
+ -
158
153
  user_agent: RssBandit/1.9.0.1002
159
154
  client:
160
155
  type: feed reader
161
156
  name: RSS Bandit
162
157
  version: "1.9.0.1002"
163
- -
158
+ -
164
159
  user_agent: RssBandit/1.9.0.1002 (.NET CLR 2.0.50727.7512; WinNT 6.2.9200.0; http://www.rssbandit.org)
165
160
  client:
166
161
  type: feed reader
167
162
  name: RSS Bandit
168
163
  version: "1.9.0.1002"
169
- -
164
+ -
170
165
  user_agent: RSS Junkie Daemon
171
166
  client:
172
167
  type: feed reader
173
168
  name: RSS Junkie
174
- version:
175
- -
169
+ version: ""
170
+ -
176
171
  user_agent: RSSOwl/2.2.1.201312301314 (Windows; U; en)
177
172
  client:
178
173
  type: feed reader
179
174
  name: RSSOwl
180
175
  version: "2.2.1.201312301314"
181
- -
176
+ -
182
177
  user_agent: RSSOwl/2.2.1.201312301316 (X11; U; en)
183
178
  client:
184
179
  type: feed reader
185
180
  name: RSSOwl
186
181
  version: "2.2.1.201312301316"
187
-
188
- -
182
+ -
189
183
  user_agent: Stringer (https://github.com/swanson/stringer)
190
184
  client:
191
185
  type: feed reader
192
186
  name: Stringer
193
187
  version: ""
194
- -
195
- user_agent: Downcast/1241 CFNetwork/673.4 Darwin/13.3.0 (x86_64) (MacBookAir4%2C2)
188
+ -
189
+ user_agent: 'Downcast/1241 CFNetwork/673.4 Darwin/13.3.0 (x86_64) (MacBookAir4%2C2)'
196
190
  client:
197
191
  type: feed reader
198
192
  name: Downcast
199
- version: 1241
200
- -
193
+ version: "1241"
194
+ -
201
195
  user_agent: iTunes/10.7 Downcast/2.8.24.1002
202
196
  client:
203
197
  type: feed reader
204
198
  name: Downcast
205
- version: 2.8.24.1002
199
+ version: "2.8.24.1002"
@@ -1,3 +1,4 @@
1
+ ---
1
2
  -
2
3
  user_agent: Wget/1.10+devel
3
4
  client:
@@ -15,7 +16,7 @@
15
16
  client:
16
17
  type: library
17
18
  name: Wget
18
- version:
19
+ version: ""
19
20
  -
20
21
  user_agent: curl/7.21.0 (i386-redhat-linux-gnu) libcurl/7.21.0 NSS/3.12.10.0 zlib/1.2.5 libidn/1.18 libssh2/1.2.4
21
22
  client:
@@ -51,7 +52,7 @@
51
52
  client:
52
53
  type: library
53
54
  name: Python urllib
54
- version:
55
+ version: ""
55
56
  -
56
57
  user_agent: Java/1.7.0_51
57
58
  client:
@@ -87,55 +88,55 @@
87
88
  client:
88
89
  type: library
89
90
  name: HTTP_Request2
90
- version: 2.3.0
91
+ version: "2.3.0"
91
92
  -
92
93
  user_agent: Mechanize/2.7.3 Ruby/1.9.3p551 (http://github.com/sparklemotion/mechanize/)
93
94
  client:
94
95
  type: library
95
96
  name: Mechanize
96
- version: 2.7.3
97
+ version: "2.7.3"
97
98
  -
98
99
  user_agent: Python/3.5 aiohttp/1.0.5
99
100
  client:
100
101
  type: library
101
102
  name: aiohttp
102
- version: 1.0.5
103
+ version: "1.0.5"
103
104
  -
104
105
  user_agent: Google-HTTP-Java-Client/1.17.0-rc (gzip)
105
106
  client:
106
107
  type: library
107
108
  name: Google HTTP Java Client
108
- version: 1.17.0-rc
109
+ version: "1.17.0-rc"
109
110
  -
110
111
  user_agent: WWW-Mechanize/1.73
111
112
  client:
112
113
  type: library
113
114
  name: WWW-Mechanize
114
- version: 1.73
115
+ version: "1.73"
115
116
  -
116
117
  user_agent: Faraday v0.9.1
117
118
  client:
118
119
  type: library
119
120
  name: Faraday
120
- version: 0.9.1
121
+ version: "0.9.1"
121
122
  -
122
123
  user_agent: Go-http-client/1.1
123
124
  client:
124
125
  type: library
125
126
  name: Go-http-client
126
- version: 1.1
127
+ version: "1.1"
127
128
  -
128
129
  user_agent: Go-http-client/2.0
129
130
  client:
130
131
  type: library
131
132
  name: Go-http-client
132
- version: 2.0
133
+ version: "2.0"
133
134
  -
134
135
  user_agent: Go 1.1 package http
135
136
  client:
136
137
  type: library
137
138
  name: Go-http-client
138
- version: 1.1
139
+ version: "1.1"
139
140
  -
140
141
  user_agent: urlgrabber/3.9.1 yum/3.2.29
141
142
  client:
@@ -160,3 +161,15 @@
160
161
  type: library
161
162
  name: HTTPie
162
163
  version: "1.0.2"
164
+ -
165
+ user_agent: rest-client/2.0.2 (linux-gnu x86_64) ruby/2.5.3p105
166
+ client:
167
+ type: library
168
+ name: REST Client for Ruby
169
+ version: "2.0.2"
170
+ -
171
+ user_agent: RestSharp/106.2.1.0
172
+ client:
173
+ type: library
174
+ name: RestSharp
175
+ version: "106.2.1.0"
@@ -1,160 +1,161 @@
1
- -
1
+ ---
2
+ -
2
3
  user_agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.28) Gecko/20130316 Songbird/1.12.1 (20140112193149)
3
4
  client:
4
5
  type: mediaplayer
5
6
  name: Songbird
6
7
  version: "1.12.1"
7
- -
8
+ -
8
9
  user_agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.28) Gecko/20130316 Nightingale/1.12.2 (20140112193149)
9
10
  client:
10
11
  type: mediaplayer
11
12
  name: Nightingale
12
13
  version: "1.12.2"
13
- -
14
+ -
14
15
  user_agent: iTunes/10.2.1 (Macintosh; Intel Mac OS X 10.7) AppleWebKit/534.20.8
15
16
  client:
16
17
  type: mediaplayer
17
18
  name: iTunes
18
19
  version: "10.2.1"
19
- -
20
+ -
20
21
  user_agent: iTunes/10.2.1 (Windows; Microsoft Windows 7 Enterprise Edition Service Pack 1 (Build 7601)) AppleWebKit/533.20.25
21
22
  client:
22
23
  type: mediaplayer
23
24
  name: iTunes
24
25
  version: "10.2.1"
25
- -
26
+ -
26
27
  user_agent: VLC/2.1.0 LibVLC/2.1.0
27
28
  client:
28
29
  type: mediaplayer
29
30
  name: VLC
30
31
  version: "2.1.0"
31
- -
32
+ -
32
33
  user_agent: LibVLC/2.2.3 (LIVE555 Streaming Media v2015.10.12)
33
34
  client:
34
35
  type: mediaplayer
35
36
  name: VLC
36
37
  version: "2.2.3"
37
- -
38
+ -
38
39
  user_agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; FunWebProducts; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.0.04506; Windows-Media-Player/10.00.00.3990)
39
40
  client:
40
41
  type: mediaplayer
41
42
  name: Windows Media Player
42
43
  version: "10.00.00.3990"
43
- -
44
+ -
44
45
  user_agent: Windows-Media-Player/11.0.6001.7000
45
46
  client:
46
47
  type: mediaplayer
47
48
  name: Windows Media Player
48
49
  version: "11.0.6001.7000"
49
- -
50
+ -
50
51
  user_agent: SAMSUNG-GT-S3850/S3850CXKD1 SHP/VPP/R5 Dolfin/2.0 NexPlayer/3.0 SMM-MMS/1.2.0 profile/MIDP-2.1 configuration/CLDC-1.1 OPN-B
51
52
  client:
52
53
  type: mediaplayer
53
54
  name: NexPlayer
54
55
  version: "3.0"
55
- -
56
+ -
56
57
  user_agent: Banshee 1.5.1 (http://banshee-project.org/)
57
58
  client:
58
59
  type: mediaplayer
59
60
  name: Banshee
60
61
  version: "1.5.1"
61
- -
62
+ -
62
63
  user_agent: Banshee/2.6.2 (http://banshee-project.org/)
63
64
  client:
64
65
  type: mediaplayer
65
66
  name: Banshee
66
67
  version: "2.6.2"
67
- -
68
+ -
68
69
  user_agent: QuickTime/7.6.6 (qtver=7.6.6;cpu=IA32;os=Mac 10.6.8)
69
70
  client:
70
71
  type: mediaplayer
71
72
  name: QuickTime
72
73
  version: "7.6.6"
73
- -
74
+ -
74
75
  user_agent: QuickTime.7.7.4 (qtver=7.7.4;os=Windows NT 6.0Service Pack 2)
75
76
  client:
76
77
  type: mediaplayer
77
78
  name: QuickTime
78
79
  version: "7.7.4"
79
- -
80
+ -
80
81
  user_agent: QuickTime (qtver=7.0.2a26;os=Windows NT 6.0)
81
82
  client:
82
83
  type: mediaplayer
83
84
  name: QuickTime
84
85
  version: "7.0.2"
85
- -
86
+ -
86
87
  user_agent: QuickTime E-/7.7.5 (qtver=7.7.5;os=Windows NT 6.1)
87
88
  client:
88
89
  type: mediaplayer
89
90
  name: QuickTime
90
91
  version: "7.7.5"
91
- -
92
+ -
92
93
  user_agent: FlyCast/1.34 (BlackBerry; 8330/4.5.0.131 Profile/MIDP-2.0 Configuration/CLDC-1.1 VendorID/-1)
93
94
  client:
94
95
  type: mediaplayer
95
96
  name: FlyCast
96
97
  version: "1.34"
97
- -
98
+ -
98
99
  user_agent: XBMC/9.04 r19840 (Mac OS X; Darwin 9.6.0; http://www.xbmc.org)
99
100
  client:
100
101
  type: mediaplayer
101
102
  name: XBMC
102
103
  version: "9.04"
103
- -
104
+ -
104
105
  user_agent: XBMC/9.04-beta1 r19639 (Windows; Windows XP Professional Service Pack 2 build 2600; http://www.xbmc.org)
105
106
  client:
106
107
  type: mediaplayer
107
108
  name: XBMC
108
109
  version: "9.04"
109
- -
110
+ -
110
111
  user_agent: SubStream/0.7 CFNetwork/485.12.30 Darwin/10.4.0
111
112
  client:
112
113
  type: mediaplayer
113
114
  name: SubStream
114
115
  version: "0.7"
115
- -
116
+ -
116
117
  user_agent: MediaMonkey 4.1.1.1703
117
118
  client:
118
119
  type: mediaplayer
119
120
  name: MediaMonkey
120
121
  version: "4.1.1.1703"
121
- -
122
+ -
122
123
  user_agent: Clementine 1.2.2
123
124
  client:
124
125
  type: mediaplayer
125
126
  name: Clementine
126
127
  version: "1.2.2"
127
- -
128
+ -
128
129
  user_agent: WAFA/1.2.10 (Linux; Android 4.1; Winamp) Replicant/1.0
129
130
  client:
130
131
  type: mediaplayer
131
132
  name: Winamp
132
- version:
133
- -
133
+ version: ""
134
+ -
134
135
  user_agent: WinampMPEG/5.66, Ultravox/2.1
135
136
  client:
136
137
  type: mediaplayer
137
138
  name: Winamp
138
139
  version: "5.66"
139
- -
140
+ -
140
141
  user_agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9) Gecko Miro/2.0.4 (http://www.getmiro.com/)
141
142
  client:
142
143
  type: mediaplayer
143
144
  name: Miro
144
145
  version: "2.0.4"
145
- -
146
+ -
146
147
  user_agent: Miro/3.0.1 (http://www.getmiro.com/; Darwin 8.11.1 i386)
147
148
  client:
148
149
  type: mediaplayer
149
150
  name: Miro
150
151
  version: "3.0.1"
151
- -
152
+ -
152
153
  user_agent: Kodi/14.0 (Macintosh; Intel Mac OS X 10_10_3) App_Bitness/64 Version/14.0-Git:2014-12-23-ad747d9-dirty
153
154
  client:
154
155
  type: mediaplayer
155
156
  name: Kodi
156
157
  version: "14.0"
157
- -
158
+ -
158
159
  user_agent: foobar2000/1.3.10
159
160
  client:
160
161
  type: mediaplayer