This commit is contained in:
plane000
2018-07-23 10:30:37 +01:00
parent 0dc8d7d56c
commit 3f74792e84
10 changed files with 798 additions and 44 deletions

View File

@@ -0,0 +1,239 @@
time,temperature
2018-7-22 14:05:38,27
2018-7-22 14:06:38,27
2018-7-22 14:07:38,28
2018-7-22 14:08:38,28
2018-7-22 14:09:38,28
2018-7-22 14:10:38,28
2018-7-22 14:11:38,28
2018-7-22 14:12:38,28
2018-7-22 14:13:38,28
2018-7-22 14:14:38,28
2018-7-22 14:15:38,28
2018-7-22 14:16:38,28
2018-7-22 14:17:38,28
2018-7-22 14:18:38,28
2018-7-22 14:19:38,28
2018-7-22 14:20:38,28
2018-7-22 14:21:38,28
2018-7-22 14:22:38,28
2018-7-22 14:23:38,28
2018-7-22 14:24:38,28
2018-7-22 14:25:38,28
2018-7-22 14:26:38,28
2018-7-22 14:27:38,28
2018-7-22 14:28:38,28
2018-7-22 14:29:38,28
2018-7-22 14:30:38,28
2018-7-22 14:31:38,28
2018-7-22 14:32:38,28
2018-7-22 14:33:38,28
2018-7-22 14:34:38,28
2018-7-22 14:35:38,28
2018-7-22 14:36:38,28
2018-7-22 14:37:38,28
2018-7-22 14:38:38,28
2018-7-22 14:39:38,28
2018-7-22 14:40:38,28
2018-7-22 14:41:38,28
2018-7-22 14:42:38,28
2018-7-22 14:43:38,28
2018-7-22 14:44:38,28
2018-7-22 14:45:38,28
2018-7-22 14:46:38,28
2018-7-22 14:47:38,28
2018-7-22 14:48:38,28
2018-7-22 14:49:38,28
2018-7-22 14:50:38,28
2018-7-22 14:51:38,28
2018-7-22 14:52:38,28
2018-7-22 14:53:38,28
2018-7-22 14:54:38,28
2018-7-22 14:55:38,28
2018-7-22 14:56:38,28
2018-7-22 14:57:38,28
2018-7-22 14:58:38,28
2018-7-22 14:59:38,28
2018-7-22 15:00:38,28
2018-7-22 15:01:38,28
2018-7-22 15:02:38,28
2018-7-22 15:03:38,28
2018-7-22 15:04:38,28
2018-7-22 15:05:38,28
2018-7-22 15:06:38,28
2018-7-22 15:07:38,28
2018-7-22 15:08:38,28
2018-7-22 15:09:38,28
2018-7-22 15:10:38,28
2018-7-22 15:11:38,28
2018-7-22 15:12:38,28
2018-7-22 15:13:38,28
2018-7-22 15:14:38,28
2018-7-22 15:15:38,28
2018-7-22 15:16:38,28
2018-7-22 15:17:38,28
2018-7-22 15:18:38,28
2018-7-22 15:19:38,28
2018-7-22 15:20:38,28
2018-7-22 15:21:38,28
2018-7-22 15:22:38,28
2018-7-22 15:23:38,28
2018-7-22 15:24:38,28
2018-7-22 15:25:38,28
2018-7-22 15:26:38,28
2018-7-22 15:27:38,28
2018-7-22 15:28:38,28
2018-7-22 15:29:38,28
2018-7-22 15:30:38,28
2018-7-22 15:31:38,28
2018-7-22 15:32:38,28
2018-7-22 15:33:38,28
2018-7-22 15:34:38,28
2018-7-22 15:35:38,28
2018-7-22 15:36:38,28
2018-7-22 15:37:38,28
2018-7-22 15:38:38,28
2018-7-22 15:39:38,28
2018-7-22 15:40:38,28
2018-7-22 15:41:38,28
2018-7-22 15:42:38,28
2018-7-22 15:43:38,28
2018-7-22 15:44:38,28
2018-7-22 15:45:38,28
2018-7-22 15:46:38,28
2018-7-22 15:47:38,28
2018-7-22 15:48:38,28
2018-7-22 15:49:38,28
2018-7-22 15:50:38,28
2018-7-22 15:51:38,28
2018-7-22 15:52:38,28
2018-7-22 15:53:38,28
2018-7-22 15:54:38,28
2018-7-22 15:55:38,28
2018-7-22 15:56:38,28
2018-7-22 15:57:38,28
2018-7-22 15:58:38,28
2018-7-22 15:59:38,28
2018-7-22 16:00:38,28
2018-7-22 16:01:38,28
2018-7-22 16:02:38,28
2018-7-22 16:03:38,28
2018-7-22 16:04:38,28
2018-7-22 16:05:38,28
2018-7-22 16:06:38,28
2018-7-22 16:07:38,28
2018-7-22 16:08:38,28
2018-7-22 16:09:38,28
2018-7-22 16:10:38,28
2018-7-22 16:11:38,28
2018-7-22 16:12:38,28
2018-7-22 16:13:38,28
2018-7-22 16:14:38,28
2018-7-22 16:15:38,28
2018-7-22 16:16:38,28
2018-7-22 16:17:38,28
2018-7-22 16:18:38,28
2018-7-22 16:19:38,28
2018-7-22 16:20:38,28
2018-7-22 16:21:38,28
2018-7-22 16:22:38,28
2018-7-22 16:23:38,28
2018-7-22 16:24:38,28
2018-7-22 16:25:38,28
2018-7-22 16:26:38,28
2018-7-22 16:27:38,28
2018-7-22 16:28:38,28
2018-7-22 16:29:38,28
2018-7-22 16:30:38,28
2018-7-22 16:31:38,28
2018-7-22 16:32:38,28
2018-7-22 16:33:38,28
2018-7-22 16:34:38,28
2018-7-22 16:35:38,28
2018-7-22 16:36:38,28
2018-7-22 16:37:38,28
2018-7-22 16:38:38,28
2018-7-22 16:39:38,28
2018-7-22 16:40:38,28
2018-7-22 16:41:38,28
2018-7-22 16:42:38,28
2018-7-22 16:43:38,28
2018-7-22 16:44:38,28
2018-7-22 16:45:39,28
2018-7-22 16:46:39,28
2018-7-22 16:47:39,28
2018-7-22 16:48:39,28
2018-7-22 16:49:39,28
2018-7-22 16:50:39,28
2018-7-22 16:51:39,28
2018-7-22 16:52:39,28
2018-7-22 16:53:39,28
2018-7-22 16:54:39,28
2018-7-22 16:55:39,28
2018-7-22 16:56:39,28
2018-7-22 16:57:39,28
2018-7-22 16:58:39,28
2018-7-22 16:59:39,28
2018-7-22 17:00:39,28
2018-7-22 17:01:39,28
2018-7-22 17:02:39,28
2018-7-22 17:03:39,28
2018-7-22 17:04:39,28
2018-7-22 17:05:39,28
2018-7-22 17:06:39,28
2018-7-22 17:07:39,28
2018-7-22 17:08:39,28
2018-7-22 17:09:39,28
2018-7-22 17:10:39,28
2018-7-22 17:11:39,28
2018-7-22 17:14:03,29
2018-7-22 17:15:03,30
2018-7-22 17:16:03,30
2018-7-22 17:17:03,30
2018-7-22 17:18:03,30
2018-7-22 17:19:03,30
2018-7-22 17:20:03,30
2018-7-22 17:21:03,30
2018-7-22 17:22:03,30
2018-7-22 17:23:03,30
2018-7-22 17:24:03,30
2018-7-22 17:25:03,30
2018-7-22 17:26:03,30
2018-7-22 17:27:03,30
2018-7-22 17:28:03,30
2018-7-22 17:29:03,30
2018-7-22 17:30:03,30
2018-7-22 17:31:03,30
2018-7-22 17:32:03,30
2018-7-22 17:33:03,30
2018-7-22 17:34:03,30
2018-7-22 17:35:03,30
2018-7-22 17:36:03,30
2018-7-22 17:37:03,30
2018-7-22 17:38:03,30
2018-7-22 17:39:03,30
2018-7-22 17:40:03,30
2018-7-22 17:41:03,30
2018-7-22 17:42:03,30
2018-7-22 17:43:03,30
2018-7-22 17:44:03,30
2018-7-22 17:45:03,30
2018-7-22 17:46:03,30
2018-7-22 17:47:03,30
2018-7-22 17:48:03,30
2018-7-22 17:49:03,30
2018-7-22 17:50:03,30
2018-7-22 17:51:03,30
2018-7-22 17:52:03,30
2018-7-22 17:53:03,30
2018-7-22 17:54:03,30
2018-7-22 17:55:03,30
2018-7-22 17:56:03,30
2018-7-22 17:57:03,30
2018-7-22 17:58:03,30
2018-7-22 17:59:03,30
2018-7-22 18:00:03,30
2018-7-22 18:01:03,30
2018-7-22 18:02:03,30
2018-7-22 18:03:03,30
2018-7-22 18:04:03,30
1 time temperature
2 2018-7-22 14:05:38 27
3 2018-7-22 14:06:38 27
4 2018-7-22 14:07:38 28
5 2018-7-22 14:08:38 28
6 2018-7-22 14:09:38 28
7 2018-7-22 14:10:38 28
8 2018-7-22 14:11:38 28
9 2018-7-22 14:12:38 28
10 2018-7-22 14:13:38 28
11 2018-7-22 14:14:38 28
12 2018-7-22 14:15:38 28
13 2018-7-22 14:16:38 28
14 2018-7-22 14:17:38 28
15 2018-7-22 14:18:38 28
16 2018-7-22 14:19:38 28
17 2018-7-22 14:20:38 28
18 2018-7-22 14:21:38 28
19 2018-7-22 14:22:38 28
20 2018-7-22 14:23:38 28
21 2018-7-22 14:24:38 28
22 2018-7-22 14:25:38 28
23 2018-7-22 14:26:38 28
24 2018-7-22 14:27:38 28
25 2018-7-22 14:28:38 28
26 2018-7-22 14:29:38 28
27 2018-7-22 14:30:38 28
28 2018-7-22 14:31:38 28
29 2018-7-22 14:32:38 28
30 2018-7-22 14:33:38 28
31 2018-7-22 14:34:38 28
32 2018-7-22 14:35:38 28
33 2018-7-22 14:36:38 28
34 2018-7-22 14:37:38 28
35 2018-7-22 14:38:38 28
36 2018-7-22 14:39:38 28
37 2018-7-22 14:40:38 28
38 2018-7-22 14:41:38 28
39 2018-7-22 14:42:38 28
40 2018-7-22 14:43:38 28
41 2018-7-22 14:44:38 28
42 2018-7-22 14:45:38 28
43 2018-7-22 14:46:38 28
44 2018-7-22 14:47:38 28
45 2018-7-22 14:48:38 28
46 2018-7-22 14:49:38 28
47 2018-7-22 14:50:38 28
48 2018-7-22 14:51:38 28
49 2018-7-22 14:52:38 28
50 2018-7-22 14:53:38 28
51 2018-7-22 14:54:38 28
52 2018-7-22 14:55:38 28
53 2018-7-22 14:56:38 28
54 2018-7-22 14:57:38 28
55 2018-7-22 14:58:38 28
56 2018-7-22 14:59:38 28
57 2018-7-22 15:00:38 28
58 2018-7-22 15:01:38 28
59 2018-7-22 15:02:38 28
60 2018-7-22 15:03:38 28
61 2018-7-22 15:04:38 28
62 2018-7-22 15:05:38 28
63 2018-7-22 15:06:38 28
64 2018-7-22 15:07:38 28
65 2018-7-22 15:08:38 28
66 2018-7-22 15:09:38 28
67 2018-7-22 15:10:38 28
68 2018-7-22 15:11:38 28
69 2018-7-22 15:12:38 28
70 2018-7-22 15:13:38 28
71 2018-7-22 15:14:38 28
72 2018-7-22 15:15:38 28
73 2018-7-22 15:16:38 28
74 2018-7-22 15:17:38 28
75 2018-7-22 15:18:38 28
76 2018-7-22 15:19:38 28
77 2018-7-22 15:20:38 28
78 2018-7-22 15:21:38 28
79 2018-7-22 15:22:38 28
80 2018-7-22 15:23:38 28
81 2018-7-22 15:24:38 28
82 2018-7-22 15:25:38 28
83 2018-7-22 15:26:38 28
84 2018-7-22 15:27:38 28
85 2018-7-22 15:28:38 28
86 2018-7-22 15:29:38 28
87 2018-7-22 15:30:38 28
88 2018-7-22 15:31:38 28
89 2018-7-22 15:32:38 28
90 2018-7-22 15:33:38 28
91 2018-7-22 15:34:38 28
92 2018-7-22 15:35:38 28
93 2018-7-22 15:36:38 28
94 2018-7-22 15:37:38 28
95 2018-7-22 15:38:38 28
96 2018-7-22 15:39:38 28
97 2018-7-22 15:40:38 28
98 2018-7-22 15:41:38 28
99 2018-7-22 15:42:38 28
100 2018-7-22 15:43:38 28
101 2018-7-22 15:44:38 28
102 2018-7-22 15:45:38 28
103 2018-7-22 15:46:38 28
104 2018-7-22 15:47:38 28
105 2018-7-22 15:48:38 28
106 2018-7-22 15:49:38 28
107 2018-7-22 15:50:38 28
108 2018-7-22 15:51:38 28
109 2018-7-22 15:52:38 28
110 2018-7-22 15:53:38 28
111 2018-7-22 15:54:38 28
112 2018-7-22 15:55:38 28
113 2018-7-22 15:56:38 28
114 2018-7-22 15:57:38 28
115 2018-7-22 15:58:38 28
116 2018-7-22 15:59:38 28
117 2018-7-22 16:00:38 28
118 2018-7-22 16:01:38 28
119 2018-7-22 16:02:38 28
120 2018-7-22 16:03:38 28
121 2018-7-22 16:04:38 28
122 2018-7-22 16:05:38 28
123 2018-7-22 16:06:38 28
124 2018-7-22 16:07:38 28
125 2018-7-22 16:08:38 28
126 2018-7-22 16:09:38 28
127 2018-7-22 16:10:38 28
128 2018-7-22 16:11:38 28
129 2018-7-22 16:12:38 28
130 2018-7-22 16:13:38 28
131 2018-7-22 16:14:38 28
132 2018-7-22 16:15:38 28
133 2018-7-22 16:16:38 28
134 2018-7-22 16:17:38 28
135 2018-7-22 16:18:38 28
136 2018-7-22 16:19:38 28
137 2018-7-22 16:20:38 28
138 2018-7-22 16:21:38 28
139 2018-7-22 16:22:38 28
140 2018-7-22 16:23:38 28
141 2018-7-22 16:24:38 28
142 2018-7-22 16:25:38 28
143 2018-7-22 16:26:38 28
144 2018-7-22 16:27:38 28
145 2018-7-22 16:28:38 28
146 2018-7-22 16:29:38 28
147 2018-7-22 16:30:38 28
148 2018-7-22 16:31:38 28
149 2018-7-22 16:32:38 28
150 2018-7-22 16:33:38 28
151 2018-7-22 16:34:38 28
152 2018-7-22 16:35:38 28
153 2018-7-22 16:36:38 28
154 2018-7-22 16:37:38 28
155 2018-7-22 16:38:38 28
156 2018-7-22 16:39:38 28
157 2018-7-22 16:40:38 28
158 2018-7-22 16:41:38 28
159 2018-7-22 16:42:38 28
160 2018-7-22 16:43:38 28
161 2018-7-22 16:44:38 28
162 2018-7-22 16:45:39 28
163 2018-7-22 16:46:39 28
164 2018-7-22 16:47:39 28
165 2018-7-22 16:48:39 28
166 2018-7-22 16:49:39 28
167 2018-7-22 16:50:39 28
168 2018-7-22 16:51:39 28
169 2018-7-22 16:52:39 28
170 2018-7-22 16:53:39 28
171 2018-7-22 16:54:39 28
172 2018-7-22 16:55:39 28
173 2018-7-22 16:56:39 28
174 2018-7-22 16:57:39 28
175 2018-7-22 16:58:39 28
176 2018-7-22 16:59:39 28
177 2018-7-22 17:00:39 28
178 2018-7-22 17:01:39 28
179 2018-7-22 17:02:39 28
180 2018-7-22 17:03:39 28
181 2018-7-22 17:04:39 28
182 2018-7-22 17:05:39 28
183 2018-7-22 17:06:39 28
184 2018-7-22 17:07:39 28
185 2018-7-22 17:08:39 28
186 2018-7-22 17:09:39 28
187 2018-7-22 17:10:39 28
188 2018-7-22 17:11:39 28
189 2018-7-22 17:14:03 29
190 2018-7-22 17:15:03 30
191 2018-7-22 17:16:03 30
192 2018-7-22 17:17:03 30
193 2018-7-22 17:18:03 30
194 2018-7-22 17:19:03 30
195 2018-7-22 17:20:03 30
196 2018-7-22 17:21:03 30
197 2018-7-22 17:22:03 30
198 2018-7-22 17:23:03 30
199 2018-7-22 17:24:03 30
200 2018-7-22 17:25:03 30
201 2018-7-22 17:26:03 30
202 2018-7-22 17:27:03 30
203 2018-7-22 17:28:03 30
204 2018-7-22 17:29:03 30
205 2018-7-22 17:30:03 30
206 2018-7-22 17:31:03 30
207 2018-7-22 17:32:03 30
208 2018-7-22 17:33:03 30
209 2018-7-22 17:34:03 30
210 2018-7-22 17:35:03 30
211 2018-7-22 17:36:03 30
212 2018-7-22 17:37:03 30
213 2018-7-22 17:38:03 30
214 2018-7-22 17:39:03 30
215 2018-7-22 17:40:03 30
216 2018-7-22 17:41:03 30
217 2018-7-22 17:42:03 30
218 2018-7-22 17:43:03 30
219 2018-7-22 17:44:03 30
220 2018-7-22 17:45:03 30
221 2018-7-22 17:46:03 30
222 2018-7-22 17:47:03 30
223 2018-7-22 17:48:03 30
224 2018-7-22 17:49:03 30
225 2018-7-22 17:50:03 30
226 2018-7-22 17:51:03 30
227 2018-7-22 17:52:03 30
228 2018-7-22 17:53:03 30
229 2018-7-22 17:54:03 30
230 2018-7-22 17:55:03 30
231 2018-7-22 17:56:03 30
232 2018-7-22 17:57:03 30
233 2018-7-22 17:58:03 30
234 2018-7-22 17:59:03 30
235 2018-7-22 18:00:03 30
236 2018-7-22 18:01:03 30
237 2018-7-22 18:02:03 30
238 2018-7-22 18:03:03 30
239 2018-7-22 18:04:03 30

