websocket-sharp : WebSocketSharp.Server Namespace

# WebSocketServiceHost<T> Generic Class

Provides the functions of the server that receives the WebSocket connection requests.

## Syntax

public class WebSocketServiceHost<T> : WebSocketServerBase, IServiceHost
where T : WebSocketSharp.Server.WebSocketService, new()

#### Type Parameters

> T
>   The type of the WebSocket service that the server provides. The T must inherit the WebSocketSharp.Server.WebSocketService class.

## Remarks

The WebSocketServiceHost<T> class provides the single WebSocket service.

## Requirements

Namespace: WebSocketSharp.Server
Assembly: websocket-sharp (in websocket-sharp.dll)

## Members

See Also: Inherited members from WebSocketServerBase.

## Public Constructors

| WebSocketServiceHost (int) | Initializes a new instance of the WebSocketServiceHost<T> class that listens for incoming connection attempts on the specified port.
| WebSocketServiceHost (string) | Initializes a new instance of the WebSocketServiceHost<T> class that listens for incoming connection attempts on the specified WebSocket URL.
| WebSocketServiceHost (int, bool) | Initializes a new instance of the WebSocketServiceHost<T> class that listens for incoming connection attempts on the specified port and secure.
| WebSocketServiceHost (int, string) | Initializes a new instance of the WebSocketServiceHost<T> class that listens for incoming connection attempts on the specified port and absPath.
| WebSocketServiceHost (int, string, bool) | Initializes a new instance of the WebSocketServiceHost<T> class that listens for incoming connection attempts on the specified port, absPath and secure.
| WebSocketServiceHost (System.Net.IPAddress, int, string) | Initializes a new instance of the WebSocketServiceHost<T> class that listens for incoming connection attempts on the specified address, port and absPath.
| WebSocketServiceHost (System.Net.IPAddress, int, string, bool) | Initializes a new instance of the WebSocketServiceHost<T> class that listens for incoming connection attempts on the specified address, port, absPath and secure.

## Public Properties

[read-only] | Address | System.Net.IPAddress . Gets the local IP address on which to listen for incoming connection attempts. (Inherited from WebSocketServerBase.)
[read-only] | IsSecure | bool . Gets a value indicating whether the server provides secure connection. (Inherited from WebSocketServerBase.)
[read-only] | IsSelfHost | bool . Gets a value indicating whether the server is self host. (Inherited from WebSocketServerBase.)
[read-only] | Port | int . Gets the port on which to listen for incoming connection attempts. (Inherited from WebSocketServerBase.)
| Sweeped | bool . Gets or sets a value indicating whether the server cleans up the inactive clients periodically.
[read-only] | Uri | Uri . Gets the WebSocket URL on which to listen for incoming connection attempts.

## Protected Properties

| BaseUri | Uri . Gets or sets the WebSocket URL on which to listen for incoming connection attempts. (Inherited from WebSocketServerBase.)

## Public Methods

| Broadcast (string) Broadcasts the specified string to all clients.
| Broadping (string) : Dictionary<string, bool> Pings with the specified string to all clients.
| Start () Starts to receive the WebSocket connection requests. (Inherited from WebSocketServerBase.)
override | Stop () Stops receiving the WebSocket connection requests.
| Stop () Stops receiving the WebSocket connection requests. (Inherited from WebSocketServerBase.)

## Protected Methods

override | AcceptWebSocket (WebSocketSharp.Net.WebSockets.TcpListenerWebSocketContext) Accepts a WebSocket connection request.
abstract | AcceptWebSocket (WebSocketSharp.Net.WebSockets.TcpListenerWebSocketContext) Accepts a WebSocket connection request. (Inherited from WebSocketServerBase.)
| Error (string) Occurs the WebSocketServerBase.OnError event with the specified string. (Inherited from WebSocketServerBase.)

## Public Events

| OnError | Occurs when the server gets an error. (Inherited from WebSocketServerBase.)

## Explicitly Implemented Interface Members

| WebSocketSharp.Server.IServiceHost.BindWebSocket | Binds the specified WebSocketSharp.Net.WebSockets.WebSocketContext to a WebSocketSharp.Server.WebSocketService instance.

## Extension Methods

static | IsNull<T> (this T) : bool Determines whether the specified object is `null`.
static | IsNullDo<T> (this T, Action) : bool Determines whether the specified object is `null`. And invokes the specified Action delegate if the specified object is `null`.

## Member Details

### WebSocketServiceHost Constructor

> Initializes a new instance of the WebSocketServiceHost<T> class that listens for incoming connection attempts on the specified port.

> ## Syntax

> public WebSocketServiceHost (int port)

> #### Parameters

> > port
> >   An int that contains a port number.

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: WebSocketSharp.Server
> Assembly: websocket-sharp (in websocket-sharp.dll)

### WebSocketServiceHost Constructor

> Initializes a new instance of the WebSocketServiceHost<T> class that listens for incoming connection attempts on the specified WebSocket URL.

> ## Syntax

> public WebSocketServiceHost (string url)

> #### Parameters

> > url
> >   A string that contains a WebSocket URL.

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: WebSocketSharp.Server
> Assembly: websocket-sharp (in websocket-sharp.dll)

### WebSocketServiceHost Constructor

> Initializes a new instance of the WebSocketServiceHost<T> class that listens for incoming connection attempts on the specified port and secure.

> ## Syntax

