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,217 +0,0 @@
1
- ---
2
- -
3
- user_agent: Pulse/4.0.5 (iPhone; iOS 7.0.6; Scale/2.00)
4
- client:
5
- type: mobile app
6
- name: Pulse
7
- version: "4.0.5"
8
- -
9
- user_agent: Mozilla/5.0 (Linux; Android 4.4.4; SM-G7509 Build/KTU84P) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/33.0.0.0 Mobile Safari/537.36 MicroMessenger/6.0.2.56_r958800.520 NetType/WIFI
10
- client:
11
- type: mobile app
12
- name: WeChat
13
- version: "6.0.2.56.r958800.520"
14
- -
15
- user_agent: Mozilla/5.0 (Linux; U; Android 4.0.4; en-us; ZTE U807N Build/IMM76D) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30 Weibo (ZTE-ZTE U807N__weibo__5.0.0__android__android4.0.4)
16
- client:
17
- type: mobile app
18
- name: Sina Weibo
19
- version: "5.0.0"
20
- -
21
- user_agent: FeedR/1.0 (Android)
22
- client:
23
- type: mobile app
24
- name: FeedR
25
- version: "1.0"
26
- -
27
- user_agent: Pinterest/3.3.3 CFNetwork/609.1.4 Darwin/13.0.0
28
- client:
29
- type: mobile app
30
- name: Pinterest
31
- version: "3.3.3"
32
- -
33
- user_agent: Instacast/5.0a8 CFNetwork/711.1.11 Darwin/13.4.0
34
- client:
35
- type: mobile app
36
- name: Instacast
37
- version: "5.0a8"
38
- -
39
- user_agent: InstacastHD/1.1.2 CFNetwork/711.0.6 Darwin/14.0.0
40
- client:
41
- type: mobile app
42
- name: Instacast
43
- version: "1.1.2"
44
- -
45
- user_agent: Podcasts/2.1.2
46
- client:
47
- type: mobile app
48
- name: Podcasts
49
- version: "2.1.2"
50
- -
51
- user_agent: Shifty Jelly Pocket Casts, Android v4.4.3.1
52
- client:
53
- type: mobile app
54
- name: Pocket Casts
55
- version: "4.4.3.1"
56
- -
57
- user_agent: Pocket Casts
58
- client:
59
- type: mobile app
60
- name: Pocket Casts
61
- version: ""
62
- -
63
- user_agent: Mozilla/5.0 (Linux; U; en-us; BeyondPod)
64
- client:
65
- type: mobile app
66
- name: BeyondPod
67
- version: ""
68
- -
69
- user_agent: AntennaPod/0.9.9.1
70
- client:
71
- type: mobile app
72
- name: AntennaPod
73
- version: "0.9.9.1"
74
- -
75
- user_agent: AntennaPod/
76
- client:
77
- type: mobile app
78
- name: AntennaPod
79
- version: ""
80
- -
81
- user_agent: Overcast/1.0 (+http://overcast.fm/; iOS podcast app)
82
- client:
83
- type: mobile app
84
- name: Overcast
85
- version: "1.0"
86
- -
87
- user_agent: Podkicker/1.9.4
88
- client:
89
- type: mobile app
90
- name: Podkicker
91
- version: "1.9.4"
92
- -
93
- user_agent: Podkicker Pro/1.9.4
94
- client:
95
- type: mobile app
96
- name: Podkicker
97
- version: "1.9.4"
98
- -
99
- user_agent: Castro/64 CFNetwork/672.1.15 Darwin/14.0.0
100
- client:
101
- type: mobile app
102
- name: Castro
103
- version: "64"
104
- -
105
- user_agent: Mozilla/5.0 (Linux; U; Windows NT 6.1; en-us; dream) DoggCatcher
106
- client:
107
- type: mobile app
108
- name: DoggCatcher
109
- version: ""
110
- -
111
- user_agent: Mozilla/5.0 (Linux; U; Android 4.2.2; ja-jp; SOL22 Build/10.3.1.D.0.257) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30 YJApp-ANDROID jp.co.yahoo.android.yjtop/3.15.1
112
- client:
113
- type: mobile app
114
- name: Yahoo! Japan
115
- version: "3.15.1"
116
- -
117
- user_agent: RSSRadio/9220 (iPad;iOS;12.3.1)
118
- client:
119
- type: mobile app
120
- name: RSSRadio
121
- version: "9220"
122
- -
123
- user_agent: RSSRadio/9252
124
- client:
125
- type: mobile app
126
- name: RSSRadio
127
- version: "9252"
128
- -
129
- user_agent: RSSRadio/
130
- client:
131
- type: mobile app
132
- name: RSSRadio
133
- version: ""
134
- -
135
- user_agent: Mozilla/5.0 (Linux; Android 7.0; JMM-AL00 Build/HONORJMM-AL00; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/62.0.3202.84 Mobile Safari/537.36 SogouSearch Android1.0 version3.0 AppVersion/6002
136
- client:
137
- type: mobile app
138
- name: SogouSearch App
139
- version: "3.0"
140
- -
141
- user_agent: Dalvik/2.1.0 (Linux; U; Android 6.0.1; MI 4LTE MIUI/V7.3.2.0.MXDCNDD) NewsArticle/5.1.3
142
- client:
143
- type: mobile app
144
- name: NewsArticle App
145
- version: "5.1.3"
146
- -
147
- user_agent: Mozilla/5.0 (Linux; Android 5.1; m2 note) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/33.0.0.0 Mobile Safari/537.36 baidubrowser/5.3.4.0 (Baidu; P1 4.3.1) tieba/6.7.2 BMW
148
- client:
149
- type: mobile app
150
- name: tieba
151
- version: "6.7.2"
152
- -
153
- user_agent: com.douban.group/2.2.0(220) Mozilla/5.0 (Linux; U; Android 4.1.1; zh-cn; MI 2A Build/JRO03L) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30
154
- client:
155
- type: mobile app
156
- name: douban App
157
- version: "2.2.0"
158
- -
159
- user_agent: Mozilla/5.0 (Linux; Android 7.0; VIE-L09 Build/HUAWEIVIE-L09; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/59.0.3071.125 Mobile Safari/537.36 BingWeb/6.9.25207603
160
- client:
161
- type: mobile app
162
- name: BingWebApp
163
- version: "6.9.25207603"
164
- -
165
- user_agent: Mozilla/5.0 (Linux; U; Android 4.1.2; fr-ca; LT30a Build/9.1.A.0.489) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30 GSA/3.3.11.1069658.arm
166
- client:
167
- type: mobile app
168
- name: Google Search App
169
- version: "3.3.11.1069658"
170
- -
171
- user_agent: Mozilla/5.0 (Linux; U; Android 2.3.4; ru-ru; WT19i Build/4.0.2.A.0.58) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 Flipboard/2.1.2/854,2.1.2.854,2013-12-05 11:59, +0300
172
- client:
173
- type: mobile app
174
- name: Flipboard App
175
- version: "2.1.2"
176
- -
177
- user_agent: Mozilla/5.0 (Linux; Android 6.0.1; ASUS_Z011D Build/MMB29P; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/67.0.3396.87 Mobile Safari/537.36 Instagram 53.0.0.13.84 Android (23/6.0.1; 480dpi; 1080x1920; asus; ASUS_Z011D; ASUS_Z011; qcom; fr_FR; 116756948)
178
- client:
179
- type: mobile app
180
- name: Instagram App
181
- version: "53.0.0.13.84"
182
- -
183
- user_agent: TCL J706T_TD/1.0 Linux/3.4.5 Android/4.1.2 Release/08.27.2013 Browser/AppleWebKit534.30 Profile/MIDP-2.0 Configuration/CLDC-1.1 baiduboxapp/4.2 (Baidu; P1 4.1.2)
184
- client:
185
- type: mobile app
186
- name: Baidu Box App
187
- version: "4.2"
188
- -
189
- user_agent: Mozilla/5.0 (Linux; Android 4.4.4; GT-I9195I Build/KTU84P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.130 Crosswalk/14.43.343.17 Mobile Safari/537.36
190
- client:
191
- type: mobile app
192
- name: CrosswalkApp
193
- version: "14.43.343.17"
194
- -
195
- user_agent: Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.2.10 (KHTML, like Gecko) Mobile/15A372 Twitter for iPhone/7.52
196
- client:
197
- type: mobile app
198
- name: Twitter
199
- version: "7.52"
200
- -
201
- user_agent: Mozilla/5.0 (iPhone; CPU iPhone OS 7_0 like Mac OS X; en-us) AppleWebKit/537.51.1 (KHTML, like Gecko) Mobile/11A465 Twitter for iPhone
202
- client:
203
- type: mobile app
204
- name: Twitter
205
- version: ""
206
- -
207
- user_agent: Mozilla/5.0 (Linux; Android 5.1; HTC Desire 628 Build/LMY47D; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/78.0.3904.108 Mobile Safari/537.36 JsSdk/2 TopBuzz/10.2.1 NetType/3G
208
- client:
209
- type: mobile app
210
- name: TopBuzz
211
- version: 10.2.1
212
- -
213
- user_agent: Mozilla/5.0 (iPhone; CPU iPhone OS 13_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.5 Mobile/15E148 Snapchat/10.77.0.54 (like Safari/604.1)
214
- client:
215
- type: mobile app
216
- name: Snapchat
217
- version: 10.77.0.54
@@ -1,115 +0,0 @@
1
- ---
2
- -
3
- user_agent: Outlook-Express/7.0 (MSIE 7.0; Windows NT 6.1; WOW64; Trident/6.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; AskTbORJ/5.15.9.29495; .NET4.0E; TmstmpExt)
4
- client:
5
- type: pim
6
- name: Outlook Express
7
- version: "7.0"
8
- -
9
- user_agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Win64; x64; Trident/7.0; .NET CLR 2.0.50727; SLCC2; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; InfoPath.3; .NET CLR 1.1.4322; FDM; Tablet PC 2.0; .NET4.0E; Microsoft Outlook 14.0.7113; ms-office; MSOffice 14)
10
- client:
11
- type: pim
12
- name: Microsoft Outlook
13
- version: "14.0.7113"
14
- -
15
- user_agent: Mozilla/5.0 (X11; Linux i686; rv:17.0) Gecko/20130330 Thunderbird/17.0.5
16
- client:
17
- type: pim
18
- name: Thunderbird
19
- version: "17.0.5"
20
- -
21
- user_agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 Lightning/2.6.4
22
- client:
23
- type: pim
24
- name: Thunderbird
25
- version: "24.4.0"
26
- -
27
- user_agent: Airmail 1.4 rv:238 (Macintosh; Mac OS X 10.9.2; hr_HR)
28
- client:
29
- type: pim
30
- name: Airmail
31
- version: "1.4"
32
- -
33
- user_agent: Airmail 1.3.3 rv:237 (Macintosh; Mac OS X 10.9.2; en_US)
34
- client:
35
- type: pim
36
- name: Airmail
37
- version: "1.3.3"
38
- -
39
- user_agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Icedove/24.4.0
40
- client:
41
- type: pim
42
- name: Thunderbird
43
- version: "24.4.0"
44
- -
45
- user_agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Icedove/24.4.0 Lightning/2.6.5
46
- client:
47
- type: pim
48
- name: Thunderbird
49
- version: "24.4.0"
50
- -
51
- user_agent: Mozilla/4.0 (compatible; Lotus-Notes/6.0; Windows-NT)
52
- client:
53
- type: pim
54
- name: Lotus Notes
55
- version: "6.0"
56
- -
57
- user_agent: Barca/2.8.4400
58
- client:
59
- type: pim
60
- name: Barca
61
- version: "2.8.4400"
62
- -
63
- user_agent: BarcaPro/1.4 L.1001
64
- client:
65
- type: pim
66
- name: Barca
67
- version: "1.4"
68
- -
69
- user_agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.1.8) Gecko/20100317 Postbox/1.1.3
70
- client:
71
- type: pim
72
- name: Postbox
73
- version: "1.1.3"
74
- -
75
- user_agent: Postbox 1.0b14 (Windows/2009072715)
76
- client:
77
- type: pim
78
- name: Postbox
79
- version: "1.0"
80
- -
81
- user_agent: MailBar/1.3.2 (Mac OS X Version 10.11.1 (Build 15B42))
82
- client:
83
- type: pim
84
- name: MailBar
85
- version: "1.3.2"
86
- -
87
- user_agent: The Bat! 4.0.0.22
88
- client:
89
- type: pim
90
- name: The Bat!
91
- version: "4.0.0.22"
92
- -
93
- user_agent: The Bat! Voyager 4.0.18.4
94
- client:
95
- type: pim
96
- name: The Bat!
97
- version: "4.0.18.4"
98
- -
99
- user_agent: DAVdroid/1.6.2-ose (2017/06/23; dav4android; okhttp3) Android/7.0
100
- client:
101
- type: pim
102
- name: DAVdroid
103
- version: "1.6.2"
104
- -
105
- user_agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.12) Gecko/20130823 Firefox/10.0.11esrpre Iceape/2.7.12
106
- client:
107
- type: pim
108
- name: SeaMonkey
109
- version: "2.7.12"
110
- -
111
- user_agent: Mozilla/5.0 (X11; Linux x86_64; rv:29.0) Gecko/20100101 Firefox/29.0 SeaMonkey/2.26a1 Lightning/3.1a1
112
- client:
113
- type: pim
114
- name: SeaMonkey
115
- version: "2.26"