mirror of
https://github.com/godotengine/godot-docs-l10n.git
synced 2026-01-04 10:09:56 +03:00
Currently including `zh_CN` and `es` which both have very high completion ratios. Others will be added once they reach a significant percentage too. These RST files will be used by godot-docs in place of its `classes` folder after we sync with https://github.com/godotengine/godot-docs/pull/5458. The update workflow is manual for now (example for `zh_CN`): - Build `godotengine/godot` in the branch we currently track (now `3.x`) - Run `godot --doctool -l zh_CN` - Run `cd doc && make rst LANGARG=zh_CN` - Copy `doc/_build/rst/*` to `classes/zh_CN/` here - Make sure to have `classes/zh_CN/index.rst` copied from `docs/classes`
180 lines
12 KiB
ReStructuredText
180 lines
12 KiB
ReStructuredText
:github_url: hide
|
|
|
|
.. Generated automatically by doc/tools/make_rst.py in Godot's source tree.
|
|
.. DO NOT EDIT THIS FILE, but the PacketPeerUDP.xml source instead.
|
|
.. The source is found in doc/classes or modules/<name>/doc_classes.
|
|
|
|
.. _class_PacketPeerUDP:
|
|
|
|
PacketPeerUDP
|
|
=============
|
|
|
|
**Inherits:** :ref:`PacketPeer<class_PacketPeer>` **<** :ref:`Reference<class_Reference>` **<** :ref:`Object<class_Object>`
|
|
|
|
Paquete de pares UDP.
|
|
|
|
Descripción
|
|
----------------------
|
|
|
|
Paquete de pares UDP. Puede ser usado para enviar paquetes UDP sin procesar así como :ref:`Variant<class_Variant>`\ s.
|
|
|
|
Métodos
|
|
--------------
|
|
|
|
+---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| void | :ref:`close<class_PacketPeerUDP_method_close>` **(** **)** |
|
|
+---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| :ref:`Error<enum_@GlobalScope_Error>` | :ref:`connect_to_host<class_PacketPeerUDP_method_connect_to_host>` **(** :ref:`String<class_String>` host, :ref:`int<class_int>` port **)** |
|
|
+---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| :ref:`String<class_String>` | :ref:`get_packet_ip<class_PacketPeerUDP_method_get_packet_ip>` **(** **)** |const| |
|
|
+---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| :ref:`int<class_int>` | :ref:`get_packet_port<class_PacketPeerUDP_method_get_packet_port>` **(** **)** |const| |
|
|
+---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| :ref:`bool<class_bool>` | :ref:`is_connected_to_host<class_PacketPeerUDP_method_is_connected_to_host>` **(** **)** |const| |
|
|
+---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| :ref:`bool<class_bool>` | :ref:`is_listening<class_PacketPeerUDP_method_is_listening>` **(** **)** |const| |
|
|
+---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| :ref:`Error<enum_@GlobalScope_Error>` | :ref:`join_multicast_group<class_PacketPeerUDP_method_join_multicast_group>` **(** :ref:`String<class_String>` multicast_address, :ref:`String<class_String>` interface_name **)** |
|
|
+---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| :ref:`Error<enum_@GlobalScope_Error>` | :ref:`leave_multicast_group<class_PacketPeerUDP_method_leave_multicast_group>` **(** :ref:`String<class_String>` multicast_address, :ref:`String<class_String>` interface_name **)** |
|
|
+---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| :ref:`Error<enum_@GlobalScope_Error>` | :ref:`listen<class_PacketPeerUDP_method_listen>` **(** :ref:`int<class_int>` port, :ref:`String<class_String>` bind_address="*", :ref:`int<class_int>` recv_buf_size=65536 **)** |
|
|
+---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| void | :ref:`set_broadcast_enabled<class_PacketPeerUDP_method_set_broadcast_enabled>` **(** :ref:`bool<class_bool>` enabled **)** |
|
|
+---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| :ref:`Error<enum_@GlobalScope_Error>` | :ref:`set_dest_address<class_PacketPeerUDP_method_set_dest_address>` **(** :ref:`String<class_String>` host, :ref:`int<class_int>` port **)** |
|
|
+---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
| :ref:`Error<enum_@GlobalScope_Error>` | :ref:`wait<class_PacketPeerUDP_method_wait>` **(** **)** |
|
|
+---------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
|
|
Descripciones de Métodos
|
|
------------------------------------------------
|
|
|
|
.. _class_PacketPeerUDP_method_close:
|
|
|
|
- void **close** **(** **)**
|
|
|
|
Cierra el socket UDP que el ``PacketPeerUDP`` está escuchando actualmente.
|
|
|
|
----
|
|
|
|
.. _class_PacketPeerUDP_method_connect_to_host:
|
|
|
|
- :ref:`Error<enum_@GlobalScope_Error>` **connect_to_host** **(** :ref:`String<class_String>` host, :ref:`int<class_int>` port **)**
|
|
|
|
Calling this method connects this UDP peer to the given ``host``/``port`` pair. UDP is in reality connectionless, so this option only means that incoming packets from different addresses are automatically discarded, and that outgoing packets are always sent to the connected address (future calls to :ref:`set_dest_address<class_PacketPeerUDP_method_set_dest_address>` are not allowed). This method does not send any data to the remote peer, to do that, use :ref:`PacketPeer.put_var<class_PacketPeer_method_put_var>` or :ref:`PacketPeer.put_packet<class_PacketPeer_method_put_packet>` as usual. See also :ref:`UDPServer<class_UDPServer>`.
|
|
|
|
\ **Note:** Connecting to the remote peer does not help to protect from malicious attacks like IP spoofing, etc. Think about using an encryption technique like SSL or DTLS if you feel like your application is transferring sensitive information.
|
|
|
|
----
|
|
|
|
.. _class_PacketPeerUDP_method_get_packet_ip:
|
|
|
|
- :ref:`String<class_String>` **get_packet_ip** **(** **)** |const|
|
|
|
|
Devuelve la IP del par remoto que envió el último paquete (que fue recibido con :ref:`PacketPeer.get_packet<class_PacketPeer_method_get_packet>` o :ref:`PacketPeer.get_var<class_PacketPeer_method_get_var>`).
|
|
|
|
----
|
|
|
|
.. _class_PacketPeerUDP_method_get_packet_port:
|
|
|
|
- :ref:`int<class_int>` **get_packet_port** **(** **)** |const|
|
|
|
|
Devuelve el puerto del par remoto que envió el último paquete (que fue recibido con :ref:`PacketPeer.get_packet<class_PacketPeer_method_get_packet>` o :ref:`PacketPeer.get_var<class_PacketPeer_method_get_var>`).
|
|
|
|
----
|
|
|
|
.. _class_PacketPeerUDP_method_is_connected_to_host:
|
|
|
|
- :ref:`bool<class_bool>` **is_connected_to_host** **(** **)** |const|
|
|
|
|
Devuelve ``true`` si el enchufe UDP está abierto y se ha conectado a una dirección remota. Ver :ref:`connect_to_host<class_PacketPeerUDP_method_connect_to_host>`.
|
|
|
|
----
|
|
|
|
.. _class_PacketPeerUDP_method_is_listening:
|
|
|
|
- :ref:`bool<class_bool>` **is_listening** **(** **)** |const|
|
|
|
|
Devuelve si este ``PacketPeerUDP`` está escuchando.
|
|
|
|
----
|
|
|
|
.. _class_PacketPeerUDP_method_join_multicast_group:
|
|
|
|
- :ref:`Error<enum_@GlobalScope_Error>` **join_multicast_group** **(** :ref:`String<class_String>` multicast_address, :ref:`String<class_String>` interface_name **)**
|
|
|
|
Joins the multicast group specified by ``multicast_address`` using the interface identified by ``interface_name``.
|
|
|
|
You can join the same multicast group with multiple interfaces. Use :ref:`IP.get_local_interfaces<class_IP_method_get_local_interfaces>` to know which are available.
|
|
|
|
\ **Note:** Some Android devices might require the ``CHANGE_WIFI_MULTICAST_STATE`` permission for multicast to work.
|
|
|
|
----
|
|
|
|
.. _class_PacketPeerUDP_method_leave_multicast_group:
|
|
|
|
- :ref:`Error<enum_@GlobalScope_Error>` **leave_multicast_group** **(** :ref:`String<class_String>` multicast_address, :ref:`String<class_String>` interface_name **)**
|
|
|
|
Elimina la interfaz identificada por ``interface_name`` del grupo de multidifusión especificado por ``multicast_address``.
|
|
|
|
----
|
|
|
|
.. _class_PacketPeerUDP_method_listen:
|
|
|
|
- :ref:`Error<enum_@GlobalScope_Error>` **listen** **(** :ref:`int<class_int>` port, :ref:`String<class_String>` bind_address="*", :ref:`int<class_int>` recv_buf_size=65536 **)**
|
|
|
|
Hace que este ``PacketPeerUDP`` escuche en el ``port`` vinculándose a ``bind_address`` con un tamaño de búfer ``recv_buf_size``.
|
|
|
|
Si ``bind_address`` se establece en ``"*"`` (por defecto), el par escuchará en todas las direcciones disponibles (tanto IPv4 como IPv6).
|
|
|
|
Si ``bind_address`` está configurado como ``"0.0.0.0"`` (para IPv4) o ``"::"`` (para IPv6), el par escuchará en todas las direcciones disponibles que coincidan con ese tipo de IP.
|
|
|
|
Si ``bind_address`` se establece en cualquier dirección válida (por ejemplo, ``"192.168.1.101"``, ``"::1"``, etc.), el par sólo escuchará en la interfaz con esas direcciones (o fallará si no existe una interfaz con la dirección dada).
|
|
|
|
----
|
|
|
|
.. _class_PacketPeerUDP_method_set_broadcast_enabled:
|
|
|
|
- void **set_broadcast_enabled** **(** :ref:`bool<class_bool>` enabled **)**
|
|
|
|
Enable or disable sending of broadcast packets (e.g. ``set_dest_address("255.255.255.255", 4343)``. This option is disabled by default.
|
|
|
|
\ **Note:** Some Android devices might require the ``CHANGE_WIFI_MULTICAST_STATE`` permission and this option to be enabled to receive broadcast packets too.
|
|
|
|
----
|
|
|
|
.. _class_PacketPeerUDP_method_set_dest_address:
|
|
|
|
- :ref:`Error<enum_@GlobalScope_Error>` **set_dest_address** **(** :ref:`String<class_String>` host, :ref:`int<class_int>` port **)**
|
|
|
|
Sets the destination address and port for sending packets and variables. A hostname will be resolved using DNS if needed.
|
|
|
|
\ **Note:** :ref:`set_broadcast_enabled<class_PacketPeerUDP_method_set_broadcast_enabled>` must be enabled before sending packets to a broadcast address (e.g. ``255.255.255.255``).
|
|
|
|
----
|
|
|
|
.. _class_PacketPeerUDP_method_wait:
|
|
|
|
- :ref:`Error<enum_@GlobalScope_Error>` **wait** **(** **)**
|
|
|
|
Waits for a packet to arrive on the listening port. See :ref:`listen<class_PacketPeerUDP_method_listen>`.
|
|
|
|
\ **Note:** :ref:`wait<class_PacketPeerUDP_method_wait>` can't be interrupted once it has been called. This can be worked around by allowing the other party to send a specific "death pill" packet like this:
|
|
|
|
::
|
|
|
|
# Server
|
|
socket.set_dest_address("127.0.0.1", 789)
|
|
socket.put_packet("Time to stop".to_ascii())
|
|
|
|
# Client
|
|
while socket.wait() == OK:
|
|
var data = socket.get_packet().get_string_from_ascii()
|
|
if data == "Time to stop":
|
|
return
|
|
|
|
.. |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.)`
|