GlidingSquirrel : SBRL.GlidingSquirrel.Websocket Namespace

WebsocketClient Class

Represents a websockets connection to a remote client. Also used by the SBRL.GlidingSquirrel.Websocket.WebsocketServer class to represent a currently conencted client, since they practically use the same handling code and all :P

Syntax

public class WebsocketClient

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

Members

See Also: Inherited members from object.

Public Constructors

Creates a new websocket client connection.

Public Fields

CloseFrameReplyWaitTime int . The number of milliseconds to wait for a reply to close frames we send out.
readonly
CloseOnUnknownFrameType bool . Whether the server should close the connection if a frame with an unknown frame type is receieved.
LastCommunication DateTime . The date and time that the last communication from this websockets client was received. Useful for dropping idle connections, since this value takes pong frames into account.

Protected Fields

rand Random . An instance of C#'s built-in random number generator.

Public Properties

[read-only]
ExitCode WebsocketCloseReason . The code with which this websocket client connection exited with.
[read-only]
HandshakeRequest SBRL.GlidingSquirrel.Http.HttpRequest . The opening handshake HTTP request that this client sent whilst connecting.
[read-only]
IsClosed bool . Whether this websocket client has closed it connection or not. Note that even if the connection is open, you may not be able to send a message. See WebsocketClient.IsClosing for more information.
[read-only]
IsClosing bool . Whether this websocket client is currently in the process of closing it's connection.
MaximumTransmissionSize int . The maximum size of any websocket frames sent to this client. Defaults to 2MiB.
[read-only]
ReceivedCloseFrame bool . Whether we've received a close frame from this client.
[read-only]
RemoteEndpoint System.Net.IPEndPoint . The remote endpoint that this websocket client is connected to.
[read-only]
SentCloseFrame bool . Whether we've sent a close frame to this client.
[read-only]
UncleanExit bool . Whether this connection was closed uncleanly or not.

Public Methods

Close (WebsocketCloseReason, string) : System.Threading.Tasks.Task
Gracefully closes the connection to this Websocket client.
static
CompleteWebsocketKeyChallenge (string) : string
Calculates the appropriate response to the sec-websocket-key header challenge.
Destroy () : System.Threading.Tasks.Task
Destroys this connection as fast as possible. Useful when a client is misbehaving.
Listen () : System.Threading.Tasks.Task
Listens for frames from this Websockets client and handles them appropriately, firing the right events.
Ping () : System.Threading.Tasks.Task
Send a ping frame to this client. The websocket server handles sending these automagically, so you shouldn't need to call this method directly.
Send (byte[]) : System.Threading.Tasks.Task
Sends the given byte array to this client in a binary frame.
Send (string) : System.Threading.Tasks.Task
Sends the specified string to this client in a text frame.
static
WithServerNegotiation (System.Net.Sockets.TcpClient, SBRL.GlidingSquirrel.Http.HttpRequest, SBRL.GlidingSquirrel.Http.HttpResponse) : System.Threading.Tasks.Task<WebsocketClient>
Handles an incoming Websocket client request and performing the associated handshake.

Protected Methods

handleNextFrame (object, NextFrameEventArgs) : System.Threading.Tasks.Task
Handles a single WebsocketFrame.
sendFrame (WebsocketFrame) : System.Threading.Tasks.Task
Sends a websocket frame to this client.
setup ()
Called when the listening socket is being setup. Useful for, ummm setup logic that needs variables to be preinitialised. May be overridden, but make sure that this method is still called!

Public Events

OnBinaryMessage Occurs when a binary message is received.
OnDisconnection Occurs when this client disconnects. Don't try to send any more frames after this event has been fired!
OnFrameRecieved Occurs when a frame is recieved from the remote host. You probably want OnTextMessage or OnBinaryMessage ;-)
OnTextMessage Occurs when a text message is received from the remote host. The default encoding is UTF8.

Member Details

WebsocketClient Constructor

Creates a new websocket client connection.

Syntax

public WebsocketClient (string remoteAddress)

Parameters

remoteAddress
Remote address.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

Close Method

Gracefully closes the connection to this Websocket client.

Syntax

[System.Diagnostics.DebuggerStepThrough]
[System.Runtime.CompilerServices.AsyncStateMachine(typeof(SBRL.GlidingSquirrel.Websocket.WebsocketClient/<Close>d__58))]
public System.Threading.Tasks.Task Close (WebsocketCloseReason closeReason, string closingMessage)