View File

@@ -1,6 +1,6 @@
console.log('Connecting to server') console.log('Connecting to server')
var socket = io.connect('benkyd.duckdns.org:8081'); var socket = io.connect('benkyd.duckdns.org:7001');
let temp = []; let temp = [];
socket.on('connect', function(data) { socket.on('connect', function(data) {
@@ -13,7 +13,8 @@ socket.on('handshake', function(data) {
socket.on('temp', function(data) { socket.on('temp', function(data) {
console.log(data); console.log(data);
addPoint(data); if (data[0] * 2 != data[1]) socket.emmit('another');
addPoint(data[0]);
}); });
socket.on('lasthour', function(data) { socket.on('lasthour', function(data) {

View File

@@ -8,6 +8,7 @@ let io = require('socket.io')(server);
/* COMMUNICATION WITH ARDUINO AND CLENSING OF DATA */ /* COMMUNICATION WITH ARDUINO AND CLENSING OF DATA */
let lastHour = [] let lastHour = []
let history = [];
let temperature; let temperature;
const parser = new parsers.Readline({ const parser = new parsers.Readline({
delimiter: '\r\n' delimiter: '\r\n'
@@ -40,12 +41,12 @@ app.use('/', express.static(__dirname + '/client'));
app.get('/', function(req, res) { app.get('/', function(req, res) {
res.sendFile(__dirname + '/client/index.html'); res.sendFile(__dirname + '/client/index.html');
}); });
app.listen(8080); app.listen(7000);
console.log('Server listening on 80') console.log('Server listening on 8081')
/* WEBSOCKETS */ /* WEBSOCKETS */
server.listen(8081); server.listen(7001);
io.on('connection', (socket) => { io.on('connection', (socket) => {
let ip = socket.request.connection.remoteAddress; let ip = socket.request.connection.remoteAddress;
@@ -61,12 +62,18 @@ io.on('connection', (socket) => {
socket.emit('lasthour', lastHour); socket.emit('lasthour', lastHour);
setInterval(() => { setInterval(() => {
socket.emit('temp', temperature); socket.emit('temp', [temperature, temperature * 2]);
}, 60000); }, 60000);
}); });
socket.on('another', function(data) {
socket.emit('temp', [temperature, temperature * 2]);
});
}); });
setInterval(() => { setInterval(() => {
history.push(temperature);
lastHour.push(temperature); lastHour.push(temperature);
if (lastHour.length > 60) lastHour.splice(0,1); if (lastHour.length > 60) lastHour.splice(0,1);
fs.appendFileSync('client/history.csv', `${new Date().toLocaleString()},${temperature}\n`)
}, 60000) }, 60000)

View File

@@ -0,0 +1,17 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>BenChat</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" media="screen" href="style.css" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.1.1/socket.io.js"></script>
</head>
<body>
<textarea name="chat" id="chat" cols="60" rows="30" readonly></textarea>
<input type="text" name="in" id="in" placeholder="message">
<input type="submit" value="Send" onclick="messagesend()">
<script src="main.js"></script>
</body>
</html>

View File

@@ -0,0 +1,42 @@
var socket = io.connect('http://benkyd.duckdns.org:8083');
let name;
window.addEventListener('keydown', (event) => {
if (event.code == 'Enter') messagesend();
})
function messagesend() {
if (!name) {
while (name == null || name == undefined) {
name = prompt('Enter your name:');
tempname = name.replace(/^\s+/, '').replace(/\s+$/, '');
if (tempname === '') {
name = undefined;
}
}
}
let message = document.getElementById('in').value;
if (message == '' || message == ' ') {
document.getElementById('in').value = '';
return;
}
tempmessage = message.replace(/^\s+/, '').replace(/\s+$/, '');
if (tempname === '') {
document.getElementById('in').value = '';
return;
}
socket.emit('outward', {name: name, message: message})
document.getElementById('in').value = '';
}
socket.on('receive', (data) => {
console.log(data);
document.getElementById('chat').value = document.getElementById('chat').value + data;
document.getElementById('chat').scrollTop = document.getElementById('chat').scrollHeight;
});

View File

@@ -0,0 +1,19 @@
body {
background-color: rgb(245, 245, 245);
}
textarea {
resize: none;
left: 2px;
}
input {
position: absolute;
top: 60%;
left: 2px;
}
input[type=text] {
left: 70px;
width: 50%;
}

View File

@@ -0,0 +1,62 @@
const fs = require('fs');
const bodyParser = require('body-parser');
const utils = require('./utils');
let express = require('express');
let app = express();
let server = require('http').createServer(app);
let io = require('socket.io')(server);
app.use('/', express.static(__dirname + '/client'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
io.on('connection', (socket) => {
let ip = socket.request.connection.remoteAddress;
if (ip.startsWith('::ffff:')) ip = ip.substring(7);
console.log(`${utils.currenttime()} new client connected at ${ip}`)
socket.on('outward', async function(data) {
if (ip == '86.11.58.84' || ip == '178.128.34.116') {
socket.emit('receive', 'gey lol');
return;
}
// let rate = await rateLimit(socket);
// if (rate == -1) return;
name = data.name;
message = data.message;
let validate = validateMessage(message, socket);
if (validate == -1) return;
console.log(`${utils.currenttime()} ${name} {${ip}}: ${message}`);
socket.broadcast.emit('receive', `${name}: ${message} \n`);
socket.emit('receive', `${name}: ${message} \n`);
});
});
function validateMessage(message) {
if (message.length >= 2000) {
socket.emit('receive', `YOU HAVE EXEDED THE 2000 CHARICTER LIMIT: MESSAGE NOT SENT \n`);
}
}
let requests = [];
async function rateLimit(socket) {
if (requests.indexOf(socket.request.connection.remoteAddress) != -1) {
socket.emit('receive', `YOU ARE BEING RATE LIMITED, WAIT 1/2 SECOND\n`);
await utils.sleep('10');
while (requests.indexOf(socket.request.connection.remoteAddress) != -1) {
requests.splice(requests.indexOf(socket.request.connection.remoteAddress), 1);
}
return -1;
}
requests.push(socket.request.connection.remoteAddress);
}
app.listen(8082);
server.listen(8083);
console.log('Server listening on 8082 and sockets are listening on 8083')

View File

@@ -13,33 +13,113 @@
"negotiator": "0.6.1" "negotiator": "0.6.1"
} }
}, },
"after": {
"version": "0.8.2",
"resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz",
"integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8="
},
"array-flatten": { "array-flatten": {
"version": "1.1.1", "version": "1.1.1",
"resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
"integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI="
}, },
"arraybuffer.slice": {
"version": "0.0.7",
"resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz",
"integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog=="
},
"async-limiter": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz",
"integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg=="
},
"backo2": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz",
"integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc="
},
"base64-arraybuffer": {
"version": "0.1.5",
"resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz",
"integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg="
},
"base64id": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz",
"integrity": "sha1-R2iMuZu2gE8OBtPnY7HDLlfY5rY="
},
"better-assert": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz",
"integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=",
"requires": {
"callsite": "1.0.0"
}
},
"blob": {
"version": "0.0.4",
"resolved": "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz",
"integrity": "sha1-vPEwUspURj8w+fx+lbmkdjCpSSE="
},
"body-parser": { "body-parser": {
"version": "1.18.2", "version": "1.18.3",
"resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz",
"integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=", "integrity": "sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ=",
"requires": { "requires": {
"bytes": "3.0.0", "bytes": "3.0.0",
"content-type": "1.0.4", "content-type": "1.0.4",
"debug": "2.6.9", "debug": "2.6.9",
"depd": "1.1.2", "depd": "1.1.2",
"http-errors": "1.6.3", "http-errors": "1.6.3",
"iconv-lite": "0.4.19", "iconv-lite": "0.4.23",
"on-finished": "2.3.0", "on-finished": "2.3.0",
"qs": "6.5.1", "qs": "6.5.2",
"raw-body": "2.3.2", "raw-body": "2.3.3",
"type-is": "1.6.16" "type-is": "1.6.16"
},
"dependencies": {
"qs": {
"version": "6.5.2",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz",
"integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA=="
}
} }
}, },
"browser-request": {
"version": "0.3.3",
"resolved": "https://registry.npmjs.org/browser-request/-/browser-request-0.3.3.tgz",
"integrity": "sha1-ns5bWsqJopkyJC4Yv5M975h2zBc="
},
"bytes": { "bytes": {
"version": "3.0.0", "version": "3.0.0",
"resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
"integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg="
}, },
"callsite": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz",
"integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA="
},
"client-request": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/client-request/-/client-request-2.3.0.tgz",
"integrity": "sha1-xGBPcfgclLKAZZV5oXu8BEb+whI="
},
"component-bind": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz",
"integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E="
},
"component-emitter": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz",
"integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY="
},
"component-inherit": {
"version": "0.0.3",
"resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz",
"integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM="
},
"content-disposition": { "content-disposition": {
"version": "0.5.2", "version": "0.5.2",
"resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz",
@@ -88,6 +168,69 @@
"resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
"integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k="
}, },
"engine.io": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.2.0.tgz",
"integrity": "sha512-mRbgmAtQ4GAlKwuPnnAvXXwdPhEx+jkc0OBCLrXuD/CRvwNK3AxRSnqK4FSqmAMRRHryVJP8TopOvmEaA64fKw==",
"requires": {
"accepts": "1.3.5",
"base64id": "1.0.0",
"cookie": "0.3.1",
"debug": "3.1.0",
"engine.io-parser": "2.1.2",
"ws": "3.3.3"
},
"dependencies": {
"debug": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
"integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
"requires": {
"ms": "2.0.0"
}
}
}
},
"engine.io-client": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.2.1.tgz",
"integrity": "sha512-y5AbkytWeM4jQr7m/koQLc5AxpRKC1hEVUb/s1FUAWEJq5AzJJ4NLvzuKPuxtDi5Mq755WuDvZ6Iv2rXj4PTzw==",
"requires": {
"component-emitter": "1.2.1",
"component-inherit": "0.0.3",
"debug": "3.1.0",
"engine.io-parser": "2.1.2",
"has-cors": "1.1.0",
"indexof": "0.0.1",
"parseqs": "0.0.5",
"parseuri": "0.0.5",
"ws": "3.3.3",
"xmlhttprequest-ssl": "1.5.5",
"yeast": "0.1.2"
},
"dependencies": {
"debug": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
"integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
"requires": {
"ms": "2.0.0"
}
}
}
},
"engine.io-parser": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.2.tgz",
"integrity": "sha512-dInLFzr80RijZ1rGpx1+56/uFoH7/7InhH3kZt+Ms6hT8tNx3NGW/WNSA/f8As1WkOfkuyb3tnRyuXGxusclMw==",
"requires": {
"after": "0.8.2",
"arraybuffer.slice": "0.0.7",
"base64-arraybuffer": "0.1.5",
"blob": "0.0.4",
"has-binary2": "1.0.3"
}
},
"escape-html": { "escape-html": {
"version": "1.0.3", "version": "1.0.3",
"resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
@@ -133,6 +276,64 @@
"type-is": "1.6.16", "type-is": "1.6.16",
"utils-merge": "1.0.1", "utils-merge": "1.0.1",
"vary": "1.1.2" "vary": "1.1.2"
},
"dependencies": {
"body-parser": {
"version": "1.18.2",
"resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz",
"integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=",
"requires": {
"bytes": "3.0.0",
"content-type": "1.0.4",
"debug": "2.6.9",
"depd": "1.1.2",
"http-errors": "1.6.3",
"iconv-lite": "0.4.19",
"on-finished": "2.3.0",
"qs": "6.5.1",
"raw-body": "2.3.2",
"type-is": "1.6.16"
}
},
"iconv-lite": {
"version": "0.4.19",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz",
"integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ=="
},
"raw-body": {
"version": "2.3.2",
"resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz",
"integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=",
"requires": {
"bytes": "3.0.0",
"http-errors": "1.6.2",
"iconv-lite": "0.4.19",
"unpipe": "1.0.0"
},
"dependencies": {
"depd": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz",
"integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k="
},
"http-errors": {
"version": "1.6.2",
"resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz",
"integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=",
"requires": {
"depd": "1.1.1",
"inherits": "2.0.3",
"setprototypeof": "1.0.3",
"statuses": "1.4.0"
}
},
"setprototypeof": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz",
"integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ="
}
}
}
} }
}, },
"finalhandler": { "finalhandler": {
@@ -159,6 +360,24 @@
"resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
"integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac="
}, },
"fs": {
"version": "0.0.1-security",
"resolved": "https://registry.npmjs.org/fs/-/fs-0.0.1-security.tgz",
"integrity": "sha1-invTcYa23d84E/I4WLV+yq9eQdQ="
},
"has-binary2": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz",
"integrity": "sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==",
"requires": {
"isarray": "2.0.1"
}
},
"has-cors": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz",
"integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk="
},
"http-errors": { "http-errors": {
"version": "1.6.3", "version": "1.6.3",
"resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
@@ -171,9 +390,17 @@
} }
}, },
"iconv-lite": { "iconv-lite": {
"version": "0.4.19", "version": "0.4.23",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz",
"integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==",
"requires": {
"safer-buffer": "2.1.2"
}
},
"indexof": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz",
"integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10="
}, },
"inherits": { "inherits": {
"version": "2.0.3", "version": "2.0.3",
@@ -185,6 +412,11 @@
"resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.6.0.tgz", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.6.0.tgz",
"integrity": "sha1-4/o1e3c9phnybpXwSdBVxyeW+Gs=" "integrity": "sha1-4/o1e3c9phnybpXwSdBVxyeW+Gs="
}, },
"isarray": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz",
"integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4="
},
"media-typer": { "media-typer": {
"version": "0.3.0", "version": "0.3.0",
"resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
@@ -228,6 +460,11 @@
"resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz",
"integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk="
}, },
"object-component": {
"version": "0.0.3",
"resolved": "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz",
"integrity": "sha1-8MaapQ78lbhmwYb0AKM3acsvEpE="
},
"on-finished": { "on-finished": {
"version": "2.3.0", "version": "2.3.0",
"resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
@@ -236,6 +473,22 @@
"ee-first": "1.1.1" "ee-first": "1.1.1"
} }
}, },
"parseqs": {
"version": "0.0.5",
"resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz",
"integrity": "sha1-1SCKNzjkZ2bikbouoXNoSSGouJ0=",
"requires": {
"better-assert": "1.0.2"
}
},
"parseuri": {
"version": "0.0.5",
"resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.5.tgz",
"integrity": "sha1-gCBKUNTbt3m/3G6+J3jZDkvOMgo=",
"requires": {
"better-assert": "1.0.2"
}
},
"parseurl": { "parseurl": {
"version": "1.3.2", "version": "1.3.2",
"resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz",
@@ -266,37 +519,14 @@
"integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=" "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4="
}, },
"raw-body": { "raw-body": {
"version": "2.3.2", "version": "2.3.3",
"resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz", "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.3.tgz",
"integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=", "integrity": "sha512-9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw==",
"requires": { "requires": {
"bytes": "3.0.0", "bytes": "3.0.0",
"http-errors": "1.6.2", "http-errors": "1.6.3",
"iconv-lite": "0.4.19", "iconv-lite": "0.4.23",
"unpipe": "1.0.0" "unpipe": "1.0.0"
},
"dependencies": {
"depd": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz",
"integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k="
},
"http-errors": {
"version": "1.6.2",
"resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz",
"integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=",
"requires": {
"depd": "1.1.1",
"inherits": "2.0.3",
"setprototypeof": "1.0.3",
"statuses": "1.4.0"
}
},
"setprototypeof": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz",
"integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ="
}
} }
}, },
"safe-buffer": { "safe-buffer": {
@@ -304,6 +534,11 @@
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz",
"integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg=="
}, },
"safer-buffer": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
"integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
},
"send": { "send": {
"version": "0.16.2", "version": "0.16.2",
"resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz",
@@ -340,11 +575,95 @@
"resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz",
"integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ=="
}, },
"socket.io": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.1.1.tgz",
"integrity": "sha512-rORqq9c+7W0DAK3cleWNSyfv/qKXV99hV4tZe+gGLfBECw3XEhBy7x85F3wypA9688LKjtwO9pX9L33/xQI8yA==",
"requires": {
"debug": "3.1.0",
"engine.io": "3.2.0",
"has-binary2": "1.0.3",
"socket.io-adapter": "1.1.1",
"socket.io-client": "2.1.1",
"socket.io-parser": "3.2.0"
},
"dependencies": {
"debug": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
"integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
"requires": {
"ms": "2.0.0"
}
}
}
},
"socket.io-adapter": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.1.tgz",
"integrity": "sha1-KoBeihTWNyEk3ZFZrUUC+MsH8Gs="
},
"socket.io-client": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.1.1.tgz",
"integrity": "sha512-jxnFyhAuFxYfjqIgduQlhzqTcOEQSn+OHKVfAxWaNWa7ecP7xSNk2Dx/3UEsDcY7NcFafxvNvKPmmO7HTwTxGQ==",
"requires": {
"backo2": "1.0.2",
"base64-arraybuffer": "0.1.5",
"component-bind": "1.0.0",
"component-emitter": "1.2.1",
"debug": "3.1.0",
"engine.io-client": "3.2.1",
"has-binary2": "1.0.3",
"has-cors": "1.1.0",
"indexof": "0.0.1",
"object-component": "0.0.3",
"parseqs": "0.0.5",
"parseuri": "0.0.5",
"socket.io-parser": "3.2.0",
"to-array": "0.1.4"
},
"dependencies": {
"debug": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
"integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
"requires": {
"ms": "2.0.0"
}
}
}
},
"socket.io-parser": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.2.0.tgz",
"integrity": "sha512-FYiBx7rc/KORMJlgsXysflWx/RIvtqZbyGLlHZvjfmPTPeuD/I8MaW7cfFrj5tRltICJdgwflhfZ3NVVbVLFQA==",
"requires": {
"component-emitter": "1.2.1",
"debug": "3.1.0",
"isarray": "2.0.1"
},
"dependencies": {
"debug": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
"integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
"requires": {
"ms": "2.0.0"
}
}
}
},
"statuses": { "statuses": {
"version": "1.4.0", "version": "1.4.0",
"resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz",
"integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==" "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew=="
}, },
"to-array": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz",
"integrity": "sha1-F+bBH3PdTz10zaek/zI46a2b+JA="
},
"type-is": { "type-is": {
"version": "1.6.16", "version": "1.6.16",
"resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz", "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz",
@@ -354,6 +673,11 @@
"mime-types": "2.1.19" "mime-types": "2.1.19"
} }
}, },
"ultron": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz",
"integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og=="
},
"unpipe": { "unpipe": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
@@ -368,6 +692,26 @@
"version": "1.1.2", "version": "1.1.2",
"resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
"integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw="
},
"ws": {
"version": "3.3.3",
"resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz",
"integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==",
"requires": {
"async-limiter": "1.0.0",
"safe-buffer": "5.1.1",
"ultron": "1.1.1"
}
},
"xmlhttprequest-ssl": {
"version": "1.5.5",
"resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz",
"integrity": "sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4="
},
"yeast": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz",
"integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk="
} }
} }
} }

View File

@@ -9,6 +9,11 @@
"author": "Ben (plane000)", "author": "Ben (plane000)",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"express": "^4.16.3" "body-parser": "^1.18.3",
"browser-request": "^0.3.3",
"client-request": "^2.3.0",
"express": "^4.16.3",
"fs": "0.0.1-security",
"socket.io": "^2.1.1"
} }
} }

View File

@@ -0,0 +1,18 @@
module.exports.currenttime = function() {
let d = new Date(Date.now());
return `[${pad(d.getHours(), 2)}:${pad(d.getMinutes(), 2)}:${pad(d.getSeconds(), 2)}]`;
}
function pad(n, width, z) {
z = z || '0';
n = n + '';
return n.length >= width ? n : new Array(width - n.length + 1).join(z) + n;
}
module.exports.sleep = function(ms) {
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve();
}, ms);
});
}