|
112 | 112 | height: "340px",
|
113 | 113 | hidden: true
|
114 | 114 | });
|
| 115 | + |
| 116 | + sysWindow = new WinBox("System", { |
| 117 | + html: "<canvas id='sysLoadCanvas' width='220' height='100'></canvas>", |
| 118 | + class: ["no-full", "no-max", "modern"], |
| 119 | + width: "250px", |
| 120 | + height: "150px", |
| 121 | + hidden: true |
| 122 | + }); |
| 123 | + var sysLoadChart; |
| 124 | + var sysLoadSeries = new TimeSeries(); |
| 125 | + |
115 | 126 | xferWindow = new WinBox("Transferring", {
|
116 | 127 | html: "<svg width='100' height='100' viewBox='0 0 100 100'>" +
|
117 | 128 | "<circle cx='50' cy='50' r='40' stroke='#eee' stroke-width='8' fill='none'/>" +
|
|
127 | 138 | });
|
128 | 139 | var xferChart;
|
129 | 140 | var xferSeries = new TimeSeries();
|
| 141 | + |
130 | 142 | consoleWindow.focus()
|
131 | 143 | </script>
|
132 | 144 | <script src="./assets/jquery.min.js"></script>
|
|
270 | 282 | case 'POWER': power_event(message); break;
|
271 | 283 | case 'SESSION': ignore_message(message); break;
|
272 | 284 | case 'STORAGE': storage_event(message); break;
|
| 285 | + case 'SYSTEM': system_event(message); break; |
273 | 286 | case 'console-output': console_output(message); break;
|
274 | 287 | case 'mtda-version': mtda_version(message); break;
|
275 | 288 | case 'session': session_set_id(message); break;
|
|
407 | 420 | }
|
408 | 421 | });
|
409 | 422 |
|
| 423 | + function system_event(data) { |
| 424 | + data = data.event.split(" "); |
| 425 | + let loadavg = data[0]; |
| 426 | + |
| 427 | + if (sysWindow.hidden) { |
| 428 | + sysWindow.show(); |
| 429 | + sysLoadChart = new SmoothieChart({ |
| 430 | + millisPerPixel: 100, |
| 431 | + maxValueScale: 1.2, |
| 432 | + minValueScale: 1.2, |
| 433 | + grid: { fillStyle: 'rgba(40, 40, 40, 0.2)', strokeStyle: 'rgba(90, 90, 90, 0.2)', verticalSections: 4 }, |
| 434 | + }); |
| 435 | + sysLoadChart.streamTo(document.getElementById("sysLoadCanvas"), 5000); |
| 436 | + sysLoadChart.addTimeSeries(sysLoadSeries, { strokeStyle: 'rgb(0, 255, 0)', lineWidth: 2 }); |
| 437 | + } |
| 438 | + sysLoadSeries.append(Date.now(), loadavg); |
| 439 | + } |
| 440 | + |
410 | 441 | function delay(ms) {
|
411 | 442 | return new Promise(resolve => setTimeout(resolve, ms));
|
412 | 443 | }
|
|
0 commit comments