node_mdns

mdns/zeroconf/bonjour service discovery add-on for node.js

  • 所有者: agnat/node_mdns
  • 平台:
  • 許可證: MIT License
  • 分類:
  • 主題:
  • 喜歡:
    0
      比較:

Github星跟蹤圖

mdns -- node.js Service Discovery

  • Package: mdns
  • Description: multicast DNS service discovery
  • Installation: npm install mdns (see below)
  • Documentation: mdns user guide
  • License: MIT
  • Donations: Flattr this git repository

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

Synopsis

// import the module
const mdns = require('mdns');

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

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

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

Installation

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 fedoraesque systems the package is avahi-compat-libdns_sd-devel. On other platforms Apple's mDNSResponder is recommended. Care should be taken not to install more than one mDNS stack on a system.

On Windows you are going to need Apples "Bonjour SDK for Windows". You can download it either from Apple (registration required) or various unofficial sources. Take your pick. After installing the SDK restart your computer and make sure the BONJOUR_SDK_HOME environment variable is set. You'll also need a compiler. Microsoft Visual Studio Express will do. On Windows node >=0.7.9 is required.

mdns is available as a npm package:

npm install mdns

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

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

In case you want to run or even publish your package using the development version of mdns you may set the version field to a tarball URL:

{ "name": "discomvobulator"
, "version": "0.0.1"
, "description": "covers all your discomvobulation needs"
, "dependencies":
  { "mdns": "https://github.com/agnat/node_mdns/tarball/master"
  }
}

Documentation

See the user guide.

Contributors

In random order:

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

Bugs and Contributions

If you find a bug, please report it using the issue tracker.

主要指標

概覽
名稱與所有者agnat/node_mdns
主編程語言JavaScript
編程語言Makefile (語言數: 5)
平台
許可證MIT License
所有者活动
創建於2010-05-01 20:48:42
推送於2024-02-23 12:35:18
最后一次提交2021-04-19 22:03:05
發布數24
最新版本名稱v2.7.2 (發布於 )
第一版名稱v0.0.4 (發布於 2012-01-12 14:24:31)
用户参与
星數874
關注者數23
派生數147
提交數631
已啟用問題?
問題數205
打開的問題數35
拉請求數40
打開的拉請求數8
關閉的拉請求數16
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?