call: ApplicationCall,
    protocol: String? = null,
    handle: suspend WebSocketSession.() -> Unit)

An OutgoingContent response object that could be used to respond(): it will cause application engine to perform HTTP upgrade and start websocket RAW session.

Please note that you generally shouldn’t use this object directly but use WebSockets feature with routing builders webSocket instead.

handle function is applied to a session and as far as it is a RAW session, you should handle all low-level frames yourself and deal with ping/pongs, timeouts, close frames, frame fragmentation and so on.


call - that is starting web socket session

protocol - web socket negotiated protocol name (optional)

handle - function that is started once HTTP upgrade complete and the session will end once this function exit