Alexa.InteractionMode 1.1

The Alexa.InteractionMode interface allows a device to model general interaction modes that can be assigned to specific components on device, such as a modeled Window. Use the Alexa.InteractionMode interface to publish the supported interaction modes for your device. Interaction modes define a way that a user can interact with your device.

Model your interaction modes using Alexa.InteractionMode, and then assign them to available Windows through the WindowState context. Publish your Alexa.InteractionMode characteristics to the Alexa Voice Service (AVS) upon device startup.

Some properties related to interaction modes might be defined by other interfaces, such as Alexa.Presentation.APL.Video defining the supported codecs for video playback or Alexa.Display modeling physical display dimensions. Use Alexa.Display to model tap interactions with a screen.

Version changes

  • ADDED New dialog interaction mode to suppress text-to-speech (TTS).

Capability assertion

Alexa.InteractionMode 1.1 may be implemented by the device on its own behalf, but not on behalf of any connected endpoints.

New AVS integrations must assert support through Alexa.Discovery, but Alexa will continue to support existing integrations using the Capabilities API.

Sample declaration

{
    "type": "AlexaInterface",
    "interface": "Alexa.InteractionMode",
    "version": "1.1"
    "configurations" : {
        "interactionModes" : [
            {
                "uiMode": ["HUB", "TV", "MOBILE", "PC", "AUTO", "HEADLESS"],
                "id" : "{{STRING}}",
                "interactionDistance" : {
                    "unit" : [ "CENTIMETERS" | "INCHES" ],
                    "value" : {{DECIMAL}}
                },
                "touch" : [ "SUPPORTED" | "UNSUPPORTED" ],
                "keyboard" : [ "SUPPORTED" | "UNSUPPORTED" ],
                "video" : [ "SUPPORTED" | "UNSUPPORTED" ],
                "dialog" : [ "SUPPORTED" | "UNSUPPORTED" ]

            }, ...
        ]
    }
}

Parameters

The following table lists the configuration parameters for the Alexa.InteractionMode interface.

Field Type Required? Description
interactionModes Array of objects Yes Collection of supported interaction modes.
interactionModes.uiMode String Yes

The interaction mode type. The following values are valid:

  • AUTO: Automotive device, such as an in-dash head unit. Can also refer to a plug-in device that uses the in-dash display.
  • HUB: Standalone device, usually with a touchscreen designed for voice-first interactions. Examples include Echo Spot, Echo Show, and Fire HD tablets.
  • MOBILE: Mobile or tablet app. Examples are the Alexa app and the Amazon Shopping app.
  • PC: PC-class device, including desktops and laptops.
  • TV: A TV or TV-class device, such as a set-top box or game console, such as Fire TV.
  • HEADLESS: A device without a screen. Examples include the Echo, Echo Dot, and AVS-enabled soundbars.
interactionModes.id String Yes Unique, opaque identifier of the interaction mode.
interactionModes.interactionDistance Object Yes Expected interaction distance of the user from the device.
interactionModes.interactionDistance.
unit
string Yes Unit of measurement for interaction distance. Supported values are CENTIMETER or INCHES.
interactionModes.interactionDistance.
value
Number Yes Numeric value of the interaction distance in CENTIMETERS or INCHES.
interactionModes.touch String Yes Touch/tap modes supported by the interaction mode. Accepted values are SUPPORTED or UNSUPPORTED.
interactionModes.keyboard String Yes Indicates the keyboard modes supported within the interaction mode. Accepted values are SUPPORTED or UNSUPPORTED.
interactionModes.video String Yes Indicates that video playback is supported within the given interaction mode. Accepted values are SUPPORTED or UNSUPPORTED.
interactionModes.dialog String Yes Indicates that dialog playback is supported or desired in the given interaction mode. Player interface abilities controlled by this field are any directives that would render audio on the dialog channel. Accepted values are SUPPORTED or UNSUPPORTED.