UNPKG

718 BJavaScriptView Raw
1import _mdns from 'multicast-dns'
2import address from 'network-address'
3
4export default function(args) {
5 let ip = address(args.interface)
6 let mdns = _mdns({
7 interface: ip
8 })
9 return mdns
10}
11
12export function onResponse(mdns, callback, timer) {
13 let answers = []
14 mdns.on('response', (res) => {
15 let swarmAnswers = res.answers.reduce((found, answer) => {
16 if (answer.name.endsWith('zombie-swarm')) found = res.answers
17 return found
18 }, null)
19 if (swarmAnswers) answers = answers.concat(swarmAnswers)
20 })
21 setTimeout(() => {
22 callback(answers)
23 }, timer)
24}
25
26export function query(mdns) {
27 mdns.query({
28 questions: [{
29 name : 'zombie-swarm',
30 type : 'A'
31 }]
32 })
33}