@types/multicast-dns

  • Version 7.2.4
  • Published
  • 13.9 kB
  • 2 dependencies
  • MIT license

Install

npm i @types/multicast-dns
yarn add @types/multicast-dns
pnpm add @types/multicast-dns

Overview

TypeScript definitions for multicast-dns

Index

Functions

function mDNS

mDNS: (options?: mDNS.Options) => mDNS.MulticastDNS;
  • Creates a new mdns instance.

    Example 1

    import makeMdns = require('multicast-dns'); const mdns = makeMdns();

    mdns.on('response', (response) => { console.log('got a response packet:', response); });

    mdns.on('query', (query) => { console.log('got a query packet:', query); });

    // lets query for an A record for 'brunhilde.local' mdns.query({ questions: [{ name: 'brunhilde.local', type: 'A' }] });

Interfaces

interface MulticastDNS

interface MulticastDNS extends EventEmitter {}

    method addListener

    addListener: {
    (event: 'ready', listener: () => void): this;
    (
    event: 'message',
    listener: (message: Packet, rinfo: RemoteInfo) => void
    ): this;
    (
    event: 'query',
    listener: (query: QueryPacket, rinfo: RemoteInfo) => void
    ): this;
    (
    event: 'response',
    listener: (response: ResponsePacket, rinfo: RemoteInfo) => void
    ): this;
    (event: 'error' | 'warning', listener: (err: Error) => void): this;
    (event: string, listener: (...args: any[]) => void): this;
    };
    • Emitted after the socket was bound to.

    • Emitted when a packet is received.

    • Emitted when a query packet is received.

    • Emitted when a response packet is received.

    method destroy

    destroy: (callback?: () => void) => void;
    • Destroy the mDNS instance. Closes the UDP socket.

    method emit

    emit: {
    (event: 'ready'): boolean;
    (event: 'message', message: Packet, rinfo: RemoteInfo): boolean;
    (event: 'query', query: QueryPacket, rinfo: RemoteInfo): boolean;
    (event: 'response', response: ResponsePacket, rinfo: RemoteInfo): boolean;
    (event: 'error' | 'warning', err: Error): boolean;
    (event: string | symbol, ...args: any[]): boolean;
    };

      method eventNames

      eventNames: () => Array<
      'ready' | 'message' | 'query' | 'response' | 'error' | 'warning'
      >;

        method listenerCount

        listenerCount: (
        type: 'ready' | 'message' | 'query' | 'response' | 'error' | 'warning'
        ) => number;

          method listeners

          listeners: {
          (event: 'ready'): Array<() => void>;
          (event: 'message'): ((message: Packet, rinfo: RemoteInfo) => void)[];
          (event: 'query'): ((query: QueryPacket, rinfo: RemoteInfo) => void)[];
          (event: 'response'): ((
          response: ResponsePacket,
          rinfo: RemoteInfo
          ) => void)[];
          (event: 'error' | 'warning'): ((err: Error) => void)[];
          (event: string): ((...args: any[]) => void)[];
          };

            method off

            off: {
            (event: 'ready', listener: () => void): this;
            (
            event: 'message',
            listener: (message: Packet, rinfo: RemoteInfo) => void
            ): this;
            (
            event: 'query',
            listener: (query: QueryPacket, rinfo: RemoteInfo) => void
            ): this;
            (
            event: 'response',
            listener: (response: ResponsePacket, rinfo: RemoteInfo) => void
            ): this;
            (event: 'error' | 'warning', listener: (err: Error) => void): this;
            (event: string, listener: (...args: any[]) => void): this;
            };

              method on

              on: {
              (event: 'ready', listener: () => void): this;
              (
              event: 'message',
              listener: (message: Packet, rinfo: RemoteInfo) => void
              ): this;
              (
              event: 'query',
              listener: (query: QueryPacket, rinfo: RemoteInfo) => void
              ): this;
              (
              event: 'response',
              listener: (response: ResponsePacket, rinfo: RemoteInfo) => void
              ): this;
              (event: 'error' | 'warning', listener: (err: Error) => void): this;
              (event: string, listener: (...args: any[]) => void): this;
              };
              • Emitted after the socket was bound to.

              • Emitted when a packet is received.

              • Emitted when a query packet is received.

                Example 1

                mdns.on('query', (query) => { if (query.questions[0] && query.questions[0].name === 'brunhilde.local') { mdns.respond(someResponse); } });

              • Emitted when a response packet is received.

              method once

              once: {
              (event: 'ready', listener: () => void): this;
              (
              event: 'message',
              listener: (message: Packet, rinfo: RemoteInfo) => void
              ): this;
              (
              event: 'query',
              listener: (query: QueryPacket, rinfo: RemoteInfo) => void
              ): this;
              (
              event: 'response',
              listener: (response: ResponsePacket, rinfo: RemoteInfo) => void
              ): this;
              (event: 'error' | 'warning', listener: (err: Error) => void): this;
              (event: string, listener: (...args: any[]) => void): this;
              };
              • Emitted after the socket was bound to.

              • Emitted when a packet is received.

              • Emitted when a query packet is received.

              • Emitted when a response packet is received.

              method prependListener

              prependListener: {
              (event: 'ready', listener: () => void): this;
              (
              event: 'message',
              listener: (message: Packet, rinfo: RemoteInfo) => void
              ): this;
              (
              event: 'query',
              listener: (query: QueryPacket, rinfo: RemoteInfo) => void
              ): this;
              (
              event: 'response',
              listener: (response: ResponsePacket, rinfo: RemoteInfo) => void
              ): this;
              (event: 'error' | 'warning', listener: (err: Error) => void): this;
              (event: string, listener: (...args: any[]) => void): this;
              };

                method prependOnceListener

                prependOnceListener: {
                (event: 'ready', listener: () => void): this;
                (
                event: 'message',
                listener: (message: Packet, rinfo: RemoteInfo) => void
                ): this;
                (
                event: 'query',
                listener: (query: QueryPacket, rinfo: RemoteInfo) => void
                ): this;
                (
                event: 'response',
                listener: (response: ResponsePacket, rinfo: RemoteInfo) => void
                ): this;
                (event: 'error' | 'warning', listener: (err: Error) => void): this;
                (event: string, listener: (...args: any[]) => void): this;
                };

                  method query

                  query: {
                  (
                  query: string | Question[] | QueryOutgoingPacket,
                  callback?: (error: Error | null, bytes?: number) => void
                  ): void;
                  (
                  query: string | Question[] | QueryOutgoingPacket,
                  rinfo?: RemoteInfoOutgoing,
                  callback?: (error: Error, bytes?: number) => void
                  ): void;
                  (
                  query: string,
                  type?: RecordType,
                  callback?: (error: Error, bytes?: number) => void
                  ): void;
                  (
                  query: string,
                  type?: RecordType,
                  rinfo?: RemoteInfoOutgoing,
                  callback?: (error: Error, bytes?: number) => void
                  ): void;
                  };
                  • Send a DNS query.

                    Parameter callback

                    Will be called when the packet was sent.

                    Example 1

                    mdns.query('brunhilde.local', 'A'); mdns.query([{name:'brunhilde.local', type:'A'}]); mdns.query({ questions: [{name:'brunhilde.local', type:'A'}] });

                  method rawListeners

                  rawListeners: {
                  (event: 'ready'): Array<() => void>;
                  (event: 'message'): ((message: Packet, rinfo: RemoteInfo) => void)[];
                  (event: 'query'): ((query: QueryPacket, rinfo: RemoteInfo) => void)[];
                  (event: 'response'): ((
                  response: ResponsePacket,
                  rinfo: RemoteInfo
                  ) => void)[];
                  (event: 'error' | 'warning'): ((err: Error) => void)[];
                  (event: string): ((...args: any[]) => void)[];
                  };

                    method removeAllListeners

                    removeAllListeners: (
                    event?: 'ready' | 'message' | 'query' | 'response' | 'error' | 'warning'
                    ) => this;

                      method removeListener

                      removeListener: {
                      (event: 'ready', listener: () => void): this;
                      (
                      event: 'message',
                      listener: (message: Packet, rinfo: RemoteInfo) => void
                      ): this;
                      (
                      event: 'query',
                      listener: (query: QueryPacket, rinfo: RemoteInfo) => void
                      ): this;
                      (
                      event: 'response',
                      listener: (response: ResponsePacket, rinfo: RemoteInfo) => void
                      ): this;
                      (event: 'error' | 'warning', listener: (err: Error) => void): this;
                      (event: string, listener: (...args: any[]) => void): this;
                      };

                        method respond

                        respond: {
                        (
                        response: Answer[] | ResponseOutgoingPacket,
                        callback?: (error: Error | null, bytes?: number) => void
                        ): void;
                        (
                        response: Answer[] | ResponseOutgoingPacket,
                        rinfo?: RemoteInfoOutgoing,
                        callback?: (error: Error, bytes?: number) => void
                        ): void;
                        };
                        • Send a DNS response.

                          Parameter callback

                          Will be called when the packet was sent.

                          Example 1

                          mdns.respond([{name:'brunhilde.local', type:'A', data:'192.158.1.5'}]); mdns.respond({ answers: [{name:'brunhilde.local', type:'A', data:'192.158.1.5'}] });

                        interface Options

                        interface Options {}

                          property bind

                          bind?: false | string | undefined;
                          • The interface to bind to or false to prevent binding.

                            Options.interface

                          property interface

                          interface?: string | undefined;
                          • Explicitly specify a network interface. Will use all interfaces when not specified.

                          property ip

                          ip?: string | undefined;
                          • Set the UDP ip.

                          property loopback

                          loopback?: boolean | undefined;
                          • Receive your own packets.

                            true

                          property multicast

                          multicast?: boolean | undefined;
                          • Use UDP multicasting.

                            true

                          property port

                          port?: number | undefined;
                          • Set the UDP port.

                            5353

                          property reuseAddr

                          reuseAddr?: boolean | undefined;
                          • Set the reuseAddr option when creating the socket.

                            true

                          property socket

                          socket?: Socket | undefined;
                          • Explicitly pass a constructed socket to use.

                          property ttl

                          ttl?: number | undefined;
                          • Set the multicast ttl.

                            255

                          property type

                          type?: SocketType | undefined;
                          • Set the socket type.

                            'udp4'

                          interface QueryOutgoingPacket

                          interface QueryOutgoingPacket extends Packet {}

                            property questions

                            questions: Question[];

                              interface QueryPacket

                              interface QueryPacket extends FullPacket {}

                                property type

                                type: 'query';

                                  interface RemoteInfoOutgoing

                                  interface RemoteInfoOutgoing {}

                                    property address

                                    address?: string | undefined;

                                      property port

                                      port: number;

                                        interface ResponseOutgoingPacket

                                        interface ResponseOutgoingPacket extends Packet {}

                                          property answers

                                          answers: Answer[];

                                            interface ResponsePacket

                                            interface ResponsePacket extends FullPacket {}

                                              property type

                                              type: 'response';

                                                Type Aliases

                                                type FullPacket

                                                type FullPacket = Required<Packet>;

                                                  Package Files (1)

                                                  Dependencies (2)

                                                  Dev Dependencies (0)

                                                  No dev dependencies.

                                                  Peer Dependencies (0)

                                                  No peer dependencies.

                                                  Badge

                                                  To add a badge like this onejsDocs.io badgeto your package's README, use the codes available below.

                                                  You may also use Shields.io to create a custom badge linking to https://www.jsdocs.io/package/@types/multicast-dns.

                                                  • Markdown
                                                    [![jsDocs.io](https://img.shields.io/badge/jsDocs.io-reference-blue)](https://www.jsdocs.io/package/@types/multicast-dns)
                                                  • HTML
                                                    <a href="https://www.jsdocs.io/package/@types/multicast-dns"><img src="https://img.shields.io/badge/jsDocs.io-reference-blue" alt="jsDocs.io"></a>