ioBroker / ioBroker.discovery

This adapter tries to discover all known devices
MIT License
28 stars 48 forks source link

Add generic MDNS/UPNP discovery and propose adapters #299

Open Apollon77 opened 1 year ago

Apollon77 commented 1 year ago

The idea is the following to also simplify adapter efforts and such:

If devices are discoverable using MDNS or UPNP we could add a section to io-package where adapters expose the relevant services/protocols for discovery.

Idea could be

"common": {
    ...
    "discovery": {
        "mdns": [
            {
                "service": "_googlecast",
                "protocol": "tcp"
           },
           {
               "serviceRegEx": "_matter[cd]",
               "protocol": "udp"
        ],
        "upnp": [
            // whatever makes sense here
        ]
    }
}

The discovery adapter then load the repository and parses out all such definitions and matchs the found things against them and if it matches then this adapter is proposed.

With this we can have "detailed fancy discovery logic" by adding code to discovery adapter, or simply configuring it in the adapters.