Create Skills for Echo Devices With a Screen
Echo devices with a screen, such as Echo Show and Echo Spot, allow skill developers to create skills for Alexa that use both screen and voice interaction. The screen displays and interactions are created with the use of templates and the Display interface, as described in this reference. To learn more about building skills for Echo Show and Echo Spot, see Build Skills for Echo Show and Echo Spot.
How to Build Alexa Skills for Echo Show for a quick start to creating an Alexa skill with screen support.
See Best Practices for Echo Show and Echo Spot Skills for design guidance.
Display Interface and Template Reference for specific instructions about using the
Display.RenderTemplatedirective, and the various display templates, in your skill service code.
Configure Your Skill to Support Display on Echo Devices With a Screen
The process to enable the use of the
Display.RenderTemplate directive, which is the directive used to display content on a screen, is the same for a new skill, or for an existing skill.
In the developer console beta, you enable the Display Interface the Build > Custom > Interfaces page. After you enable Display Interface, click Save Interfaces, then be sure to click Build Model to re-build your interaction model. The developer console automatically includes all of the required built-in intents in your interaction model. Continue with step 3 below.
- On the Skill Information page for your skill, in the Amazon Developer Portal, select Yes for Render Template. Note that you can also select Yes for Audio Player and Video App support, if you want those to be part of your skill.
- On the Interaction Model page, you can choose whether to use Skill Builder, or the default page, for building your interaction model.
- If you use the default Interaction Model page, in the Intent Schema, include the desired built-in intents for navigating your templates in your intent schema, as you would if creating a voice-only skill. Ensure you include the required built-in intents.
- If you select Skill Builder, note the required built-in intents that are already included. You can include whatever other intents that your skill require. See Available Standard Built-In Intents for Echo Show.
- In your skill service code, determine what interfaces the customer's device supports, so that your skill service then provides the appropriate responses with the appropriately rendered content, including display if desired and supported. To determine the supported interfaces, parse the value of
event.context.System.device.supportedInterfacesin the Alexa request. The value of
supportedInterfacesdetermines the interfaces supported by the customer's device.
- If the
Displayinterface is supported, include the
Display.RenderTemplatedirective in your skill responses to display content on screen as appropriate, just as you would include other directives, as shown in the examples below. As a developer, you can choose not to include any display content, but cards that display in the Alexa app will also appear on the customer's device. See Display Interface and Template Reference.
For a tutorial on how to create a skill that supports Echo devices with a screen, see Display Interface Skill for Echo Show.