lamassu-server/lamassu-admin-elm/src/ClientServerWebsocket.elm
2018-10-08 21:29:06 +02:00

45 lines
772 B
Elm

module ClientServerWebsocket exposing (..)
-- Elm might not be the best platform for this kind of thing
-- Hard to do a global lookup table
-- Might be easiest to just use HTTP for this for now
-- No need to prematurely optimize and go against the flow
import WebSocket
type Msg
= OK
| Timeout
type alias Client =
Sub Msg
init : String -> Client
init url =
let
sub =
WebSocket.listen url parsePacket
in
sub
request : Client -> String -> String -> Cmd Msg
request client url payload =
let
cmd =
Cmd.map (respond client) (WebSocket.send url payload)
in
cmd
parsePacket : String -> Msg
parsePacket packet =
OK
respond : client -> (a -> Msg)
respond client =
(\_ -> OK)