KDNSSD
Network service discovery using Zeroconf
Introduction
KDNSSD is a library for handling the DNS-based Service Discovery Protocol (DNS-SD), the layer of Zeroconf that allows network services, such as printers, to be discovered without any user intervention or centralized infrastructure.
If you are writing an application that wants to discover services on the network, use KDNSSD::ServiceBrowser. You can also find available service types using ServiceTypeBrowser.
If you want to announce the availability of a service provided by your application, use KDNSSD::PublicService.
KDNSSD::DomainBrowser allows you to find domains (other than the local one) recommended for browsing or publishing to.
Note that KDNSSD::ServiceBrowser::isAvailable() provides information about the availability of the services provided by this library generally, not just for browsing services.
More information
More information about DNS-SD can be found in the online documentation for Apple's implementation of Zeroconf, Bonjour.
Using the Module
Using a KDE module's C++ API requires linking against the module library. The preferred way of consuming the library is through CMake.
Building with CMake
Use the find_package()
command to locate the needed module component in the KF6
package:
find_package(KF6 REQUIRED COMPONENTS DNSSD)
target_link_libraries(mytarget PRIVATE KF6::DNSSD)
For more details, see the Build with CMake overview.