WindowManager 1

The WindowManager interface exposes directives and events to enable the inter-process communication (IPC) client to report and control window-based presentations.

{
    "namespace": "WindowManager",
    "version": 1
}

Directive

Outbound messages from the Alexa client about window management.

setVisualCharacteristics

The Alexa client sends this directive as a response to the visualCharacteristicsRequest event to inform the IPC client about the characteristics asserted for the visual characteristic capabilities.

Example message

{
    "header": {
        "version": 1
        "namespace": "WindowManager",
        "name": "setVisualCharacteristics"
    },
    "payload": {
        "deviceDisplay": "{{OBJECT}}",
        "interactionModes": "{{OBJECT}}",
        "windowTemplates": "{{OBJECT}}"
    }
}
 

Payload parameters

Parameter Description Type Required
deviceDisplay Configuration object for the Alexa.Display capability. object No
interactionModes Configuration object for the Alexa.InteractionMode capability. object No
windowTemplates Configuration object for the Alexa.DisplayWindow capability. object No

clearWindow

Informs the IPC client to clear the content of the given window.

Example message

{
    "header": {
        "version": 1
        "namespace": "Controller",
        "name": "clearWindow"
    },
    "payload": {
        "windowId": "{{STRING}}"
    }
}
 

Payload parameters

Parameter Description Type
windowId ID of the window to clear in the IPC client. string

Events

Inbound messages from the IPC client about window management.

visualCharacteristicsRequest

Send this event to request the visual characteristics asserted by the Alexa client. The Alexa client responds with the setVisualCharacteristics directive.

Example message

{
    "header": {
        "version": 1
        "namespace": "WindowManager",
        "name": "visualCharacteristicsRequest"
    },
    "payload": {
        "characteristics": [
            "{{STRING}}",
            ...
        ]
    }
}
 

Payload parameters

Parameter Description Type Required
characteristics List of all the visual characteristics requested from the IPC client.
Valid values:
deviceDisplay
windowTemplates
interactionModes
array of strings Yes

defaultWindowInstanceChanged

Send this event to inform the Alexa client of a change to the default window instance ID to report in WindowState.

Example message

{
    "header": {
        "version": 1
        "namespace": "WindowManager",
        "name": "defaultWindowInstanceChanged"
    },
    "payload": {
        "defaultWindowId": "{{STRING}}"
    }
}
 

Payload parameters

Parameter Description Type Required
defaultWindowId ID of the window instance to report as default in the WindowState context report. string Yes

windowInstancesReport

Send this event to inform the Alexa client of the window instances created in the IPC client to track for visual presentation.

Example message


{
    "header": {
        "version": 1
        "namespace": "WindowManager",
        "name": "windowInstancesReport"
    },
    "payload": {
        "audioPlaybackUIWindowId": "{{STRING}}",
        "defaultWindowId": "{{STRING}}",
        "windowInstances": [
            {
                "windowId": "{{STRING}}",
                "templateId": "{{STRING}}",
                "sizeConfigurationId": "{{STRING}}",
                "interactionMode": "{{STRING}}",
                "supportedInterfaces": [
                    "{{STRING}}",
                    ...
                 ],
                 "zOrderIndex": {{NUMBER}}
            },
            ...
        ]
    }
}
 

Payload parameters

Parameter Description Type Required
audioPlaybackUIWindowId Window ID of the window defined by the IPC client for presenting audio media playback UI. string Yes
defaultWindowId Window ID of the default window of the IPC client. string Yes
windowInstances List of all the windows with their respective visual characteristics from the client, to be reported in WindowState context. object Yes
windowInstances.windowId ID for the window instance. string Yes
windowInstances.templateId ID for the WindowTemplate for the instance. string Yes
windowInstances.sizeConfigurationId ID for the SizeConfiguration for the instance. string Yes
windowInstances.interactionMode ID for the InteractionMode for the instance. string Yes
windowInstances.supportedInterfaces Array of AVS interfaces supported by the instance. array Yes
windowInstances.zOrderIndex Z-order of the window instance in the IPC client. string Yes

windowInstancesAdded

Send this event to inform the Alexa client of new window instances created in the Alexa client that should be tracked for visual presentation.

Example message

{
    "header": {
        "version": 1
        "namespace": "WindowManager",
        "name": "windowInstancesAdded"
    },
    "payload": {
        "windowInstances": [
            {
                "windowId": "{{STRING}}",
                "templateId": "{{STRING}}",
                "sizeConfigurationId": "{{STRING}}",
                "interactionMode": "{{STRING}}",
                "supportedInterfaces": [
                    "{{STRING}}",
                    ...
                 ],
                 "zOrderIndex": {{NUMBER}}
            },
            ...
        ]
    }
}
 

Payload parameters

Parameter Description Type Required
windowInstances List of all the windows instances to add with their respective visual characteristics from the client, to be reported in WindowState context. object Yes
windowInstances.windowId ID for the window instance. string Yes
windowInstances.templateId ID for the WindowTemplate for the instance. string Yes
windowInstances.sizeConfigurationId ID for the SizeConfiguration for the instance. string Yes
windowInstances.interactionMode ID for the InteractionMode for the instance. string Yes
windowInstances.supportedInterfaces Array of AVS interfaces supported by the instance. array Yes
windowInstances.zOrderIndex Z-order of the window instance in the IPC client. string Yes

windowInstancesRemoved

Send this event to inform the Alexa client of window instances that have been removed by the IPC client and should no longer be tracked for visual presentation.

Example message

{
    "header": {
        "version": 1
        "namespace": "WindowManager",
        "name": "windowInstancesRemoved"
    },
    "payload": {
        "windowIds": [
            "{{STRING}}"
        ]
    }
}
 

Payload parameters

Parameter Description Type Required
windowIds List of all the window instance IDs to be removed. array of strings Yes

windowInstancesUpdated

Send this event to inform the Alexa client of window instances that are updated in the IPC client.

Example message

{
    "header": {
        "version": 1
        "namespace": "WindowManager",
        "name": "windowInstancesUpdated"
    },
    "payload": {
        "windowInstances": [
            {
                "windowId": "{{STRING}}",
                "templateId": "{{STRING}}",
                "sizeConfigurationId": "{{STRING}}",
                "interactionMode": "{{STRING}}",
                "supportedInterfaces": [
                    "{{STRING}}",
                    ...
                 ],
                 "zOrderIndex": {{NUMBER}}
            },
            ...
        ]
    }
}
 

Payload parameters

Parameter Description Type Required
windowInstances List of all the window instances to update with their respective visual characteristics from the client, to be reported in WindowState context. object Yes
windowInstances.windowId ID for the window instance. string Yes
windowInstances.templateId ID for the WindowTemplate for the instance. string Yes
windowInstances.sizeConfigurationId ID for the SizeConfiguration for the instance. string Yes
windowInstances.interactionMode ID for the InteractionMode for the instance. string Yes
windowInstances.supportedInterfaces Array of AVS interfaces supported by the instance. array Yes
windowInstances.zOrderIndex Z-order of the window instance in the IPC client. string Yes