Loading...
Searching...
No Matches
WebSocketHandler::WebSocketConnection Class Reference

this class represents a connection to a websocket client More...

## Public Member Functions

| connectionClosed ()
| This method is called when the connection is closed.
| constructor (WebSocketHandler handler)
| the constructor is called when a new connection is made by a websocket client
| flush ()
| Flush all output data.
| gotMessage (binary msg)
| This method is called when messages from the client are received.
| gotMessage (string msg)
| This method is called when messages from the client are received.
int | gotRawMessage (hash< WsMsgInfo > msg)
| This method is called when a message is received.
*binary | pollData ()
| This method is called to poll for messages from the client to send from the server.
*binary | pollDataImmediate ()
| This method is called to poll for messages from the client to send from the server.
| registered ()
| Called when the connection has been registered in handler and accept sending messages.
| send (data msg)
| Pushes an unencoded message on the connection's message queue.
| send (data msg, int op, bool fin)
| Pushes an unencoded message on the connection's message queue.
| sendEncoded (binary msg)
| Pushes an already-encoded message on the connection's message queue.
| setSocket (Socket sock)
| Sets the socket used by the server for the connection.
| stop ()
| force closing socket related to connection

## Public Attributes

WebSocketHandler | handler
| The parent handler object.
bool | stop_flag = False
| Stop connection flag.

## Protected Member Functions

Qore::Thread::Queue | queue ()
| the Queue object stores messages to be sent to the server

## Protected Attributes

int | tid = gettid()
| The TID of the I/O thread.

## Private Attributes

Socket | sock
| The socket used by the server for this connection.

## Detailed Description

this class represents a connection to a websocket client

Receiving WebSocket Messages from Clients
  When the WebSocketHandler class receives a message from the client, the WebSocketHandler class calls the WebSocketConnection::gotMessage() on the object that represents that connection.

Sending WebSocket Message to Clients
  To send a message to a websocket client, call one of the following methods:
  - WebSocketConnection::send(): to send an unencoded message to the client
  - WebSocketConnection::sendEncoded(): to send an already-encoded message to the client

## Member Function Documentation

## connectionClosed()

WebSocketHandler::WebSocketConnection::connectionClosed | ( |  | ) |

This method is called when the connection is closed.

Called by the WebSocketHandler

The implementation in this class is empty; implement this method in a subclass to provide custom behavior

## constructor()

WebSocketHandler::WebSocketConnection::constructor | ( | WebSocketHandler | handler | ) |

the constructor is called when a new connection is made by a websocket client

Called from WebSocketHandler::getConnectionImpl(), which can be overridden in subclasses to allow a subclass of this class to be used as the connection object

## flush()

WebSocketHandler::WebSocketConnection::flush | ( |  | ) |

Flush all output data.

Since
  WebSocketHandler 1.5.2

## gotMessage() [1/2]

WebSocketHandler::WebSocketConnection::gotMessage | ( | binary | msg | ) |

This method is called when messages from the client are received.

Called by the WebSocketHandler

The implementation in this class is empty; implement this method in a subclass to provide custom behavior

## gotMessage() [2/2]

WebSocketHandler::WebSocketConnection::gotMessage | ( | string | msg | ) |

This method is called when messages from the client are received.

Called by the WebSocketHandler

The implementation in this class is empty; implement this method in a subclass to provide custom behavior

## gotRawMessage()

int WebSocketHandler::WebSocketConnection::gotRawMessage | ( | hash< WsMsgInfo > | msg | ) |

This method is called when a message is received.

Parameters

  msg | the raw message information

Returns
  see WSClientRawCallbackReturnCodes for values and meanings

Note
  this base class always returns WSC_Process

Since
  WebSocketHandler 1.5.2

## pollData()

*binary WebSocketHandler::WebSocketConnection::pollData | ( |  | ) |

This method is called to poll for messages from the client to send from the server.

Called by the WebSocketHandler

## pollDataImmediate()

*binary WebSocketHandler::WebSocketConnection::pollDataImmediate | ( |  | ) |

This method is called to poll for messages from the client to send from the server.

Called by the WebSocketHandler

## registered()

WebSocketHandler::WebSocketConnection::registered | ( |  | ) |

Called when the connection has been registered in handler and accept sending messages.

Can be used to send initial welcome message, for example; the default implementation does nothing

Since
  WebSocketHandler 1.4

## send() [1/2]

WebSocketHandler::WebSocketConnection::send | ( | data | msg | ) |

Pushes an unencoded message on the connection's message queue.

The message will be encoded with WebSocketUtil::ws_encode_message() before sending

## send() [2/2]

WebSocketHandler::WebSocketConnection::send | ( | data | msg,
|  | int | op,
|  | bool | fin )

Pushes an unencoded message on the connection's message queue.

The message will be encoded with WebSocketUtil::ws_encode_message() before sending