Module jls.net.http.ws

This module provide classes to work with WebSocket.

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 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
generated by LDoc 1.4.6 Last updated 2021-11-21 09:42:18