Alexa Auto SDK  4.3
Public Types | Static Public Member Functions | List of all members
aace::vehicle::config::VehicleConfiguration Class Reference

Public Types

enum  DeviceInfoPropertyType {
  DeviceInfoPropertyType::MANUFACTURER,
  DeviceInfoPropertyType::MODEL,
  DeviceInfoPropertyType::SERIAL_NUMBER,
  DeviceInfoPropertyType::PLATFORM,
  DeviceInfoPropertyType::OS_VERSION,
  DeviceInfoPropertyType::HARDWARE_ARCH
}
 
enum  AppInfoPropertyType { AppInfoPropertyType::SOFTWARE_VERSION }
 
enum  VehicleInfoPropertyType {
  VehicleInfoPropertyType::MAKE,
  VehicleInfoPropertyType::MODEL,
  VehicleInfoPropertyType::YEAR,
  VehicleInfoPropertyType::TRIM,
  VehicleInfoPropertyType::OPERATING_COUNTRY,
  VehicleInfoPropertyType::MICROPHONE_TYPE,
  VehicleInfoPropertyType::VEHICLE_IDENTIFIER,
  VehicleInfoPropertyType::ENGINE_TYPE,
  VehicleInfoPropertyType::RSE_EMBEDDED_FIRE_TVS
}
 
using VehicleInfoProperty = std::pair< VehicleInfoPropertyType, std::string >
 
using DeviceInfoProperty = std::pair< DeviceInfoPropertyType, std::string >
 
using AppInfoProperty = std::pair< AppInfoPropertyType, std::string >
 

Static Public Member Functions

static std::shared_ptr< aace::core::config::EngineConfigurationcreateVehicleInfoConfig (const std::vector< VehicleInfoProperty > &propertyList)
 
static std::shared_ptr< aace::core::config::EngineConfigurationcreateDeviceInfoConfig (const std::vector< DeviceInfoProperty > &propertyList)
 
static std::shared_ptr< aace::core::config::EngineConfigurationcreateAppInfoConfig (const std::vector< AppInfoProperty > &propertyList)
 

Detailed Description

The VehicleConfiguration class is a factory that creates "aace.vehicle" Engine configuration objects.

Member Typedef Documentation

◆ VehicleInfoProperty

Identifies a vehicle info property with a pair of type and value.

◆ DeviceInfoProperty

Identifies a device info property with a pair of type and value.

◆ AppInfoProperty

Identifies an app info property with a pair of type and value.

Member Enumeration Documentation

◆ DeviceInfoPropertyType

Specifies the device info configuration keys

Enumerator
MANUFACTURER 

The manufacturer of the head unit hardware. Example values: "Alpine", "Pioneer"

MODEL 

The model name of the head unit hardware. Example value: "Coral"

SERIAL_NUMBER 

The serial number of the head unit expressed as a string.

PLATFORM 

The head unit software platform or operating system name. Example values: "Android", "Ubuntu"

OS_VERSION 

The version of the head unit operating system expressed as a string. Example values: "12", "18.04.6 LTS"

HARDWARE_ARCH 

The hardware architecture of the head unit or CPU+instruction set. Examples: "arm64-v8a", "x86_64", "armv7hf", "armv8"

◆ AppInfoPropertyType

Specifies the app info configuration keys

Enumerator
SOFTWARE_VERSION 

The version of the Auto SDK client application expressed as a string. Example value: "1.0.1"

◆ VehicleInfoPropertyType

Specifies the vehicle info configuration keys

Enumerator
MAKE 

The make of the vehicle.

Note
This property is required.
MODEL 

The model of the vehicle.

Note
This property is required.
YEAR 

The model year of the vehicle. A value of this property type must be an integer in the range 1900-2100 expressed as a string. Example value: "2019"

Note
This property is required.
TRIM 

The trim package of the vehicle, identifying the vehicle's level of equipment or special features. Example values: "Standard", "Sport", "Limited"

OPERATING_COUNTRY 

The current (or intended, if current is not available) operating country for the vehicle. The value must be an ISO 3166 Alpha-2 country code. Example values: "US", "MX", "JP"

MICROPHONE_TYPE 

The type and arrangement of microphone used by the vehicle. Example value: "7 mic array centrally mounted"

VEHICLE_IDENTIFIER 

The automaker's identifier for the vehicle.

ENGINE_TYPE 

The type of engine in the vehicle. Accepted values: "GAS", "HYBRID", "ELECTRIC"

RSE_EMBEDDED_FIRE_TVS 

The number of rear seat embedded Fire TVs in the vehicle. The value must be an integer expressed as a string. Example value: "2"

Member Function Documentation

◆ createVehicleInfoConfig()

static std::shared_ptr<aace::core::config::EngineConfiguration> aace::vehicle::config::VehicleConfiguration::createVehicleInfoConfig ( const std::vector< VehicleInfoProperty > &  propertyList)
static

Factory function used to programmatically generate "aace.vehicle.vehicleInfo" Engine configuration data. The data generated by this function is equivalent to providing the following JSON format in a configuration file:

{
"aace.vehicle": {
"vehicleInfo": {
"make": "<VEHICLE_MAKE>",
"model": "<VEHICLE_MODEL>",
"year": "<VEHICLE_MODEL_YEAR>",
"trim": "<TRIM>",
"microphoneType": "<MICROPHONE_TYPE>",
"operatingCountry": "<OPERATING_COUNTRY>",
"vehicleIdentifier": "<VEHICLE_ID>",
"engineType": "<ENGINE_TYPE>",
"rseEmbeddedFireTvs": "<EMBEDDED_FIRE_TV_COUNT>"
}
}
}
Parameters
[in]propertyListA list of VehicleInfoProperty pairs
Returns
An aace::core::config::EngineConfiguration containing the specified data in JSON format

◆ createDeviceInfoConfig()

static std::shared_ptr<aace::core::config::EngineConfiguration> aace::vehicle::config::VehicleConfiguration::createDeviceInfoConfig ( const std::vector< DeviceInfoProperty > &  propertyList)
static

Factory function used to programmatically generate "aace.vehicle.deviceInfo" Engine configuration data. The data generated by this function is equivalent to providing the following JSON format in a configuration file:

{
"aace.vehicle": {
"deviceInfo": {
"manufacturer": "<DEVICE_MANUFACTURER>",
"model": "<DEVICE_MODEL>",
"serialNumber": <DEVICE_SERIAL_NUMBER>,
"osVersion": "<OS_VERSION>",
"hardwareArch": "<HARDWARE_ARCH>",
"platform": "<PLATFORM>",
}
}
}
Parameters
[in]propertyListA list of DeviceInfoProperty pairs
Returns
An aace::core::config::EngineConfiguration containing the specified data in JSON format

◆ createAppInfoConfig()

static std::shared_ptr<aace::core::config::EngineConfiguration> aace::vehicle::config::VehicleConfiguration::createAppInfoConfig ( const std::vector< AppInfoProperty > &  propertyList)
static

Factory function used to programmatically generate "aace.vehicle.appInfo" Engine configuration data. The data generated by this function is equivalent to providing the following JSON format in a configuration file:

{
"aace.vehicle": {
"appInfo": {
"softwareVersion": "<APP_VERSION>"
}
}
}
Parameters
[in]propertyListA list of AppInfoProperty pairs
Returns
An aace::core::config::EngineConfiguration containing the specified data in JSON format

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