Understand Smart Home Networking and Wi-Fi Skills
You can use the
Alexa.Networking APIs to create Alexa skills that model a home Wi-Fi network and the devices connected to it, such as computers and mobile phones. Your skill can enable and disable internet and network access for individual devices on both Wi-Fi and Ethernet connections, and schedule access duration.
You can enable and disable internet and network access on both Wi-Fi and Ethernet connections, without removing devices from the Wi-Fi network.
Alexa.Networking interfaces to build skills for smart home networking and Wi-Fi devices use the pre-built voice interaction model.
The following examples show some user utterances.
Alexa, turn off the Wi-Fi for John's tablet.
Alexa, enable the internet for Junior's phone for three hours.
Overview of Wi-Fi skills
The user can only voice-control network access for the devices they choose in the Alexa app. In the Alexa app, choose Devices, choose Wi-Fi access, and then select the devices that you want to voice-control on the network.
By using relationships, users can associate multiple connected devices with a single home network controller. If the user deletes a home network, all the connected devices are also deleted. You report relationships during discovery for connected devices. For details, see connected devices discovery.
If your device is a router, advertise your service by using DNS-based service discovery to help Alexa discover your router locally. If Alexa can discover your router, Alexa publishes a card in the Alexa app to help customers set up voice-control networking for your router. For details, see DNS-based service discovery.
Implement the following Smart Home APIs in your Alexa skill to enable users to control your smart home networking devices. For ideas about how to combine Alexa interfaces in different products, see Get Started with Device Templates.
- Alexa.Networking.AccessController — Users can enable or disable network and internet access for a device and schedule access to the network.
- Alexa.Networking.ConnectedDevice — For devices that connect to a home network controller.
- Alexa.Networking.HomeNetworkController — For IP network routers.
DNS service discovery
If your device is a router, advertise a multicast service, by using RFC 6763 DNS-based service discovery. Amazon recommends that you use Avahi or Bonjour software, or any other standards-compliant software implementation of DNS service discovery. In your DNS service discovery, the service type is
_alexa._tcp, and the domain is
Provide the following information in your DNS service discovery records.
||hostname||An RFC 2782-compliant hostname. Amazon recommends that you publish a multicast DNS entry that points to the router itself.|
||A UUID provided by Amazon, for information required to set up your skill.
You request a
||The version of the TXT schema. The current version is 1.|
Service discovery example
The following service discovery example uses the built-in DNS service discovery client on macOS.
dns-sd -Z _alexa._tcp local
The following output shows the correct resolution for a device that supports the
_alexa._tcp service type.
_alexa._tcp PTR example._alexa._tcp example._alexa._tcp SRV 0 0 443 186590d00737-2.local. example._alexa._tcp TXT "version=1" "skillSetupId=114980c4-62fb-4ec3-801e-a6ac42c1b901"
Last updated: Apr 28, 2022