--- module: [kind=event] websocket_closed --- The @{websocket_closed} event is fired when an open WebSocket connection is closed. ## Return Values 1. @{string}: The event name. 2. @{string}: The URL of the WebSocket that was closed. 3. @{string}|@{nil}: The [server-provided reason][close_reason] the websocket was closed. This will be @{nil} if the connection was closed abnormally. 4. @{number}|@{nil}: The [connection close code][close_code], indicating why the socket was closed. This will be @{nil} if the connection was closed abnormally. [close_reason]: https://www.rfc-editor.org/rfc/rfc6455.html#section-7.1.6 "The WebSocket Connection Close Reason, RFC 6455" [close_code]: https://www.rfc-editor.org/rfc/rfc6455.html#section-7.1.5 "The WebSocket Connection Close Code, RFC 6455" ## Example Prints a message when a WebSocket is closed (this may take a minute): ```lua local myURL = "wss://example.tweaked.cc/echo" local ws = http.websocket(myURL) local event, url repeat event, url = os.pullEvent("websocket_closed") until url == myURL print("The WebSocket at " .. url .. " was closed.") ```