@gibme/multicast
    Preparing search index...

    @gibme/multicast

    Multisocket Socket Library

    An abstract multicast socket library designed to handle some of the platform specific implementation details that make it difficult to write a cross platform multicast socket library.

    https://gibme-npm.github.io/multicast

    • IPv4 and IPv6 Support
    • Windows, Linux, and Mac OS X Support
    • Cross Platform
    • Asynchronous
    • Non-Blocking
    • Supports Multicast and Unicast Messages
    • Supports Joining and Leaving Multicast Groups
    • Proper handling of listening on all interfaces
      • Creates a singular multicast socket for listening (or sending)
      • Creates a separate unicast socket for each interface for receiving unicast replies and/or sending messages (to ensure it goes out on all interfaces when bound to all)
    • Ability to listen on one interface (by IP or name)
    • Supports dynamic TTL
    • Loopback support
    import { MulticastSocket } from '@gibme/multicast';

    (async () => {
    const socket = await MulticastSocket.create({
    port: 5959,
    multicastGroup: '224.0.0.251',
    loopback: true
    });

    socket.on('message', (message, remote, fromSelf) => {
    console.log({message, remote, fromSelf});
    })

    socket.send('Hello World');
    });