restructured stuff
[henge/kiak.git] / main.js
1 const electron = require('electron')
2 const app = electron.app
3 const url = require('url')
4 const WebSocket = require('ws')
5 const http = require('http')
6 const fs = require('fs')
7
8 const routes = {
9 '/': function root(response) {
10 response.write(fs.readFileSync('host/host.html'))
11 response.end()
12 },
13 '/admin.js': function js(response) {
14 response.write(fs.readFileSync('host/host.js'))
15 response.end()
16 },
17 '/adapter.js': function adapter(response) {
18 response.write(fs.readFileSync('adapter.js'))
19 response.end()
20 },
21 '/favicon.ico': function favicon(response) {
22 response.write('N/A')
23 response.end()
24 },
25 '/streamlist': function streamlist(response) {
26 getDefaultStream()
27 }
28 }
29
30 const rooms = {}
31
32
33 /* TODO: Swap out url.parse with regex? */
34 function determineResponse(request) {
35 const clientIP = request.connection.remoteAddress
36 || request.socket.remoteAddress
37 || request.connection.socket.remoteAddress
38 || req.headers['x-forwarded-for'].split(',')[0]
39 const parsedURL = url.parse(request.url)
40
41 /* Get the room name */
42 const pathname = parsedURL.pathname
43
44
45 }
46
47 app.on('ready', function() {
48 console.log('create server')
49 http.createServer(function(request, response) {
50
51 let route = determineResponse(request)
52
53 console.log('routing to ' + route)
54 routes[route](response)
55
56 }).listen(5140);
57
58 });