2017-09-12 20:42:36 +00:00
<?xml version="1.0" encoding="UTF-8" ?>
2019-04-01 10:33:56 +00:00
<class name= "PacketPeerUDP" inherits= "PacketPeer" category= "Core" version= "3.2" >
2017-09-12 20:42:36 +00:00
<brief_description >
UDP packet peer.
</brief_description>
<description >
2017-10-21 10:33:50 +00:00
UDP packet peer. Can be used to send raw UDP packets as well as [Variant]s.
2017-09-12 20:42:36 +00:00
</description>
<tutorials >
</tutorials>
<methods >
<method name= "close" >
<return type= "void" >
</return>
<description >
2019-03-29 22:37:35 +00:00
Close the UDP socket the [PacketPeerUDP] is currently listening on.
2017-09-12 20:42:36 +00:00
</description>
</method>
<method name= "get_packet_ip" qualifiers= "const" >
<return type= "String" >
</return>
<description >
2019-05-24 02:15:43 +00:00
Returns the IP of the remote peer that sent the last packet(that was received with [method PacketPeer.get_packet] or [method PacketPeer.get_var]).
2017-09-12 20:42:36 +00:00
</description>
</method>
<method name= "get_packet_port" qualifiers= "const" >
<return type= "int" >
</return>
<description >
2019-05-24 02:15:43 +00:00
Returns the port of the remote peer that sent the last packet(that was received with [method PacketPeer.get_packet] or [method PacketPeer.get_var]).
2017-09-12 20:42:36 +00:00
</description>
</method>
<method name= "is_listening" qualifiers= "const" >
<return type= "bool" >
</return>
<description >
2019-05-24 02:15:43 +00:00
Returns whether this [PacketPeerUDP] is listening.
2017-09-12 20:42:36 +00:00
</description>
</method>
2019-06-20 09:36:32 +00:00
<method name= "join_multicast_group" >
<return type= "int" enum= "Error" >
</return>
<argument index= "0" name= "multicast_address" type= "String" >
</argument>
<argument index= "1" name= "interface_name" type= "String" >
</argument>
<description >
Join the multicast group specified by [code]multicast_address[/code] using the interface identified by [code]interface_name[/code].
You can join the same multicast group with multiple interfaces. Use [method IP.get_local_interfaces] to know which are available.
</description>
</method>
<method name= "leave_multicast_group" >
<return type= "int" enum= "Error" >
</return>
<argument index= "0" name= "multicast_address" type= "String" >
</argument>
<argument index= "1" name= "interface_name" type= "String" >
</argument>
<description >
Remove the interface identified by [code]interface_name[/code] from the multicast group specified by [code]multicast_address[/code].
</description>
</method>
2017-09-12 20:42:36 +00:00
<method name= "listen" >
<return type= "int" enum= "Error" >
</return>
<argument index= "0" name= "port" type= "int" >
</argument>
<argument index= "1" name= "bind_address" type= "String" default= ""*"" >
</argument>
<argument index= "2" name= "recv_buf_size" type= "int" default= "65536" >
</argument>
<description >
2019-03-29 22:37:35 +00:00
Make this [PacketPeerUDP] listen on the "port" binding to "bind_address" with a buffer size "recv_buf_size".
2017-09-12 20:42:36 +00:00
If "bind_address" is set as "*" (default), the peer will listen on all available addresses (both IPv4 and IPv6).
If "bind_address" is set as "0.0.0.0" (for IPv4) or "::" (for IPv6), the peer will listen on all available addresses matching that IP type.
If "bind_address" is set to any valid address (e.g. "192.168.1.101", "::1", etc), the peer will only listen on the interface with that addresses (or fail if no interface with the given address exists).
</description>
</method>
<method name= "set_dest_address" >
<return type= "int" enum= "Error" >
</return>
<argument index= "0" name= "host" type= "String" >
</argument>
<argument index= "1" name= "port" type= "int" >
</argument>
<description >
Set the destination address and port for sending packets and variables, a hostname will be resolved using if valid.
</description>
</method>
<method name= "wait" >
<return type= "int" enum= "Error" >
</return>
<description >
Wait for a packet to arrive on the listening port, see [method listen].
</description>
</method>
</methods>
<constants >
</constants>
</class>