Alexa Auto SDK  2.3.1
AlexaConfiguration.h
1 /*
2  * Copyright 2017-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License").
5  * You may not use this file except in compliance with the License.
6  * A copy of the License is located at
7  *
8  * http://aws.amazon.com/apache2.0/
9  *
10  * or in the "license" file accompanying this file. This file is distributed
11  * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12  * express or implied. See the License for the specific language governing
13  * permissions and limitations under the License.
14  */
15 
16 #ifndef AACE_ALEXA_ALEXA_CONFIGURATION_H
17 #define AACE_ALEXA_ALEXA_CONFIGURATION_H
18 
19 #include <fstream>
20 #include <iostream>
21 #include <string>
22 #include <vector>
23 #include <sstream>
24 #include <memory>
25 #include <chrono>
26 
27 #include "AACE/Core/EngineConfiguration.h"
28 #include "AlexaEngineInterfaces.h"
29 
32 namespace aace {
33 namespace alexa {
34 namespace config {
35 
40 public:
65  static std::shared_ptr<aace::core::config::EngineConfiguration> createDeviceInfoConfig(
66  const std::string& deviceSerialNumber,
67  const std::string& clientId,
68  const std::string& productId,
69  const std::string& manufacturerName,
70  const std::string& description);
71 
89  static std::shared_ptr<aace::core::config::EngineConfiguration> createAlertsConfig(
90  const std::string& databaseFilePath);
91 
109  static std::shared_ptr<aace::core::config::EngineConfiguration> createNotificationsConfig(
110  const std::string& databaseFilePath);
111 
129  static std::shared_ptr<aace::core::config::EngineConfiguration> createCertifiedSenderConfig(
130  const std::string& databaseFilePath);
131 
149  static std::shared_ptr<aace::core::config::EngineConfiguration> createCapabilitiesDelegateConfig(
150  const std::string& databaseFilePath);
176  static std::shared_ptr<aace::core::config::EngineConfiguration> createCurlConfig(
177  const std::string& certsPath,
178  const std::string& iface = "",
179  const std::string& proxy = "");
180 
204  static std::shared_ptr<aace::core::config::EngineConfiguration> createSettingsConfig(
205  const std::string& databaseFilePath,
206  const std::string& locale = "en-US");
207 
238  static std::shared_ptr<aace::core::config::EngineConfiguration> createDeviceSettingsConfig(
239  const std::string& databaseFilePath,
240  const std::vector<std::string>& locales = {"en-US",
241  "en-GB",
242  "de-DE",
243  "en-IN",
244  "en-CA",
245  "ja-JP",
246  "en-AU",
247  "fr-FR",
248  "it-IT",
249  "es-ES",
250  "es-MX",
251  "fr-CA",
252  "es-US",
253  "hi-IN",
254  "pt-BR"},
255  const std::string& defaultLocale = "en-US",
256  const std::string& defaultTimezone = "America/Vancouver",
257  const std::vector<std::vector<std::string>>& localeCombinations = {});
258 
276  static std::shared_ptr<aace::core::config::EngineConfiguration> createMiscStorageConfig(
277  const std::string& databaseFilePath);
278 
296  static std::shared_ptr<aace::core::config::EngineConfiguration> createSpeakerManagerConfig(bool enabled);
297 
315  static std::shared_ptr<aace::core::config::EngineConfiguration> createSystemConfig(uint32_t firmwareVersion);
316 
336  static std::shared_ptr<aace::core::config::EngineConfiguration> createSpeechRecognizerConfig(
337  const std::string& encoderName);
338 
347 
352 
357 
358  };
359 
363  using TemplateRuntimeTimeout = std::pair<TemplateRuntimeTimeoutType, std::chrono::milliseconds>;
364 
389  static std::shared_ptr<aace::core::config::EngineConfiguration> createTemplateRuntimeTimeoutConfig(
390  const std::vector<TemplateRuntimeTimeout>& timeoutList);
391 
409  static std::shared_ptr<aace::core::config::EngineConfiguration> createExternalMediaPlayerConfig(
410  const std::string& agent);
411 
418 
426 
484  static std::shared_ptr<aace::core::config::EngineConfiguration> createEqualizerControllerConfig(
485  const std::vector<EqualizerBand>& supportedBands = {},
486  int minLevel = -6,
487  int maxLevel = 6,
488  const std::vector<EqualizerBandLevel>& defaultBandLevels = {});
489 };
490 
491 } // namespace config
492 } // namespace alexa
493 } // namespace aace
494 
495 #endif // AACE_ALEXA_ALEXA_CONFIGURATION_H
Definition: AlexaConfiguration.h:39
TemplateRuntimeTimeoutType
Definition: AlexaConfiguration.h:342
static std::shared_ptr< aace::core::config::EngineConfiguration > createMiscStorageConfig(const std::string &databaseFilePath)
static std::shared_ptr< aace::core::config::EngineConfiguration > createDeviceInfoConfig(const std::string &deviceSerialNumber, const std::string &clientId, const std::string &productId, const std::string &manufacturerName, const std::string &description)
aace::alexa::EqualizerControllerEngineInterface::EqualizerBandLevel EqualizerBandLevel
Definition: AlexaConfiguration.h:425
Definition: AddressBook.h:26
static std::shared_ptr< aace::core::config::EngineConfiguration > createExternalMediaPlayerConfig(const std::string &agent)
static std::shared_ptr< aace::core::config::EngineConfiguration > createAlertsConfig(const std::string &databaseFilePath)
std::pair< TemplateRuntimeTimeoutType, std::chrono::milliseconds > TemplateRuntimeTimeout
Definition: AlexaConfiguration.h:363
std::pair< EqualizerBand, int > EqualizerBandLevel
Definition: AlexaEngineInterfaces.h:462
static std::shared_ptr< aace::core::config::EngineConfiguration > createSystemConfig(uint32_t firmwareVersion)
static std::shared_ptr< aace::core::config::EngineConfiguration > createTemplateRuntimeTimeoutConfig(const std::vector< TemplateRuntimeTimeout > &timeoutList)
static std::shared_ptr< aace::core::config::EngineConfiguration > createCurlConfig(const std::string &certsPath, const std::string &iface="", const std::string &proxy="")
static std::shared_ptr< aace::core::config::EngineConfiguration > createSpeechRecognizerConfig(const std::string &encoderName)
static std::shared_ptr< aace::core::config::EngineConfiguration > createEqualizerControllerConfig(const std::vector< EqualizerBand > &supportedBands={}, int minLevel=-6, int maxLevel=6, const std::vector< EqualizerBandLevel > &defaultBandLevels={})
static std::shared_ptr< aace::core::config::EngineConfiguration > createCertifiedSenderConfig(const std::string &databaseFilePath)
static std::shared_ptr< aace::core::config::EngineConfiguration > createSettingsConfig(const std::string &databaseFilePath, const std::string &locale="en-US")
static std::shared_ptr< aace::core::config::EngineConfiguration > createSpeakerManagerConfig(bool enabled)
static std::shared_ptr< aace::core::config::EngineConfiguration > createDeviceSettingsConfig(const std::string &databaseFilePath, const std::vector< std::string > &locales={"en-US", "en-GB", "de-DE", "en-IN", "en-CA", "ja-JP", "en-AU", "fr-FR", "it-IT", "es-ES", "es-MX", "fr-CA", "es-US", "hi-IN", "pt-BR"}, const std::string &defaultLocale="en-US", const std::string &defaultTimezone="America/Vancouver", const std::vector< std::vector< std::string >> &localeCombinations={})
EqualizerBand
Definition: AlexaEngineInterfaces.h:449
static std::shared_ptr< aace::core::config::EngineConfiguration > createNotificationsConfig(const std::string &databaseFilePath)
static std::shared_ptr< aace::core::config::EngineConfiguration > createCapabilitiesDelegateConfig(const std::string &databaseFilePath)

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