# Network service discover

An action block that scans the network to discover application services. Currently only supports DNS Service Discovery (DNS-SD) on a local network over Multicast DNS (mDNS).

The fiber will pause until maximum results has been found, or duration expires.

The Service type specify which protocol and transport layer the application use for the service, its syntax is `"_<protocol>._<transportlayer>"`, e.g. a network printer may use `"_ipp._tcp"`. The predefined list is far from exhaustive, see IANA Service Name and Transport Protocol Port Number Registry for the official list.

The arrays assigned to Service names, Service hosts, Service ports and Service attributes are of equal length, sorted by name.

## Input arguments

- Service type — type of services to discover.
- Service name — name of services to discover, default is any name, may contain glob pattern.
- Maximum results — maximum number of results, default is no limit, i.e. scan for duration.
- Maximum duration — maximum duration of service scan, default is 3 seconds.

## Output variables

- Service names — variable to assign an array of service names.
- Service hosts — variable to assign an array of IP addresses.
- Service ports — variable to assign an array of ports.
- Service attributes — variable to assign an array of attributes as a dictionary (Android 5+).