Parameters

closeReason
Documentation for this section has not yet been entered.
closingMessage
Documentation for this section has not yet been entered.

Returns

Documentation for this section has not yet been entered.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

CloseFrameReplyWaitTime Field

The number of milliseconds to wait for a reply to close frames we send out.

Syntax

public int CloseFrameReplyWaitTime

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

CloseOnUnknownFrameType Field

Whether the server should close the connection if a frame with an unknown frame type is receieved.

Syntax

public readonly bool CloseOnUnknownFrameType

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

CompleteWebsocketKeyChallenge Method

Calculates the appropriate response to the sec-websocket-key header challenge.

Syntax

public static string CompleteWebsocketKeyChallenge (string key)

Parameters

key
The challenge key to calculate the response for.

Returns

The websoocket key challenge.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

Destroy Method

Destroys this connection as fast as possible. Useful when a client is misbehaving.

Syntax

[System.Diagnostics.DebuggerStepThrough]
[System.Runtime.CompilerServices.AsyncStateMachine(typeof(SBRL.GlidingSquirrel.Websocket.WebsocketClient/<Destroy>d__61))]
public System.Threading.Tasks.Task Destroy ()

Returns

Documentation for this section has not yet been entered.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

ExitCode Property

The code with which this websocket client connection exited with.

Syntax

public WebsocketCloseReason ExitCode { get; }

Value

Documentation for this section has not yet been entered.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

handleNextFrame Method

Handles a single WebsocketFrame.

Syntax

[System.Diagnostics.DebuggerStepThrough]
[System.Runtime.CompilerServices.AsyncStateMachine(typeof(SBRL.GlidingSquirrel.Websocket.WebsocketClient/<handleNextFrame>d__54))]
protected System.Threading.Tasks.Task handleNextFrame (object sender, NextFrameEventArgs nextFrameEventArgs)

Parameters

sender
The sending websockets client.
nextFrameEventArgs
The ${ParameterType} instance containing the event data to process - including the all-important websockets frame.

Returns

Documentation for this section has not yet been entered.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

HandshakeRequest Property

The opening handshake HTTP request that this client sent whilst connecting.

Syntax

public SBRL.GlidingSquirrel.Http.HttpRequest HandshakeRequest { get; }

Value

The connection request.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

IsClosed Property

Whether this websocket client has closed it connection or not. Note that even if the connection is open, you may not be able to send a message. See WebsocketClient.IsClosing for more information.

Syntax

public bool IsClosed { get; }

Value

Documentation for this section has not yet been entered.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

IsClosing Property

Whether this websocket client is currently in the process of closing it's connection.

Syntax

public bool IsClosing { get; }

Value

Documentation for this section has not yet been entered.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

LastCommunication Field

The date and time that the last communication from this websockets client was received. Useful for dropping idle connections, since this value takes pong frames into account.

Syntax

public DateTime LastCommunication

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

Listen Method

Listens for frames from this Websockets client and handles them appropriately, firing the right events.

Syntax

[System.Diagnostics.DebuggerStepThrough]
[System.Runtime.CompilerServices.AsyncStateMachine(typeof(SBRL.GlidingSquirrel.Websocket.WebsocketClient/<Listen>d__52))]
public System.Threading.Tasks.Task Listen ()

Returns

Documentation for this section has not yet been entered.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

MaximumTransmissionSize Property

The maximum size of any websocket frames sent to this client. Defaults to 2MiB.

Syntax

public int MaximumTransmissionSize { get; set; }

Value

Documentation for this section has not yet been entered.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

OnBinaryMessage Event

Occurs when a binary message is received.

Syntax

public event BinaryMessageEventHandler OnBinaryMessage

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

OnDisconnection Event

Occurs when this client disconnects. Don't try to send any more frames after this event has been fired!

Syntax

public event ClientDisconnectedEventHandler OnDisconnection

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

OnFrameRecieved Event

Occurs when a frame is recieved from the remote host. You probably want OnTextMessage or OnBinaryMessage ;-)

Syntax

public event NextFrameEventHandler OnFrameRecieved

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

OnTextMessage Event

Occurs when a text message is received from the remote host. The default encoding is UTF8.

Syntax

public event TextMessageEventHandler OnTextMessage

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

Ping Method

Send a ping frame to this client. The websocket server handles sending these automagically, so you shouldn't need to call this method directly.

Syntax

