class_websocketpeer.rst 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211
  1. :github_url: hide
  2. .. DO NOT EDIT THIS FILE!!!
  3. .. Generated automatically from Godot engine sources.
  4. .. Generator: https://github.com/godotengine/godot/tree/3.6/doc/tools/make_rst.py.
  5. .. XML source: https://github.com/godotengine/godot/tree/3.6/modules/websocket/doc_classes/WebSocketPeer.xml.
  6. .. _class_WebSocketPeer:
  7. WebSocketPeer
  8. =============
  9. **Inherits:** :ref:`PacketPeer<class_PacketPeer>` **<** :ref:`Reference<class_Reference>` **<** :ref:`Object<class_Object>`
  10. A class representing a specific WebSocket connection.
  11. .. rst-class:: classref-introduction-group
  12. Description
  13. -----------
  14. This class represents a specific WebSocket connection, allowing you to do lower level operations with it.
  15. 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.
  16. .. rst-class:: classref-reftable-group
  17. Methods
  18. -------
  19. .. table::
  20. :widths: auto
  21. +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+
  22. | void | :ref:`close<class_WebSocketPeer_method_close>` **(** :ref:`int<class_int>` code=1000, :ref:`String<class_String>` reason="" **)** |
  23. +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+
  24. | :ref:`String<class_String>` | :ref:`get_connected_host<class_WebSocketPeer_method_get_connected_host>` **(** **)** |const| |
  25. +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+
  26. | :ref:`int<class_int>` | :ref:`get_connected_port<class_WebSocketPeer_method_get_connected_port>` **(** **)** |const| |
  27. +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+
  28. | :ref:`int<class_int>` | :ref:`get_current_outbound_buffered_amount<class_WebSocketPeer_method_get_current_outbound_buffered_amount>` **(** **)** |const| |
  29. +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+
  30. | :ref:`WriteMode<enum_WebSocketPeer_WriteMode>` | :ref:`get_write_mode<class_WebSocketPeer_method_get_write_mode>` **(** **)** |const| |
  31. +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+
  32. | :ref:`bool<class_bool>` | :ref:`is_connected_to_host<class_WebSocketPeer_method_is_connected_to_host>` **(** **)** |const| |
  33. +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+
  34. | void | :ref:`set_no_delay<class_WebSocketPeer_method_set_no_delay>` **(** :ref:`bool<class_bool>` enabled **)** |
  35. +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+
  36. | void | :ref:`set_write_mode<class_WebSocketPeer_method_set_write_mode>` **(** :ref:`WriteMode<enum_WebSocketPeer_WriteMode>` mode **)** |
  37. +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+
  38. | :ref:`bool<class_bool>` | :ref:`was_string_packet<class_WebSocketPeer_method_was_string_packet>` **(** **)** |const| |
  39. +------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+
  40. .. rst-class:: classref-section-separator
  41. ----
  42. .. rst-class:: classref-descriptions-group
  43. Enumerations
  44. ------------
  45. .. _enum_WebSocketPeer_WriteMode:
  46. .. rst-class:: classref-enumeration
  47. enum **WriteMode**:
  48. .. _class_WebSocketPeer_constant_WRITE_MODE_TEXT:
  49. .. rst-class:: classref-enumeration-constant
  50. :ref:`WriteMode<enum_WebSocketPeer_WriteMode>` **WRITE_MODE_TEXT** = ``0``
  51. Specifies that WebSockets messages should be transferred as text payload (only valid UTF-8 is allowed).
  52. .. _class_WebSocketPeer_constant_WRITE_MODE_BINARY:
  53. .. rst-class:: classref-enumeration-constant
  54. :ref:`WriteMode<enum_WebSocketPeer_WriteMode>` **WRITE_MODE_BINARY** = ``1``
  55. Specifies that WebSockets messages should be transferred as binary payload (any byte combination is allowed).
  56. .. rst-class:: classref-section-separator
  57. ----
  58. .. rst-class:: classref-descriptions-group
  59. Method Descriptions
  60. -------------------
  61. .. _class_WebSocketPeer_method_close:
  62. .. rst-class:: classref-method
  63. void **close** **(** :ref:`int<class_int>` code=1000, :ref:`String<class_String>` reason="" **)**
  64. 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).
  65. \ **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.
  66. \ **Note:** The HTML5 export might not support all status codes. Please refer to browser-specific documentation for more details.
  67. .. rst-class:: classref-item-separator
  68. ----
  69. .. _class_WebSocketPeer_method_get_connected_host:
  70. .. rst-class:: classref-method
  71. :ref:`String<class_String>` **get_connected_host** **(** **)** |const|
  72. Returns the IP address of the connected peer.
  73. \ **Note:** Not available in the HTML5 export.
  74. .. rst-class:: classref-item-separator
  75. ----
  76. .. _class_WebSocketPeer_method_get_connected_port:
  77. .. rst-class:: classref-method
  78. :ref:`int<class_int>` **get_connected_port** **(** **)** |const|
  79. Returns the remote port of the connected peer.
  80. \ **Note:** Not available in the HTML5 export.
  81. .. rst-class:: classref-item-separator
  82. ----
  83. .. _class_WebSocketPeer_method_get_current_outbound_buffered_amount:
  84. .. rst-class:: classref-method
  85. :ref:`int<class_int>` **get_current_outbound_buffered_amount** **(** **)** |const|
  86. Returns the current amount of data in the outbound websocket buffer. **Note:** HTML5 exports use WebSocket.bufferedAmount, while other platforms use an internal buffer.
  87. .. rst-class:: classref-item-separator
  88. ----
  89. .. _class_WebSocketPeer_method_get_write_mode:
  90. .. rst-class:: classref-method
  91. :ref:`WriteMode<enum_WebSocketPeer_WriteMode>` **get_write_mode** **(** **)** |const|
  92. Gets the current selected write mode. See :ref:`WriteMode<enum_WebSocketPeer_WriteMode>`.
  93. .. rst-class:: classref-item-separator
  94. ----
  95. .. _class_WebSocketPeer_method_is_connected_to_host:
  96. .. rst-class:: classref-method
  97. :ref:`bool<class_bool>` **is_connected_to_host** **(** **)** |const|
  98. Returns ``true`` if this peer is currently connected.
  99. .. rst-class:: classref-item-separator
  100. ----
  101. .. _class_WebSocketPeer_method_set_no_delay:
  102. .. rst-class:: classref-method
  103. void **set_no_delay** **(** :ref:`bool<class_bool>` enabled **)**
  104. 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.
  105. \ **Note:** Not available in the HTML5 export.
  106. .. rst-class:: classref-item-separator
  107. ----
  108. .. _class_WebSocketPeer_method_set_write_mode:
  109. .. rst-class:: classref-method
  110. void **set_write_mode** **(** :ref:`WriteMode<enum_WebSocketPeer_WriteMode>` mode **)**
  111. Sets the socket to use the given :ref:`WriteMode<enum_WebSocketPeer_WriteMode>`.
  112. .. rst-class:: classref-item-separator
  113. ----
  114. .. _class_WebSocketPeer_method_was_string_packet:
  115. .. rst-class:: classref-method
  116. :ref:`bool<class_bool>` **was_string_packet** **(** **)** |const|
  117. Returns ``true`` if the last received packet was sent as a text payload. See :ref:`WriteMode<enum_WebSocketPeer_WriteMode>`.
  118. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  119. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  120. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  121. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`