SessionSetup 1
The SessionSetup
interface exposes directives and events to initialize the connection between the Alexa client and the inter-process communication (IPC) client through version validation.
Header
{
"namespace": "SessionSetup",
"version": 1
}
Directives
Outbound messages from the Alexa client to the IPC client about session setup.
configureClient
This directive enables the IPC client to send a configuration payload of its definition to itself from the Alexa client when the native layer has connected. The message is returned as the result of a clientConfigRequest
event from the IPC client.
Example message
{ "header": { "version": 1 "namespace": "SessionSetup", "name": "configureClient" }, "payload": {{OBJECT}} }
Payload parameters
Payload is an opaque object defined by the IPC client.
initializeClient
Send this directive to the IPC client to initialize the connection and inform the IPC client of the IPC framework version. The IPC client responds with the clientInitialized
event.
Example message
{ "header": { "version": 1 "namespace": "SessionSetup", "name": "initializeClient" }, "payload": { "ipcVersion": "{{STRING}}" } }
Payload parameters
Parameter | Description | Type | Required |
---|---|---|---|
ipcVersion |
Version of the AVS Device SDK IPC framework that requests the connection to the IPC client. | string | Yes |
Events
Inbound messages from the IPC client about session setup.
namespaceVersionsReport
Send this event to inform the Alexa client of supported IPC namespace versions in the IPC client.
Example message
{ "header": { "version": 1 "namespace": "SessionSetup", "name": "namespaceVersionsReport" }, "payload": { "entries": [ { "namespace": "{{STRING}}", "version": {{NUMBER}} }, ... ] } }
Payload parameters
Parameter | Description | Type | Required |
---|---|---|---|
entries |
Array of asserted namespace entries with version. | array | Yes |
entries.namespace |
IPC API namespace name. | string | Yes |
entries.version |
IPC API version. | number | Yes |
clientInitialized
Send this event as a response to the initializeClient
directive to inform the Alexa client if the IPC client supports the given IPC framework version.
Example message
{ "header": { "version": 1 "namespace": "SessionSetup", "name": "clientInitialized" }, "payload": { "isIPCVersionSupported": {{BOOLEAN}} } }
Payload parameters
Parameter | Description | Type | Required |
---|---|---|---|
isIPCVersionSupported |
Reports if the IPC client supports the AVS Device SDK IPC framework version. TRUE if supported. |
Boolean | Yes |
clientConfigRequest
Send this event to request the Alexa client to return a developer-defined configuration payload for the IPC client with the configureClient
directive.
Example message
{
"header": {
"version": 1
"namespace": "SessionSetup",
"name": "clientConfigRequest"
},
"payload": {}
}
Payload parameters
The payload is an empty object.
Related topics
Last updated: Sep 22, 2022