sprinklers3/server/index.ts

29 lines
773 B
TypeScript
Raw Normal View History

/* tslint:disable:ordered-imports */
import "./configureAlias";
import "env";
import "./configureLogger";
import log from "@common/logger";
2018-05-24 10:36:16 -06:00
import {Server} from "http";
2017-10-09 08:09:08 -06:00
import * as WebSocket from "ws";
import { ServerState } from "./state";
import { createApp } from "./app";
import { WebSocketApi } from "./websocket";
const state = new ServerState();
const app = createApp(state);
const webSocketApi = new WebSocketApi(state);
2017-09-07 12:26:23 -06:00
const port = +(process.env.PORT || 8080);
const host = process.env.HOST || "0.0.0.0";
2017-10-09 08:09:08 -06:00
const server = new Server(app);
2018-05-24 10:36:16 -06:00
const webSocketServer = new WebSocket.Server({server});
webSocketServer.on("connection", webSocketApi.handleConnection);
2017-10-09 08:09:08 -06:00
2018-05-24 10:36:16 -06:00
state.start();
server.listen(port, host, () => {
2017-09-26 12:43:25 -06:00
log.info(`listening at ${host}:${port}`);
2017-09-07 12:26:23 -06:00
});