UNPKG

1.16 kBJavaScriptView Raw
1'use strict';
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6
7exports.default = function (args) {
8 var ip = (0, _networkAddress2.default)(args.interface);
9 var mdns = (0, _multicastDns2.default)({
10 interface: ip
11 });
12 return mdns;
13};
14
15exports.onResponse = onResponse;
16exports.query = query;
17
18var _multicastDns = require('multicast-dns');
19
20var _multicastDns2 = _interopRequireDefault(_multicastDns);
21
22var _networkAddress = require('network-address');
23
24var _networkAddress2 = _interopRequireDefault(_networkAddress);
25
26function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
27
28function onResponse(mdns, callback, timer) {
29 var answers = [];
30 mdns.on('response', function (res) {
31 var swarmAnswers = res.answers.reduce(function (found, answer) {
32 if (answer.name.endsWith('zombie-swarm')) found = res.answers;
33 return found;
34 }, null);
35 if (swarmAnswers) answers = answers.concat(swarmAnswers);
36 });
37 setTimeout(function () {
38 callback(answers);
39 }, timer);
40}
41
42function query(mdns) {
43 mdns.query({
44 questions: [{
45 name: 'zombie-swarm',
46 type: 'A'
47 }]
48 });
49}
\No newline at end of file