← all modules
Sky.Http.Server.WebSocket
Sky.Http.Server.WebSocket
Sky.Http.Server.WebSocket — server-side WebSocket upgrade.
Types
type WebSocketServer
type alias WebSocketServerCfg msg = { onConnect : WebSocketServer -> Task Error () , onMessage : WebSocketServer -> String -> Task Error () , onFrame : WebSocketServer -> WebSocketMessage -> Task Error () , frameMode : Bool , onClose : WebSocketServer -> Task Error () , onError : WebSocketServer -> Error -> Task Error () , maxMessageBytes : Int , originPatterns : List String }
Values
broadcast : List WebSocketServer -> String -> Task Error ()
`broadcast socks text` — fan a text frame out to every peer in
closeClient : WebSocketServer -> Task Error ()
`closeClient sock` — disconnect one peer. Idempotent.
defaultCfg : WebSocketServerCfg msg
All-defaults cfg. Override fields via the `with*` helpers.
sendBinaryToClient : WebSocketServer -> String -> Task Error ()
`sendBinaryToClient sock bytes` — write a binary frame to one peer.
sendToClient : WebSocketServer -> String -> Task Error ()
`sendToClient sock text` — write a text frame to one peer.
upgrade : Request -> WebSocketServerCfg msg -> Task Error Response
`upgrade req cfg` — accept an incoming WebSocket upgrade on
withMaxMessageBytes : Int -> WebSocketServerCfg msg -> WebSocketServerCfg msg
Cap incoming message size in bytes (default 1 MiB). Frames
withOnClose : (WebSocketServer -> Task Error ()) -> WebSocketServerCfg msg -> WebSocketServerCfg msg
withOnConnect : (WebSocketServer -> Task Error ()) -> WebSocketServerCfg msg -> WebSocketServerCfg msg
withOnError : (WebSocketServer -> Error -> Task Error ()) -> WebSocketServerCfg msg -> WebSocketServerCfg msg
withOnFrame : (WebSocketServer -> WebSocketMessage -> Task Error ()) -> WebSocketServerCfg msg -> WebSocketServerCfg msg
`withOnFrame cb cfg` — receive every frame WITH its type. `cb` gets
withOnMessage : (WebSocketServer -> String -> Task Error ()) -> WebSocketServerCfg msg -> WebSocketServerCfg msg
withOriginPatterns : List String -> WebSocketServerCfg msg -> WebSocketServerCfg msg
`withOriginPatterns ps cfg` — accept upgrades only from origins