All Classes Namespaces Functions Variables Groups Pages
SewioWebSocketClient::SewioWebSocketConnection Class Reference

class for Sewio RTLS Studio websocket connections; returns an object of class SewioWebSocketClient for receiving websocket events from a Sewio RTLS Studio websocket server More...

Inheritance diagram for SewioWebSocketClient::SewioWebSocketConnection:
[legend]

## Public Member Functions

| constructor (string name, string desc, string url, bool monitor, *hash opts, hash urlh)
| creates the SewioWebSocketConnection object More...
*hash | getDefaultOptions ()
| returns default options
hash | getOptions ()
| gets options
string | getType ()
| returns `"sewiowebsocket"`

## Static Public Member Functions

static SewioWebSocketConnection | make (string name, string desc, string url, bool monitor, *hash opts, hash urlh)
| static constructor

## Private Member Functions

SewioWebSocketClient | getImpl (bool connect=True, *hash rtopts)
| returns a SewioWebSocketClient object More...

## Detailed Description

class for Sewio RTLS Studio websocket connections; returns an object of class SewioWebSocketClient for receiving websocket events from a Sewio RTLS Studio websocket server

supports the following options:

- `"apikey"`: (requried) the Sewio RTLS Studio API key to use for the connection
- `"connect_timeout"`: connection timeout to use in milliseconds
- `"http_version"`: HTTP version to use (`"1.0"` or `"1.1"`, defaults to `"1.1"`)
- `"max_redirects"`: maximum redirects to support
- `"proxy"`: proxy URL to use
- `"timeout"`: transfer timeout to use in milliseconds

also supports the following runtime options in getImpl() for connection logging:

- `"callback"`: (required) a callback to receive websocket events
- `"dbglog"`: a closure taking a single string for detailed technical connection logging
- `"errlog"`: a closure accepting a single string for error logging
- `"log"`: a closure accepting a single string for logging

## Member Function Documentation

SewioWebSocketClient::SewioWebSocketConnection::constructor | ( | string | name,
|  | string | desc,
|  | string | url,
|  | bool | monitor,
|  | *hash | opts,
|  | hash | urlh
| ) |  |

creates the SewioWebSocketConnection object

Parameters

  name | the name of the connection
  desc | connection description
  url | connection URL
  monitor | monitoring flag
  opts | connection options
  urlh | broken down URL hash (as returned by Qore::parse_url())

Exceptions

  SEWIOWEBSOCKETCONNECTION-ERROR | missing apikey option

SewioWebSocketClient SewioWebSocketClient::SewioWebSocketConnection::getImpl | ( | bool | connect = `True`,
|  | *hash | rtopts
| ) |  |

privatevirtual

returns a SewioWebSocketClient object

Parameters

  connect | if True, then WebSocketClient::connect() is called

  rtopts

  supports the following runtime options in getImpl() for connection logging:
  - `"log"`: a closure accepting a single string for logging
  - `"errlog"`: a closure accepting a single string for error logging
  - `"dbglog"`: a closure taking a single string for detailed technical connection logging

Returns
  a SewioWebSocketClient object

Reimplemented from WebSocketClient::WebSocketConnectionObject.