Test and Debug Your Smart Home Skill
Use the following methods and tools to help you test and debug state and other events as you build your Alexa Smart Home skill.
-
View Device State – View the current values of all properties of smart home devices that associated with your skill and your developer account, and whether the current value came from a
StateReport
request or proactive state update, such asChangeReport
. -
Smart Home Debugger – View the
ChangeReport
,AddOrUpdateReport
, andDeleteReport
events that Alexa receives from your skill, including your JSON, and any processing errors. -
Smart Home Debugger for WebRTC Skills – If you implement the Alexa.RTCSessionController interface in your Alexa skill, use the Smart Home debugger to see logs from your WebRTC sessions in real-time.
-
Smart Home Test Tool – Run automated tests that send directives to your skill and verify that you set the state correctly. Available for the most common Alexa capability interfaces.
-
Alexa Simulator – Test your skill without a device by using the Alexa simulator in the Alexa developer console.
-
Smart Home Skill Evaluation REST API Reference – Use the Smart Home Evaluation REST API to start evaluations and get evaluation results programmatically.
-
Alexa Skills Kit (ASK) Command Line Interface (CLI) – Use the
create-smarthome-capability-evaluation
command to create and start a capability evaluation.
Verify the minimum configuration
To test the end-to-end flow of your skill, you must complete the minimum configuration for a smart home skill. Use the left-hand navigation of the Build page in the developer console to navigate to the configuration item.
- In SMART HOME, you must define the following items for your smart home skill:
- Version v3 of the Smart Home API
- A valid AWS Lambda ARN service endpoint
A smart home skill can include multiple models. Specify the endpoint for the custom and smart home models.
- In ACCOUNT LINKING, configure the required fields.
- If your skill supports events, such as
ChangeReport
, in PERMISSIONS, enable Send Alexa Events.
To test and publish your skill, you need an account configured for your device cloud and discoverable devices for that account.
Deploy your skill code
After you verify the minimum configuration for the skill in the developer console, deploy your skill code Lambda function. For details, see Add a Lambda Function.
Make sure that you deploy your Lambda function in the AWS region associated with the skill language and locale. Otherwise, device discovery might succeed for one language version of the skill and fail for another language. For more details, see Deploy your Lambda function to multiple regions.
Enable your skill in the developer console
Complete the steps to enable your skill for testing in the developer console.
Enable your skill in the Alexa app
Complete the following steps to enable your skill in the Alexa app installed on your iOS or Android mobile device.
To enable your skill and discover devices
- Sign in to the Alexa app with the same credentials as your developer account.
- To find your skill in the Alexa app, tap More, and then tap Skills & Games.
- In Skills & Games, tap Your Skills.
- Scroll the skill types to the right, and then tap Dev.
- Scroll to find your skill.
- Tap on your skill name, and then tap ENABLE TO USE.
- Follow the prompts to enter your credentials for your device cloud account.
- To allow access to the skill, tap Allow, and then tap CLOSE.
Note: If you're unable to complete account linking, make sure that you use valid credentials for your device cloud account. Otherwise, there might be an issue with the account-linking information that you provided in the developer console. For help with account-linking issues, see Troubleshooting Account Linking.
- After the skill is enabled and linked, Alexa sends a
Discover
request to your skill to learn about the connected devices. Your skill returns the discovery response with details about the devices. - If Alexa can't discover your device, check the logs for your Lambda function. Use the logs to troubleshoot the issue. Common issues include incorrectly formatted discovery responses.
If you make changes to the account linking configuration or your discovery response, disable your skill in Your Skills.
Related topics
- Test your skills behind a firewall
- Test Skills in the Alexa Developer Console
- Skills Beta Testing for Alexa Skills
- Define Skill Store Details for Publication
- Steps to Build a Smart Home Skill
- Works with Alexa Overview
Last updated: Sep 10, 2024