user_agent_decoder 0.0.2 → 0.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.
- checksums.yaml +8 -8
- data/lib/user_agent_decoder.rb +1 -1
- data/lib/user_agent_rules.yml +211 -0
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
N2NjM2RjYTE2NGYwYzllMjg4OGNlMzMzM2ViOTkyYWZjMDM4OGJkMg==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
ZTg1MjdhYzc2NDlkOWRlMzIwODVjOTNmNWFhNDBmNWExZDMxNThiYQ==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
YTg4OTA4M2Y2YjkxNDRjMzA1NGNjMmYzNmM0MjcyYjcyZjZlODdlZGNmNjIw
|
10
|
+
MzJhNjY1YmE1NDQzYjY2ZThjYjdkYTBkYTUzNmRhNmZlODcxYWFjNDM5MzU5
|
11
|
+
YjQxY2NhNjM4ODFiMjBiNmJlYjFjOTg3NDM2N2Q2NmFlN2MyZTI=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
MDJiZGIxZDJkODk4OTJkMmNmZjE1ZGZlNTY1YzRjYWFlN2Y4NmRlZjhkNDli
|
14
|
+
Yzk2N2U2MzExODhhZjI2Nzc0MjU3ZDY1MWM2M2NhMGRjZWJhZjczNmFhMmU1
|
15
|
+
OGE0ZmFiYWRmNjgyZmI5ZDg1MDYwODA2MjA3NjJjMjRkMzEwZTg=
|
data/lib/user_agent_decoder.rb
CHANGED
@@ -0,0 +1,211 @@
|
|
1
|
+
os:
|
2
|
+
# Needs to be at top as it sometimes spoofs as android or os x
|
3
|
+
fire_os:
|
4
|
+
name: Amazon Fire OS
|
5
|
+
regex: ['Silk\/(?:[0-9\.]+)']
|
6
|
+
android:
|
7
|
+
name: Android
|
8
|
+
regex: ['Android(?: ([\d\.]+))?']
|
9
|
+
bada:
|
10
|
+
name: Samsung Bada
|
11
|
+
regex: ['Bada(?:\/([0-9\.]+))?']
|
12
|
+
blackberry:
|
13
|
+
name: BlackBerry
|
14
|
+
regex: ['BlackBerry\w+\/([0-9\.]+)?', 'BlackBerry;.+?Version\/([0-9\.]+)?', 'BB10;.+?Version\/([0-9\.]+)?']
|
15
|
+
blackberry_playbook:
|
16
|
+
name: BlackBerry PlayBook
|
17
|
+
regex: ['PlayBook; U; RIM Tablet OS ([0-9\.]+)']
|
18
|
+
chrome_os:
|
19
|
+
name: Chrome OS
|
20
|
+
regex: ['CrOS.+?Chrome\/([\d\.]+)']
|
21
|
+
ios:
|
22
|
+
name: Apple iOS
|
23
|
+
regex: ['(?:ip(?:[ao]d|hone))(?: Simulator)?;.+?OS ([\d_]+)?']
|
24
|
+
java_me:
|
25
|
+
name: Java ME
|
26
|
+
regex: ['J2ME\/MIDP']
|
27
|
+
mac:
|
28
|
+
name: Mac OS X
|
29
|
+
regex: ['Macintosh.+?OS X ?([\w\.]+)?']
|
30
|
+
meego:
|
31
|
+
name: MeeGo
|
32
|
+
regex: ['MeeGo']
|
33
|
+
symbian:
|
34
|
+
name: Nokia Symbian
|
35
|
+
regex: ['Series 60', 'Symbian', 'SymbOS', 'S60']
|
36
|
+
red_hat_linux:
|
37
|
+
name: Red Hat Linux
|
38
|
+
regex: ['(i686|x86_64).+?Red Hat']
|
39
|
+
ubuntu_linux:
|
40
|
+
name: Ubuntu Linux
|
41
|
+
regex: ['Ubuntu\/([\d\.]+)', '(i686|x86_64).+?Ubuntu']
|
42
|
+
playstation_3:
|
43
|
+
name: Sony Playstation 3
|
44
|
+
regex: ['PLAYSTATION 3 ([\d\.]+)']
|
45
|
+
web_os:
|
46
|
+
name: WebOS
|
47
|
+
regex: ['webOS/([\d\.]+)', 'hpwOS/([\d\.]+)']
|
48
|
+
wii:
|
49
|
+
name: Nintendo Wii
|
50
|
+
regex: ['Nintendo Wii; U; ; 2047-7']
|
51
|
+
windows_phone:
|
52
|
+
name: Windows Phone
|
53
|
+
regex: ['Windows Phone(?: OS)? ([\d\.]+)?']
|
54
|
+
windows:
|
55
|
+
name: Windows
|
56
|
+
regex: ['Windows NT ([\d\.]+)?', 'Windows']
|
57
|
+
other_linux:
|
58
|
+
name: Linux
|
59
|
+
regex: ['X11(?:.+?(i686|x86_64))?', 'Linux']
|
60
|
+
|
61
|
+
browsers:
|
62
|
+
chrome:
|
63
|
+
name: Chrome
|
64
|
+
regex: ['Chrome(?:frame)?\/([\d\.]+)?', 'CriOS\/([0-9\.]+)?', 'Android.+?Apple ?WebKit.+?Version\/([\d\.]+)']
|
65
|
+
dreamweaver:
|
66
|
+
name: Adobe Dreamweaver
|
67
|
+
regex: ['Dreamweaver\/([\d\.]+)?']
|
68
|
+
dolfin:
|
69
|
+
name: Dolfin
|
70
|
+
regex: ['Dolfin\/([\d\.]+)?']
|
71
|
+
firefox:
|
72
|
+
name: Firefox
|
73
|
+
regex: ['Firefox\/([\d\.]+)?']
|
74
|
+
flock:
|
75
|
+
name: Flock
|
76
|
+
regex: ['Flock\/([\w\.]+)?']
|
77
|
+
konqueror:
|
78
|
+
name: Konqueror
|
79
|
+
regex: ['konqueror\/([\d\.]+)']
|
80
|
+
mercury:
|
81
|
+
name: Mercury
|
82
|
+
regex: ['Mercury\/([\d\.]+)?']
|
83
|
+
msie:
|
84
|
+
name: Internet Explorer
|
85
|
+
regex: ['MSIE ([\d\.]+)?', 'Trident.+?rv:([\d\.]+)?']
|
86
|
+
nokia_browser:
|
87
|
+
name: Nokia Browser
|
88
|
+
regex: ['NokiaBrowser\/([0-9\.]+)?']
|
89
|
+
opera_mini:
|
90
|
+
name: Opera Mini
|
91
|
+
regex: ['Opera\/9\.80.+?Opera Mini\/([0-9\.]+)?', 'Opera Mini\/att\/([0-9\.]+).+?Opera 9\.50']
|
92
|
+
opera:
|
93
|
+
name: Opera
|
94
|
+
regex: ['Opera\/9\.80.+?Version\/([0-9\.]+)?', 'Opera[\/ ]([0-9\.]+)?']
|
95
|
+
playstation_3_browser:
|
96
|
+
name: Playstation 3 Browser
|
97
|
+
regex: ['PLAYSTATION 3 (?:[\d\.]+)'] # Only browser available for PS 3?
|
98
|
+
smart_tv:
|
99
|
+
name: 'Samsung Smart TV'
|
100
|
+
regex: ['SMART-TV.+?Version\/([\d\.]+)']
|
101
|
+
safari:
|
102
|
+
name: Safari
|
103
|
+
regex: ['Version\/([\d\.]+)?.+?Safari', 'Safari\/([\d\.]+)?']
|
104
|
+
silk:
|
105
|
+
name: Silk
|
106
|
+
regex: ['Silk\/([0-9\.]+)']
|
107
|
+
uc_browser:
|
108
|
+
name: UC Browser
|
109
|
+
regex: ['UC Browser([\d\.]+)', 'UCBrowser\/([\d\.]+)']
|
110
|
+
web_os_browser:
|
111
|
+
name: WebOS Browser
|
112
|
+
regex: ['wOSBrowser/([\d\.]+)', 'webOS|hpwOS']
|
113
|
+
mobile_safari:
|
114
|
+
name: Safari
|
115
|
+
regex: ['AppleWebKit(?:\/([\d\.]+))?']
|
116
|
+
blackberry_browser:
|
117
|
+
name: BlackBerry Browser
|
118
|
+
regex: ['AppleWebKit\/([0-9\.]+)?']
|
119
|
+
|
120
|
+
# Opera first as it can spoof
|
121
|
+
# Flock before firefox and chrome otherwise it can be reckognised as them
|
122
|
+
# Chrome before safari as chrome user agent includes Safari keyword
|
123
|
+
# Mercury before safari as mercury user agent includes Safari keyword
|
124
|
+
# Dreamweaver before safari as mercury user agent includes Safari keyword
|
125
|
+
os_browsers:
|
126
|
+
android: [opera, chrome, firefox]
|
127
|
+
bada: [opera_mini, dolfin]
|
128
|
+
blackberry: [opera, blackberry_browser]
|
129
|
+
blackberry_playbook: [opera, blackberry_browser]
|
130
|
+
chrome_os: [chrome]
|
131
|
+
fire_os: [silk]
|
132
|
+
ios: [opera, chrome, firefox, mercury, safari, mobile_safari]
|
133
|
+
java_me: [opera_mini]
|
134
|
+
mac: [opera, flock, chrome, firefox, dreamweaver, safari, mobile_safari]
|
135
|
+
meego: [nokia_browser]
|
136
|
+
symbian: [opera_mini, uc_browser, nokia_browser]
|
137
|
+
red_hat_linux: [opera, flock, konqueror, chrome, firefox]
|
138
|
+
ubuntu_linux: [opera, flock, konqueror, chrome, firefox]
|
139
|
+
other_linux: [opera, flock, konqueror, chrome, firefox, smart_tv]
|
140
|
+
playstation_3: [playstation_3_browser]
|
141
|
+
web_os: [web_os_browser]
|
142
|
+
wii: []
|
143
|
+
windows: [opera, flock, chrome, firefox, msie, dreamweaver, safari]
|
144
|
+
windows_phone: [msie]
|
145
|
+
|
146
|
+
os_version_names:
|
147
|
+
windows:
|
148
|
+
-
|
149
|
+
version: '3\.'
|
150
|
+
name: 'NT'
|
151
|
+
-
|
152
|
+
version: '4\.0'
|
153
|
+
name: '95'
|
154
|
+
-
|
155
|
+
version: '4\.1'
|
156
|
+
name: '98'
|
157
|
+
-
|
158
|
+
version: '4\.9'
|
159
|
+
name: 'Millenium'
|
160
|
+
-
|
161
|
+
version: '5\.0'
|
162
|
+
name: '2000'
|
163
|
+
-
|
164
|
+
version: '5\.1'
|
165
|
+
name: 'XP'
|
166
|
+
-
|
167
|
+
version: '5\.2'
|
168
|
+
name: 'Server 2003'
|
169
|
+
-
|
170
|
+
version: '6\.0'
|
171
|
+
name: 'Vista'
|
172
|
+
-
|
173
|
+
version: '6\.1'
|
174
|
+
name: '7'
|
175
|
+
-
|
176
|
+
version: '6\.2'
|
177
|
+
name: '8'
|
178
|
+
-
|
179
|
+
version: '6\.3'
|
180
|
+
name: '8.1'
|
181
|
+
mac:
|
182
|
+
-
|
183
|
+
version: '10\.0'
|
184
|
+
name: 'Cheeta'
|
185
|
+
-
|
186
|
+
version: '10\.1'
|
187
|
+
name: 'Puma'
|
188
|
+
-
|
189
|
+
version: '10\.2'
|
190
|
+
name: 'Jaguar'
|
191
|
+
-
|
192
|
+
version: '10\.3'
|
193
|
+
name: 'Panther'
|
194
|
+
-
|
195
|
+
version: '10\.4'
|
196
|
+
name: 'Tiger'
|
197
|
+
-
|
198
|
+
version: '10\.5'
|
199
|
+
name: 'Leopard'
|
200
|
+
-
|
201
|
+
version: '10\.6'
|
202
|
+
name: 'Snow Leopard'
|
203
|
+
-
|
204
|
+
version: '10\.7'
|
205
|
+
name: 'Lion'
|
206
|
+
-
|
207
|
+
version: '10\.8'
|
208
|
+
name: 'Mountain Lion'
|
209
|
+
-
|
210
|
+
version: '10\.9'
|
211
|
+
name: 'Mavericks'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: user_agent_decoder
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matt Bearman
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-07-
|
11
|
+
date: 2014-07-04 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Accurately parse User Agent strings using simple, cascading rules - devloped
|
14
14
|
for and by BugMuncher
|
@@ -18,6 +18,7 @@ extensions: []
|
|
18
18
|
extra_rdoc_files: []
|
19
19
|
files:
|
20
20
|
- lib/user_agent_decoder.rb
|
21
|
+
- lib/user_agent_rules.yml
|
21
22
|
homepage: http://rubygems.org/gems/user_agent_decoder
|
22
23
|
licenses:
|
23
24
|
- MIT
|