Copyright | (C) 2016-2018 David M. Johnson |
---|---|
License | BSD3-style (see the file LICENSE) |
Maintainer | David M. Johnson <djohnson.m@gmail.com> |
Stability | experimental |
Portability | non-portable |
Safe Haskell | None |
Language | Haskell2010 |
Synopsis
- data WebSocket action
- newtype URL = URL MisoString
- newtype Protocols = Protocols [MisoString]
- data SocketState
- = CONNECTING
- | OPEN
- | CLOSING
- | CLOSED
- data CloseCode
- newtype WasClean = WasClean Bool
- newtype Reason = Reason MisoString
Types
data WebSocket action Source #
WebSocket connection messages
WebSocketMessage action | |
WebSocketClose CloseCode WasClean Reason | |
WebSocketOpen | |
WebSocketError MisoString |
URL of Websocket server
Protocols for Websocket connection
data SocketState Source #
SocketState
corresponding to current WebSocket connection
Instances
Code corresponding to a closed connection https://developer.mozilla.org/en-US/docs/Web/API/CloseEvent
CLOSE_NORMAL | 1000, Normal closure; the connection successfully completed whatever purpose for which it was created. |
CLOSE_GOING_AWAY | 1001, The endpoint is going away, either because of a server failure or because the browser is navigating away from the page that opened the connection. |
CLOSE_PROTOCOL_ERROR | 1002, The endpoint is terminating the connection due to a protocol error. |
CLOSE_UNSUPPORTED | 1003, The connection is being terminated because the endpoint received data of a type it cannot accept (for example, a textonly endpoint received binary data). |
CLOSE_NO_STATUS | 1005, Reserved. Indicates that no status code was provided even though one was expected. |
CLOSE_ABNORMAL | 1006, Reserved. Used to indicate that a connection was closed abnormally (that is, with no close frame being sent) when a status code is expected. |
Unsupported_Data | 1007, The endpoint is terminating the connection because a message was received that contained inconsistent data (e.g., nonUTF8 data within a text message). |
Policy_Violation | 1008, The endpoint is terminating the connection because it received a message that violates its policy. This is a generic status code, used when codes 1003 and 1009 are not suitable. |
CLOSE_TOO_LARGE | 1009, The endpoint is terminating the connection because a data frame was received that is too large. |
Missing_Extension | 1010, The client is terminating the connection because it expected the server to negotiate one or more extension, but the server didn't. |
Internal_Error | 1011, The server is terminating the connection because it encountered an unexpected condition that prevented it from fulfilling the request. |
Service_Restart | 1012, The server is terminating the connection because it is restarting. |
Try_Again_Later | 1013, The server is terminating the connection due to a temporary condition, e.g. it is overloaded and is casting off some of its clients. |
TLS_Handshake | 1015, Reserved. Indicates that the connection was closed due to a failure to perform a TLS handshake (e.g., the server certificate can't be verified). |
OtherCode Int | OtherCode that is reserved and not in the range 0999 |
Instances
Eq CloseCode Source # | |
Show CloseCode Source # | |
Generic CloseCode Source # | |
type Rep CloseCode Source # | |
Defined in Miso.WebSocket type Rep CloseCode = D1 (MetaData "CloseCode" "Miso.WebSocket" "miso-0.21.2.0-JYUNYHsQW6M2capj3LsrOE" False) (((C1 (MetaCons "CLOSE_NORMAL" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "CLOSE_GOING_AWAY" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "CLOSE_PROTOCOL_ERROR" PrefixI False) (U1 :: * -> *))) :+: ((C1 (MetaCons "CLOSE_UNSUPPORTED" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "CLOSE_NO_STATUS" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "CLOSE_ABNORMAL" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "Unsupported_Data" PrefixI False) (U1 :: * -> *)))) :+: (((C1 (MetaCons "Policy_Violation" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "CLOSE_TOO_LARGE" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "Missing_Extension" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "Internal_Error" PrefixI False) (U1 :: * -> *))) :+: ((C1 (MetaCons "Service_Restart" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "Try_Again_Later" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "TLS_Handshake" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "OtherCode" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Int)))))) |
Wether or not the connection closed was done so cleanly
Reason for closed connection