[System.Diagnostics.DebuggerStepThrough]
[System.Runtime.CompilerServices.AsyncStateMachine(typeof(SBRL.GlidingSquirrel.Websocket.WebsocketClient/<Ping>d__57))]
public System.Threading.Tasks.Task Ping ()

Returns

Documentation for this section has not yet been entered.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

rand Field

An instance of C#'s built-in random number generator.

Syntax

protected Random rand

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

ReceivedCloseFrame Property

Whether we've received a close frame from this client.

Syntax

public bool ReceivedCloseFrame { get; }

Value

Documentation for this section has not yet been entered.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

RemoteEndpoint Property

The remote endpoint that this websocket client is connected to.

Syntax

public System.Net.IPEndPoint RemoteEndpoint { get; }

Value

The remote endpoint.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

Send Method

Sends the given byte array to this client in a binary frame.

Syntax

[System.Diagnostics.DebuggerStepThrough]
[System.Runtime.CompilerServices.AsyncStateMachine(typeof(SBRL.GlidingSquirrel.Websocket.WebsocketClient/<Send>d__56))]
public System.Threading.Tasks.Task Send (byte[] payload)

Parameters

payload
The payload to send.

Returns

Documentation for this section has not yet been entered.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

Send Method

Sends the specified string to this client in a text frame.

Syntax

[System.Diagnostics.DebuggerStepThrough]
[System.Runtime.CompilerServices.AsyncStateMachine(typeof(SBRL.GlidingSquirrel.Websocket.WebsocketClient/<Send>d__55))]
public System.Threading.Tasks.Task Send (string message)

Parameters

message
The message to send.

Returns

Documentation for this section has not yet been entered.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

sendFrame Method

Sends a websocket frame to this client.

Syntax

[System.Diagnostics.DebuggerStepThrough]
[System.Runtime.CompilerServices.AsyncStateMachine(typeof(SBRL.GlidingSquirrel.Websocket.WebsocketClient/<sendFrame>d__53))]
protected System.Threading.Tasks.Task sendFrame (WebsocketFrame frame)

Parameters

frame
The frame to send..

Returns

Documentation for this section has not yet been entered.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

SentCloseFrame Property

Whether we've sent a close frame to this client.

Syntax

public bool SentCloseFrame { get; }

Value

Documentation for this section has not yet been entered.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

setup Method

Called when the listening socket is being setup. Useful for, ummm setup logic that needs variables to be preinitialised. May be overridden, but make sure that this method is still called!

Syntax

protected void setup ()

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

UncleanExit Property

Whether this connection was closed uncleanly or not.

Syntax

public bool UncleanExit { get; }

Value

Documentation for this section has not yet been entered.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265

WithServerNegotiation Method

Handles an incoming Websocket client request and performing the associated handshake.

Syntax

[System.Diagnostics.DebuggerStepThrough]
[System.Runtime.CompilerServices.AsyncStateMachine(typeof(SBRL.GlidingSquirrel.Websocket.WebsocketClient/<WithServerNegotiation>d__62))]
public static System.Threading.Tasks.Task<WebsocketClient> WithServerNegotiation (System.Net.Sockets.TcpClient rawClient, SBRL.GlidingSquirrel.Http.HttpRequest handshakeRequest, SBRL.GlidingSquirrel.Http.HttpResponse handshakeResponse)

Parameters

rawClient
Documentation for this section has not yet been entered.
handshakeRequest
Documentation for this section has not yet been entered.
handshakeResponse
Documentation for this section has not yet been entered.

Returns

A new Websocket client connection with the negotation completed.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: SBRL.GlidingSquirrel.Websocket
Assembly: GlidingSquirrel (in GlidingSquirrel.dll)
Assembly Versions: 0.0.0.0, 1.0.6562.35419, 1.0.6562.35930, 1.0.6566.37627, 1.0.6620.40465, 1.0.6629.34522, 1.0.6744.34319, 1.0.6744.34540, 1.0.6746.26208, 1.0.6746.26412, 1.0.6746.26518, 1.0.6746.26789, 1.0.6746.26804, 1.0.6746.26825, 1.0.6746.26834, 1.0.6746.26851, 1.0.6746.26854, 1.0.6746.27195, 1.0.6746.27200, 1.0.6786.21077, 1.0.6786.21083, 1.0.6786.38758, 1.0.6786.38797, 1.0.6786.38837, 1.0.6786.38901, 1.0.6786.38913, 1.0.6786.39083, 1.0.6786.39119, 1.0.6786.39136, 1.0.6786.39265