Alexa Auto SDK  2.0.0
Public Types | Public Member Functions | List of all members
aace::alexa::AlexaClient Class Reference

Public Types

enum  DialogState {
  DialogState::IDLE,
  DialogState::LISTENING,
  DialogState::EXPECTING,
  DialogState::THINKING,
  DialogState::SPEAKING
}
 
enum  ConnectionStatus {
  ConnectionStatus::DISCONNECTED,
  ConnectionStatus::PENDING,
  ConnectionStatus::CONNECTED
}
 
enum  ConnectionChangedReason {
  ConnectionChangedReason::NONE,
  ConnectionChangedReason::SUCCESS,
  ConnectionChangedReason::UNRECOVERABLE_ERROR,
  ConnectionChangedReason::ACL_CLIENT_REQUEST,
  ConnectionChangedReason::ACL_DISABLED,
  ConnectionChangedReason::DNS_TIMEDOUT,
  ConnectionChangedReason::CONNECTION_TIMEDOUT,
  ConnectionChangedReason::CONNECTION_THROTTLED,
  ConnectionChangedReason::INVALID_AUTH,
  ConnectionChangedReason::PING_TIMEDOUT,
  ConnectionChangedReason::WRITE_TIMEDOUT,
  ConnectionChangedReason::READ_TIMEDOUT,
  ConnectionChangedReason::FAILURE_PROTOCOL_ERROR,
  ConnectionChangedReason::INTERNAL_ERROR,
  ConnectionChangedReason::SERVER_INTERNAL_ERROR,
  ConnectionChangedReason::SERVER_SIDE_DISCONNECT,
  ConnectionChangedReason::SERVER_ENDPOINT_CHANGED
}
 

Public Member Functions

virtual void dialogStateChanged (DialogState state)
 
virtual void authStateChanged (AuthState state, AuthError error)
 
virtual void connectionStatusChanged (ConnectionStatus status, ConnectionChangedReason reason)
 

Detailed Description

AlexaClient should be extended to handle Alexa state changes on the platform.

Member Enumeration Documentation

◆ DialogState

Describes the state of Alexa dialog interaction

Enumerator
IDLE 

Alexa is idle and ready for an interaction.

LISTENING 

Alexa is currently listening.

EXPECTING 

Alexa is currently expecting a response from the user.

THINKING 

A user request has completed, and no more user input is being accepted. Alexa is waiting for a response from AVS.

SPEAKING 

Alexa is responding to a request with speech.

◆ ConnectionStatus

Describes the status of an AVS connection

Enumerator
DISCONNECTED 

Not connected to AVS

PENDING 

Attempting to establish a connection to AVS

CONNECTED 

Connected to AVS

◆ ConnectionChangedReason

Describes the reason for a change in AVS connection status

Enumerator
NONE 

No reason specified.

SUCCESS 

The connection status changed due to a successful operation.

UNRECOVERABLE_ERROR 

The connection status changed due to an error from which there is no recovery.

ACL_CLIENT_REQUEST 

The connection status changed due to a client request.

ACL_DISABLED 

The connection attempt failed because connection was disabled.

DNS_TIMEDOUT 

The connection attempt failed due to a DNS resolution timeout.

CONNECTION_TIMEDOUT 

The connection attempt failed due to a connection timeout.

CONNECTION_THROTTLED 

The connection attempt failed due to excessive load on the server.

INVALID_AUTH 

The provided access credentials were invalid.

PING_TIMEDOUT 

There was a timeout sending a ping request.

WRITE_TIMEDOUT 

There was a timeout writing to AVS.

READ_TIMEDOUT 

There was a timeout reading from AVS.

FAILURE_PROTOCOL_ERROR 

There was an underlying protocol error.

INTERNAL_ERROR 

There was an internal error.

SERVER_INTERNAL_ERROR 

There was an internal error on the server.

SERVER_SIDE_DISCONNECT 

The server asked the client to reconnect.

SERVER_ENDPOINT_CHANGED 

The server endpoint has changed.

Member Function Documentation

◆ dialogStateChanged()

virtual void aace::alexa::AlexaClient::dialogStateChanged ( DialogState  state)
inlinevirtual

Notifies the platform implementation of an Alexa dialog state change

Parameters
[in]stateThe new Alexa dialog state
Note
It is the responsibility of the platform implementation to provide a familiar Alexa experience for the user. See the AVS UX Attention System guidelines for recommendations on communicating Alexa attention states: https://developer.amazon.com/docs/alexa-voice-service/ux-design-attention.html#implement

◆ authStateChanged()

virtual void aace::alexa::AlexaClient::authStateChanged ( AuthState  state,
AuthError  error 
)
inlinevirtual

Notifies the platform implementation of an AVS authorization state change

Parameters
[in]stateThe new authorization state
[in]errorThe error state of the authorization attempt

◆ connectionStatusChanged()

virtual void aace::alexa::AlexaClient::connectionStatusChanged ( ConnectionStatus  status,
ConnectionChangedReason  reason 
)
inlinevirtual

Notifies the platform implementation of an AVS connection status change

Parameters
[in]statusThe new AVS connection status
[in]reasonThe reason for the status change

Alexa Auto SDK 2.0.0 - Copyright 2017-2019 Amazon.com, Inc. or its affiliates. All Rights Reserved. Licensed under the Apache License, Version 2.0