Aller au contenu principal
OndesOndes Core/ Docs

Référence SDK

Ondes.UDP

Sockets UDP pour découverte réseau local et communication légère.

Le module Ondes.UDP permet de gérer des sockets UDP pour la découverte de périphériques et la communication réseau.

  • Découverte de périphériques sur un réseau local (broadcast)
  • Communication légère sans établissement de connexion
  • Messages à faible latence où la fiabilité n'est pas critique

bind(options?)

Crée et lie un socket UDP à un port local.

JS
const socket = await Ondes.UDP.bind({
    port: 12345,         class=class="code-string">"code-comment">// 0 = port aléatoire
    broadcast: true,
    reuseAddress: true
});
class=class="code-string">"code-comment">// { id: class=class="code-string">"code-string">'udp_123_1', port: 12345, status: class=class="code-string">"code-string">'bound' }

send(socketId, message, address, port)

JS
const result = await Ondes.UDP.send(
    socket.id,
    class="code-string">"DISCOVER_ROBOT",
    class="code-string">"192.168.1.100",
    12345
);
class=class="code-string">"code-comment">// { success: true, bytesSent: 14, address: class=class="code-string">"code-string">'...', port: 12345 }

broadcast(socketId, message, addresses, port?)

Envoie un message UDP à plusieurs adresses simultanément.

JS
const result = await Ondes.UDP.broadcast(
    socket.id,
    class="code-string">"DISCOVER_ROBOT",
    [
        class="code-string">"192.168.1.255",  class=class="code-string">"code-comment">// Broadcast réseau local
        class="code-string">"192.168.4.255",  class=class="code-string">"code-comment">// Point dclass=class="code-string">"code-string">'accès WiFi
        class="code-string">"172.20.10.1"     class=class="code-string">"code-comment">// Partage de connexion
    ],
    12345
);

result.results.forEach(r => {
    console.log(class=class="code-string">"code-string">`${r.address}: ${r.success ? 'OK' : r.error}`);
});

close(socketId)

JS
await Ondes.UDP.close(socket.id);