Garry's Mod

Garry's Mod

[E2] WebsocketCore
 此主题已被置顶,因此可能具有重要性
Kit  [开发者] 2019 年 6 月 18 日 上午 7:49
Documentation
Functions
Function
Returns
Description
wsCreate(number ID, string URL)
-
Creates a websocket.
wsCreate(number ID, string URL, table Headers)
-
Creates a websocket with the headers set.
wsCreate(number ID, string URL, table Headers, table Cookies)
-
Creates a websocket with the headers and cookies set.
wsCreate(number ID, string URL, table Headers)
-
Creates a websocket with the headers set.
wsCanCreate()
N
Returns whether you can create a websocket.
runOnWS(number ShouldRun)
-
Sets the chip to run on websocket events.
wsClkConnect(number ID)
N
Returns 1 if chip was triggered by a websocket connect event for ID.
wsClkDisconnect(number ID)
N
Returns 1 if chip was triggered by a websocket disconnect event for ID.
wsClkData(number ID)
N
Returns 1 if chip was triggered by a websocket data event for ID.
wsClkError(number ID)
N
Returns 1 if chip was triggered by a websocket error event for ID.
wsClkError(number ID)
N
Returns 1 if chip was triggered by a websocket error event for ID.
wsData(number ID)
S
Returns the data sent by the server if in the data clk.
wsError(number ID)
S
Returns the error message if in the error clk.
wsURL(number ID)
S
Returns the current connection URL.
wsSend(number ID, string Message)
-
Sends a message to the server.
wsClose(number ID)
-
Closes the websocket.
wsConnected(number ID)
N
Returns 1 if the websocket is connected.

Examples
Simple echo client:
@name Websocket Echo Test if (first() & wsCanCreate()) { wsCreate(1, "wss:/echo.websocket.org") runOnWS(1) } elseif (wsClkConnect(1)) { print("Connected.") wsSend(1, "Echo.") } elseif (wsClkData(1)) { print("Got data: " + wsData(1)) wsClose(1) } elseif (wsClkDisconnect(1)) { print("Disconnected.") } elseif (wsClkError(1)) { print("Error: " + wsError(1) }

Simple echo client with headers:
@name Websocket Echo Test with Headers if (first() & wsCanCreate()) { local Headers = table("origin" = "https://google.com") wsCreate(1, "wss:/echo.websocket.org", Headers) runOnWS(1) } elseif (wsClkConnect(1)) { print("Connected.") wsSend(1, "Echo.") } elseif (wsClkData(1)) { print("Got data: " + wsData(1)) wsClose(1) } elseif (wsClkDisconnect(1)) { print("Disconnected.") } elseif (wsClkError(1)) { print("Error: " + wsError(1) }