Module jls.net.http.ws

This module provide classes to work with WebSocket.

Functions

upgradeHandler (exchange) WebSocket HTTP upgrade handler.

Class WebSocketBase

WebSocketBase:new ([client]) Creates a new WebSocket.
webSocketBase:close (callback) Closes this WebSocket.
webSocketBase:readStop () Stops receiving messages on this WebSocket.
webSocketBase:readStart () Starts receiving messages on this WebSocket.
webSocketBase:sendTextMessage (message, callback) Sends a message on this WebSocket.

Class WebSocket

WebSocket:new (url) Creates a new WebSocket.

Class WebSocketUpgradeHandler

WebSocketUpgradeHandler:new ([protocol]) Creates a new WebSocketUpgradeHandler.


Functions

upgradeHandler (exchange)
WebSocket HTTP upgrade handler. The open attribute must be set to a function that will be called with the new accepted WebSockets.

Parameters:

  • exchange the HTTP exchange to handle.

Class WebSocketBase

The WebSocketBase class represents the base class for WebSocket.
WebSocketBase:new ([client])
Creates a new WebSocket.

Parameters:

  • client boolean true to indicate that the websocket is the client. (optional)
webSocketBase:close (callback)
Closes this WebSocket.

Parameters:

  • callback function an optional callback function to use in place of promise.

Returns:

    jls.lang.Promise a promise that resolves once the WebSocket is closed.
webSocketBase:readStop ()
Stops receiving messages on this WebSocket.
webSocketBase:readStart ()
Starts receiving messages on this WebSocket.
webSocketBase:sendTextMessage (message, callback)
Sends a message on this WebSocket.

Parameters:

  • message string the message to send.
  • callback function an optional callback function to use in place of promise.

Returns:

    jls.lang.Promise a promise that resolves once the data has been written.

Class WebSocket

The WebSocket class enables to send and receive messages. see https://tools.ietf.org/html/rfc6455

Usage:

local event = require('jls.lang.event')
local ws = require('jls.net.http.ws')
local webSocket = ws.WebSocket:new('ws://localhost/ws/')
webSocket:open():next(function()
  function webSocket:onTextMessage(payload)
    webSocket:close()
  end
  webSocket:readStart()
  webSocket:sendTextMessage('Hello')
end)
event:loop()
WebSocket:new (url)
Creates a new WebSocket.

Parameters:

  • url string A table describing the client options.

Returns:

    a new WebSocket

Class WebSocketUpgradeHandler

An HTTP handler to upgrade the connection and accept web sockets.
WebSocketUpgradeHandler:new ([protocol])
Creates a new WebSocketUpgradeHandler.

Parameters:

  • protocol string The protocol. (optional)

Returns:

    a new WebSocketUpgradeHandler
generated by LDoc 1.4.6 Last updated 2022-01-22 16:32:56