Endpoint for defining a route to provide a web socket. The handler function gets an already negotiated websocket Connection to send and receive data.
Example:
type WebSocketApi = "stream" :> WebSocket
server :: Server WebSocketApi
server = streamData
where
streamData :: MonadIO m => Connection -> m ()
streamData c = do
liftIO $ forkPingThread c 10
liftIO . forM_ [1..] $ \i -> do
sendTextData c (pack $ show (i :: Int)) >> threadDelay 1000000Instances2HasServer, ServerT
HasServer WebSocket ctxDefined in servant-websockets-2.0.0 · Servant.API.WebSockettype ServerT WebSocket m = Connection -> m ()Defined in servant-websockets-2.0.0 · Servant.API.WebSocket