Я использую пакет multicast-dns
в Node и пытаюсь получить IP-адреса своих устройств Google Home в своей сети.
Мои знания в области сети весьма ограничены, так что, возможно, чтоЯ пытаюсь достичь не возможно, или есть дополнительные шаги, которые мне нужно предпринять?
Мой код ниже:
const services = [];
mdns.on('response', async function(response) {
response.answers.forEach(a => {
console.log(a.name, a.data)
});
await new Promise(resolve => setTimeout(resolve, 1000));
mdns.destroy()
});
mdns.query({
questions:[{
name: '_googlecast._tcp.local',
type: 'SRV'
}]
})
Это выводит ряд ответов ниже. Похоже, что ответы, в которых данные являются объектом, - это ответы, на которые нужно обратить внимание, однако data.target содержит только то, что, как я считаю, является UDP SSDP, а не IP-адрес устройства?
Как мне действовать? получить IP-адрес этих устройств?
_googlecast._tcp.local Google-Cast-Group-c3165fbd99aa4c46bc2f269b0450bb19-1._googlecast._tcp.local
Google-Home-Mini-7bb2a10fd9562410e090b61cb434a84b._googlecast._tcp.local { priority: 0,
weight: 0,
port: 8009,
target: '7bb2a10f-d956-2410-e090-b61cb434a84b.local' }
Google-Home-Mini-7bb2a10fd9562410e090b61cb434a84b._googlecast._tcp.local { priority: 0,
weight: 0,
port: 8009,
target: '7bb2a10f-d956-2410-e090-b61cb434a84b.local' }
Google-Cast-Group-c3165fbd99aa4c46bc2f269b0450bb19-1._googlecast._tcp.local { priority: 0,
weight: 0,
port: 42374,
target: '7bb2a10f-d956-2410-e090-b61cb434a84b.local' }
Google-Cast-Group-c3165fbd99aa4c46bc2f269b0450bb19-1._googlecast._tcp.local { priority: 0,
weight: 0,
port: 42374,
target: '7bb2a10f-d956-2410-e090-b61cb434a84b.local' }
_googlecast._tcp.local Google-Home-Mini-7bb2a10fd9562410e090b61cb434a84b._googlecast._tcp.local