> public WebSocketServiceHost (int port, bool secure)

> #### Parameters

> > port
> >   An int that contains a port number.
> > secure
> >   A bool that indicates providing a secure connection or not. (`true` indicates providing a secure connection.)

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: WebSocketSharp.Server
> Assembly: websocket-sharp (in websocket-sharp.dll)

### WebSocketServiceHost Constructor

> Initializes a new instance of the WebSocketServiceHost<T> class that listens for incoming connection attempts on the specified port and absPath.

> ## Syntax

> public WebSocketServiceHost (int port, string absPath)

> #### Parameters

> > port
> >   An int that contains a port number.
> > absPath
> >   A string that contains an absolute path.

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: WebSocketSharp.Server
> Assembly: websocket-sharp (in websocket-sharp.dll)

### WebSocketServiceHost Constructor

> Initializes a new instance of the WebSocketServiceHost<T> class that listens for incoming connection attempts on the specified port, absPath and secure.

> ## Syntax

> public WebSocketServiceHost (int port, string absPath, bool secure)

> #### Parameters

> > port
> >   An int that contains a port number.
> > absPath
> >   A string that contains an absolute path.
> > secure
> >   A bool that indicates providing a secure connection or not. (`true` indicates providing a secure connection.)

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: WebSocketSharp.Server
> Assembly: websocket-sharp (in websocket-sharp.dll)

### WebSocketServiceHost Constructor

> Initializes a new instance of the WebSocketServiceHost<T> class that listens for incoming connection attempts on the specified address, port and absPath.

> ## Syntax

> public WebSocketServiceHost (System.Net.IPAddress address, int port, string absPath)

> #### Parameters

> > address
> >   A System.Net.IPAddress that contains a local IP address.
> > port
> >   An int that contains a port number.
> > absPath
> >   A string that contains an absolute path.

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: WebSocketSharp.Server
> Assembly: websocket-sharp (in websocket-sharp.dll)

### WebSocketServiceHost Constructor

> Initializes a new instance of the WebSocketServiceHost<T> class that listens for incoming connection attempts on the specified address, port, absPath and secure.

> ## Syntax

> public WebSocketServiceHost (System.Net.IPAddress address, int port, string absPath, bool secure)

> #### Parameters

> > address
> >   A System.Net.IPAddress that contains a local IP address.
> > port
> >   An int that contains a port number.
> > absPath
> >   A string that contains an absolute path.
> > secure
> >   A bool that indicates providing a secure connection or not. (`true` indicates providing a secure connection.)

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: WebSocketSharp.Server
> Assembly: websocket-sharp (in websocket-sharp.dll)

### AcceptWebSocket Method

> Accepts a WebSocket connection request.

> ## Syntax

> protected override void AcceptWebSocket (WebSocketSharp.Net.WebSockets.TcpListenerWebSocketContext context)

> #### Parameters

> > context
> >   A WebSocketSharp.Net.WebSockets.TcpListenerWebSocketContext that contains the WebSocket connection request objects.

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: WebSocketSharp.Server
> Assembly: websocket-sharp (in websocket-sharp.dll)

### Broadcast Method

> Broadcasts the specified string to all clients.

> ## Syntax

> public void Broadcast (string data)

> #### Parameters

> > data
> >   A string to broadcast.

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: WebSocketSharp.Server
> Assembly: websocket-sharp (in websocket-sharp.dll)

### Broadping Method

> Pings with the specified string to all clients.

> ## Syntax

> public Dictionary<string, bool> Broadping (string message)

> #### Parameters

> > message
> >   A string that contains a message.

> #### Returns

> > A Dictionary<string, bool> that contains the collection of session IDs and values indicating whether the server received the Pongs from each clients in a time.

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: WebSocketSharp.Server
> Assembly: websocket-sharp (in websocket-sharp.dll)

### Stop Method

> Stops receiving the WebSocket connection requests.

> ## Syntax

> public override void Stop ()

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: WebSocketSharp.Server
> Assembly: websocket-sharp (in websocket-sharp.dll)

### Sweeped Property

> Gets or sets a value indicating whether the server cleans up the inactive clients periodically.

> ## Syntax

> public bool Sweeped { get; set; }

> #### Value

> > `true` if the server cleans up the inactive clients every 60 seconds; otherwise, `false`. The default value is `true`.

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: WebSocketSharp.Server
> Assembly: websocket-sharp (in websocket-sharp.dll)

### Uri Property

> Gets the WebSocket URL on which to listen for incoming connection attempts.

> ## Syntax

> public Uri Uri { get; }

> #### Value

> > A Uri that contains a WebSocket URL.

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: WebSocketSharp.Server
> Assembly: websocket-sharp (in websocket-sharp.dll)

### WebSocketSharp.Server.IServiceHost.BindWebSocket Method

> Binds the specified WebSocketSharp.Net.WebSockets.WebSocketContext to a WebSocketSharp.Server.WebSocketService instance.

> ## Syntax

> void WebSocketSharp.Server.IServiceHost.BindWebSocket (WebSocketSharp.Net.WebSockets.WebSocketContext context)

> #### Parameters

> > context
> >   A WebSocketSharp.Net.WebSockets.WebSocketContext that contains the WebSocket connection request objects to bind.

> ## Remarks

> Documentation for this section has not yet been entered.

> ## Requirements

> Namespace: WebSocketSharp.Server
> Assembly: websocket-sharp (in websocket-sharp.dll)