Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP

Fetching latest commit…

Cannot retrieve the latest commit at this time

..
Failed to load latest commit information.
build
pages
README.ejs
config.json
layout.ejs

README.ejs

h1. mdns -- node.js Service Discovery

|_. Package:       | <%- package.name %> |
|_. Description:   | <%- package.description %> |
|_. Version:       | <%- package.version %> |
|_. Installation:  | @npm install <%- package.name %>@ |
|_. Documentation: | "mdns user guide":<%- package.homepage + '/user_guide.html'%> |
|_. License:       | "<%- package.licenses[0].type %>":http://github.com/agnat/node_mdns/blob/master/LICENSE |

mdns adds multicast DNS service discovery, also known as zeroconf or bonjour to "node.js":/joyent/node. It provides an object based interface to announce and browse services on the local network.

h2. Synopsis

bc.. // import the module
var mdns = require('mdns');

// advertise a http server on port 4321
var ad = mdns.createAdvertisement(mdns.tcp('http'), 4321);
ad.start();

// watch all http servers
var browser = mdns.createBrowser(mdns.tcp('http'));
browser.on('serviceUp', function(service) {
  console.log("service up: ", service);
});
browser.on('serviceDown', function(service) {
  console.log("service down: ", service);
});
browser.start();

// discover all available service types
var all_the_types = mdns.browseThemAll(); // all_the_types is just another browser...

h2. Installation

mdns is available as a npm package:

bc. npm install mdns

On Linux and other systems using the avahi daemon the avahi dns_sd compat library and its header files are required.  On debianesque systems the package name is @libavahi-compat-libdnssd-dev@.  On other platforms Apples "mDNSResponder":http://opensource.apple.com/tarballs/mDNSResponder/ is recommended. Care should be taken not to install more than one mDNS stack on a system. 

If you want to play with the latest source code, here is a more manual approach:

bc.. git clone http://github.com/agnat/node_mdns
cd node_mdns
npm link && npm test

h2. Documentation

See the "user guide":<%- package.homepage + '/user_guide.html' %>.

h2. Contributors

... in random order:

<%-
package.contributors.map(function(c) {
  return '* ' + c.name + ('github' in c ? ' ("@' + c.github + '":http://github.com/' + c.github + ')' : '' );
})/*.sort(function(a,b) { return Math.floor(10 * Math.random()) % 2})*/.join('\n')
%>

Your name is missing on the list? Shame on me. Please open an issue.

h2. Bugs and Contributions

If you find a bug, please report it using the "issue tracker":<%- package.bugs.url %>.

<!-- vim: set linebreak filetype=textile spell spelllang=en_us : -->
Something went wrong with that request. Please try again.