Qore WebSocketClient Module Reference  1.9.1
WebSocketClient::WebSocketConnectionObject Class Reference

class for websocket connections; returns an object of class WebSocketClient for receiving websocket events from a websocket server More...

Inheritance diagram for WebSocketClient::WebSocketConnectionObject:

Public Member Methods

 constructor (string name, string description, string url, hash< auto > attributes={}, hash< auto > options={})
 creates the WebSocketConnectionObject connection object More...
 
*hash< auto > getRuntimeOptions ()
 returns runtime options More...
 
string getType ()
 returns "ws"
 

Public Attributes

const ConnectionScheme = ...
 Connection entry info.
 

Private Member Methods

hash< ConnectionSchemeInfo > getConnectionSchemeInfoImpl ()
 Returns the ConnectionSchemeInfo hash for this object.
 
WebSocketClient getImpl (bool connect=True, *hash< auto > rtopts)
 returns a WebSocketClient object More...
 

Detailed Description

class for websocket connections; returns an object of class WebSocketClient for receiving websocket events from a websocket server

supports the following options:

  • "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():

  • "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
  • "yield": a closure to yield current thread execution

Member Function Documentation

◆ constructor()

WebSocketClient::WebSocketConnectionObject::constructor ( string  name,
string  description,
string  url,
hash< auto >  attributes = {},
hash< auto >  options = {} 
)

creates the WebSocketConnectionObject connection object

Parameters
namethe name of the connection
descriptionconnection description
urlconnection URL (potentially with password info)
attributesvarious attributes. See below
optionsconnection options

See AbstractConnection::constructor() for attributes and options reference.

Exceptions
CONNECTION-OPTION-ERRORmissing or invalid connection option

◆ getImpl()

WebSocketClient WebSocketClient::WebSocketConnectionObject::getImpl ( bool  connect = True,
*hash< auto >  rtopts 
)
privatevirtual

returns a WebSocketClient object

Parameters
connectif True, then WebSocketClient::connect() is called
rtoptssupports the following runtime options in getImpl():
  • "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
  • "yield": a closure to yield current thread execution
Returns
a WebSocketClient object

Implements ConnectionProvider::AbstractConnection.

◆ getRuntimeOptions()

*hash<auto> WebSocketClient::WebSocketConnectionObject::getRuntimeOptions ( )

returns runtime options

Returns
a hash with the following keys reflecting support for the corresponding runtime options in getImpl():
  • "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
  • "yield": a closure to yield current thread execution