123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147 |
- :github_url: hide
- .. Generated automatically by doc/tools/make_rst.py in Godot's source tree.
- .. DO NOT EDIT THIS FILE, but the WebSocketPeer.xml source instead.
- .. The source is found in doc/classes or modules/<name>/doc_classes.
- .. _class_WebSocketPeer:
- WebSocketPeer
- =============
- **Inherits:** :ref:`PacketPeer<class_PacketPeer>` **<** :ref:`Reference<class_Reference>` **<** :ref:`Object<class_Object>`
- A class representing a specific WebSocket connection.
- Description
- -----------
- This class represents a specific WebSocket connection, allowing you to do lower level operations with it.
- You can choose to write to the socket in binary or text mode, and you can recognize the mode used for writing by the other peer.
- Methods
- -------
- +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+
- | void | :ref:`close<class_WebSocketPeer_method_close>` **(** :ref:`int<class_int>` code=1000, :ref:`String<class_String>` reason="" **)** |
- +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+
- | :ref:`String<class_String>` | :ref:`get_connected_host<class_WebSocketPeer_method_get_connected_host>` **(** **)** |const| |
- +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+
- | :ref:`int<class_int>` | :ref:`get_connected_port<class_WebSocketPeer_method_get_connected_port>` **(** **)** |const| |
- +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+
- | :ref:`int<class_int>` | :ref:`get_current_outbound_buffered_amount<class_WebSocketPeer_method_get_current_outbound_buffered_amount>` **(** **)** |const| |
- +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+
- | :ref:`WriteMode<enum_WebSocketPeer_WriteMode>` | :ref:`get_write_mode<class_WebSocketPeer_method_get_write_mode>` **(** **)** |const| |
- +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+
- | :ref:`bool<class_bool>` | :ref:`is_connected_to_host<class_WebSocketPeer_method_is_connected_to_host>` **(** **)** |const| |
- +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+
- | void | :ref:`set_no_delay<class_WebSocketPeer_method_set_no_delay>` **(** :ref:`bool<class_bool>` enabled **)** |
- +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+
- | void | :ref:`set_write_mode<class_WebSocketPeer_method_set_write_mode>` **(** :ref:`WriteMode<enum_WebSocketPeer_WriteMode>` mode **)** |
- +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+
- | :ref:`bool<class_bool>` | :ref:`was_string_packet<class_WebSocketPeer_method_was_string_packet>` **(** **)** |const| |
- +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+
- Enumerations
- ------------
- .. _enum_WebSocketPeer_WriteMode:
- .. _class_WebSocketPeer_constant_WRITE_MODE_TEXT:
- .. _class_WebSocketPeer_constant_WRITE_MODE_BINARY:
- enum **WriteMode**:
- - **WRITE_MODE_TEXT** = **0** --- Specifies that WebSockets messages should be transferred as text payload (only valid UTF-8 is allowed).
- - **WRITE_MODE_BINARY** = **1** --- Specifies that WebSockets messages should be transferred as binary payload (any byte combination is allowed).
- Method Descriptions
- -------------------
- .. _class_WebSocketPeer_method_close:
- - void **close** **(** :ref:`int<class_int>` code=1000, :ref:`String<class_String>` reason="" **)**
- Closes this WebSocket connection. ``code`` is the status code for the closure (see RFC 6455 section 7.4 for a list of valid status codes). ``reason`` is the human readable reason for closing the connection (can be any UTF-8 string that's smaller than 123 bytes).
- **Note:** To achieve a clean close, you will need to keep polling until either :ref:`WebSocketClient.connection_closed<class_WebSocketClient_signal_connection_closed>` or :ref:`WebSocketServer.client_disconnected<class_WebSocketServer_signal_client_disconnected>` is received.
- **Note:** The HTML5 export might not support all status codes. Please refer to browser-specific documentation for more details.
- ----
- .. _class_WebSocketPeer_method_get_connected_host:
- - :ref:`String<class_String>` **get_connected_host** **(** **)** |const|
- Returns the IP address of the connected peer.
- **Note:** Not available in the HTML5 export.
- ----
- .. _class_WebSocketPeer_method_get_connected_port:
- - :ref:`int<class_int>` **get_connected_port** **(** **)** |const|
- Returns the remote port of the connected peer.
- **Note:** Not available in the HTML5 export.
- ----
- .. _class_WebSocketPeer_method_get_current_outbound_buffered_amount:
- - :ref:`int<class_int>` **get_current_outbound_buffered_amount** **(** **)** |const|
- Returns the current amount of data in the outbound websocket buffer. **Note:** HTML5 exports use WebSocket.bufferedAmount, while other platforms use an internal buffer.
- ----
- .. _class_WebSocketPeer_method_get_write_mode:
- - :ref:`WriteMode<enum_WebSocketPeer_WriteMode>` **get_write_mode** **(** **)** |const|
- Gets the current selected write mode. See :ref:`WriteMode<enum_WebSocketPeer_WriteMode>`.
- ----
- .. _class_WebSocketPeer_method_is_connected_to_host:
- - :ref:`bool<class_bool>` **is_connected_to_host** **(** **)** |const|
- Returns ``true`` if this peer is currently connected.
- ----
- .. _class_WebSocketPeer_method_set_no_delay:
- - void **set_no_delay** **(** :ref:`bool<class_bool>` enabled **)**
- Disable Nagle's algorithm on the underling TCP socket (default). See :ref:`StreamPeerTCP.set_no_delay<class_StreamPeerTCP_method_set_no_delay>` for more information.
- **Note:** Not available in the HTML5 export.
- ----
- .. _class_WebSocketPeer_method_set_write_mode:
- - void **set_write_mode** **(** :ref:`WriteMode<enum_WebSocketPeer_WriteMode>` mode **)**
- Sets the socket to use the given :ref:`WriteMode<enum_WebSocketPeer_WriteMode>`.
- ----
- .. _class_WebSocketPeer_method_was_string_packet:
- - :ref:`bool<class_bool>` **was_string_packet** **(** **)** |const|
- Returns ``true`` if the last received packet was sent as a text payload. See :ref:`WriteMode<enum_WebSocketPeer_WriteMode>`.
- .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
- .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
- .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
|