on 8cfc3ee help sign in
19 lines 717 B history raw
1import ProjectM36.Server.WebSocket
2import ProjectM36.Server.Config
3import ProjectM36.Server.ParseArgs
4import ProjectM36.Server
5import Control.Concurrent
6import qualified Network.WebSockets as WS
8main :: IO ()
9main = do
10 -- launch normal project-m36-server
11 portMVar <- newEmptyMVar
12 serverConfig <- parseConfig
13 let serverHost = bindHost serverConfig
14 _ <- forkFinally (launchServer serverConfig (Just portMVar)) failureHandler
15 --wait for server to be listening
16 serverPort <- takeMVar portMVar
17 --this built-in server is apparently not meant for production use, but it's easier to test than starting up the wai or snap interfaces
18 WS.runServer "0.0.0.0" 8888 (websocketProxyServer serverPort serverHost)