summaryrefslogtreecommitdiff
path: root/src/server/api/stream/server.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/api/stream/server.ts')
-rw-r--r--src/server/api/stream/server.ts19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/server/api/stream/server.ts b/src/server/api/stream/server.ts
new file mode 100644
index 0000000000..4ca2ad1b10
--- /dev/null
+++ b/src/server/api/stream/server.ts
@@ -0,0 +1,19 @@
+import * as websocket from 'websocket';
+import Xev from 'xev';
+
+const ev = new Xev();
+
+export default function(request: websocket.request, connection: websocket.connection): void {
+ const onStats = stats => {
+ connection.send(JSON.stringify({
+ type: 'stats',
+ body: stats
+ }));
+ };
+
+ ev.addListener('stats', onStats);
+
+ connection.on('close', () => {
+ ev.removeListener('stats', onStats);
+ });
+}