AlexaClientSDK  3.0.0
A cross-platform, modular SDK for interacting with the Alexa Voice Service
DefaultClientBuilder.h
Go to the documentation of this file.
1 /*
2  * Copyright 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 ALEXA_CLIENT_SDK_APPLICATIONUTILITIES_DEFAULTCLIENT_INCLUDE_DEFAULTCLIENT_DEFAULTCLIENTBUILDER_H_
17 #define ALEXA_CLIENT_SDK_APPLICATIONUTILITIES_DEFAULTCLIENT_INCLUDE_DEFAULTCLIENT_DEFAULTCLIENTBUILDER_H_
18 
22 #include <AIP/AudioProvider.h>
45 #include <Endpoints/Endpoint.h>
55 
56 #ifdef ENABLE_PCC
57 #include <acsdk/PhoneCallControllerInterfaces/Phone/PhoneCallerInterface.h>
58 #include <acsdk/PhoneCallController/PhoneCallController.h>
59 #endif
60 
61 #ifdef ENABLE_MCC
62 #include <acsdk/MeetingClientControllerInterfaces/Calendar/CalendarClientInterface.h>
63 #include <acsdk/MeetingClientControllerInterfaces/Meeting/MeetingClientInterface.h>
64 #include <acsdk/MeetingClientController/MeetingClientController.h>
65 #endif
66 
69 
70 #include "DefaultClient.h"
71 
72 namespace alexaClientSDK {
73 namespace defaultClient {
78 public:
155  static std::unique_ptr<DefaultClientBuilder> create(
156  std::shared_ptr<avsCommon::utils::DeviceInfo> deviceInfo,
157  std::shared_ptr<registrationManager::CustomerDataManagerInterface> customerDataManager,
158  std::unordered_map<std::string, std::shared_ptr<avsCommon::utils::mediaPlayer::MediaPlayerInterface>>
159  externalMusicProviderMediaPlayers,
160  std::unordered_map<std::string, std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface>>
161  externalMusicProviderSpeakers,
163  std::shared_ptr<avsCommon::utils::mediaPlayer::MediaPlayerInterface> speakMediaPlayer,
164  std::unique_ptr<avsCommon::utils::mediaPlayer::MediaPlayerFactoryInterface> audioMediaPlayerFactory,
165  std::shared_ptr<avsCommon::utils::mediaPlayer::MediaPlayerInterface> alertsMediaPlayer,
166  std::shared_ptr<avsCommon::utils::mediaPlayer::MediaPlayerInterface> notificationsMediaPlayer,
167  std::shared_ptr<avsCommon::utils::mediaPlayer::MediaPlayerInterface> bluetoothMediaPlayer,
168  std::shared_ptr<avsCommon::utils::mediaPlayer::MediaPlayerInterface> ringtoneMediaPlayer,
169  std::shared_ptr<avsCommon::utils::mediaPlayer::MediaPlayerInterface> systemSoundMediaPlayer,
170  std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> speakSpeaker,
171  std::vector<std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface>> audioSpeakers,
172  std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> alertsSpeaker,
173  std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> notificationsSpeaker,
174  std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> bluetoothSpeaker,
175  std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> ringtoneSpeaker,
176  std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> systemSoundSpeaker,
177  std::multimap<
179  std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface>> additionalSpeakers,
180 #ifdef ENABLE_PCC
181  std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> phoneSpeaker,
182  std::shared_ptr<phoneCallControllerInterfaces::phone::PhoneCallerInterface> phoneCaller,
183 #endif
184 #ifdef ENABLE_MCC
185  std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> meetingSpeaker,
186  std::shared_ptr<meetingClientControllerInterfaces::meeting::MeetingClientInterface> meetingClient,
187  std::shared_ptr<meetingClientControllerInterfaces::calendar::CalendarClientInterface> calendarClient,
188 #endif
189 #ifdef ENABLE_COMMS_AUDIO_PROXY
190  std::shared_ptr<avsCommon::utils::mediaPlayer::MediaPlayerInterface> commsMediaPlayer,
191  std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> commsSpeaker,
192  std::shared_ptr<avsCommon::avs::AudioInputStream> sharedDataStream,
193 #endif
194  std::shared_ptr<EqualizerRuntimeSetup> equalizerRuntimeSetup,
195  std::shared_ptr<avsCommon::sdkInterfaces::audio::AudioFactoryInterface> audioFactory,
196  std::shared_ptr<avsCommon::sdkInterfaces::AuthDelegateInterface> authDelegate,
197  std::shared_ptr<acsdkAlerts::storage::AlertStorageInterface> alertStorage,
198  std::shared_ptr<certifiedSender::MessageStorageInterface> messageStorage,
199  std::shared_ptr<acsdkNotificationsInterfaces::NotificationsStorageInterface> notificationsStorage,
200  std::shared_ptr<settings::storage::DeviceSettingStorageInterface> deviceSettingStorage,
201  std::shared_ptr<acsdkBluetoothInterfaces::BluetoothStorageInterface> bluetoothStorage,
202  std::shared_ptr<avsCommon::sdkInterfaces::storage::MiscStorageInterface> miscStorage,
203  std::unordered_set<std::shared_ptr<avsCommon::sdkInterfaces::DialogUXStateObserverInterface>>
204  alexaDialogStateObservers,
205  std::unordered_set<std::shared_ptr<avsCommon::sdkInterfaces::ConnectionStatusObserverInterface>>
206  connectionObservers,
207  std::shared_ptr<avsCommon::sdkInterfaces::InternetConnectionMonitorInterface> internetConnectionMonitor,
208  bool isGuiSupported,
209  std::shared_ptr<avsCommon::sdkInterfaces::CapabilitiesDelegateInterface> capabilitiesDelegate,
210  std::shared_ptr<avsCommon::sdkInterfaces::ContextManagerInterface> contextManager,
211  std::shared_ptr<alexaClientSDK::acl::TransportFactoryInterface> transportFactory,
212  std::shared_ptr<avsCommon::sdkInterfaces::AVSGatewayManagerInterface> avsGatewayManager,
213  std::shared_ptr<avsCommon::sdkInterfaces::LocaleAssetsManagerInterface> localeAssetsManager,
214  std::unordered_set<std::shared_ptr<avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceConnectionRuleInterface>>
215  enabledConnectionRules = std::unordered_set<
216  std::shared_ptr<avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceConnectionRuleInterface>>(),
217  std::shared_ptr<avsCommon::sdkInterfaces::SystemTimeZoneInterface> systemTimezone = nullptr,
220  bool sendSoftwareInfoOnConnected = false,
221  std::shared_ptr<avsCommon::sdkInterfaces::SoftwareInfoSenderObserverInterface> softwareInfoSenderObserver =
222  nullptr,
223  std::unique_ptr<avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceManagerInterface> bluetoothDeviceManager =
224  nullptr,
225  std::shared_ptr<avsCommon::utils::metrics::MetricRecorderInterface> metricRecorder = nullptr,
226  std::shared_ptr<avsCommon::sdkInterfaces::PowerResourceManagerInterface> powerResourceManager = nullptr,
227  std::shared_ptr<avsCommon::sdkInterfaces::diagnostics::DiagnosticsInterface> diagnostics = nullptr,
228  std::shared_ptr<ExternalCapabilitiesBuilderInterface> externalCapabilitiesBuilder = nullptr,
229  std::shared_ptr<avsCommon::sdkInterfaces::ChannelVolumeFactoryInterface> channelVolumeFactory =
231  bool startAlertSchedulingOnInitialization = true,
232  std::shared_ptr<alexaClientSDK::acl::MessageRouterFactoryInterface> messageRouterFactory =
233  std::make_shared<alexaClientSDK::acl::MessageRouterFactory>(),
234  std::shared_ptr<avsCommon::sdkInterfaces::ExpectSpeechTimeoutHandlerInterface> expectSpeechTimeoutHandler =
235  nullptr,
236  capabilityAgents::aip::AudioProvider firstInteractionAudioProvider =
238  std::shared_ptr<alexaClientSDK::cryptoInterfaces::CryptoFactoryInterface> cryptoFactory = nullptr);
239 
245  std::shared_ptr<DefaultClient> construct(const std::shared_ptr<sdkClient::SDKClientRegistry>& sdkClientRegistry);
246 
249  std::string name() override;
251 
252 private:
255 
257  bool m_constructed;
258 
260  std::shared_ptr<alexaClientSDK::avsCommon::utils::DeviceInfo> m_deviceInfo;
261 
264  std::shared_ptr<alexaClientSDK::registrationManager::CustomerDataManagerInterface> m_customerDataManager;
265 
267  std::
268  unordered_map<std::string, std::shared_ptr<alexaClientSDK::avsCommon::utils::mediaPlayer::MediaPlayerInterface>>
269  m_externalMusicProviderMediaPlayers;
270 
272  std::unordered_map<std::string, std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::SpeakerInterface>>
273  m_externalMusicProviderSpeakers;
274 
278 
280  std::shared_ptr<alexaClientSDK::avsCommon::utils::mediaPlayer::MediaPlayerInterface> m_speakMediaPlayer;
281 
283  std::unique_ptr<alexaClientSDK::avsCommon::utils::mediaPlayer::MediaPlayerFactoryInterface>
284  m_audioMediaPlayerFactory;
285 
287  std::shared_ptr<alexaClientSDK::avsCommon::utils::mediaPlayer::MediaPlayerInterface> m_alertsMediaPlayer;
288 
290  std::shared_ptr<alexaClientSDK::avsCommon::utils::mediaPlayer::MediaPlayerInterface> m_notificationsMediaPlayer;
291 
293  std::shared_ptr<alexaClientSDK::avsCommon::utils::mediaPlayer::MediaPlayerInterface> m_bluetoothMediaPlayer;
294 
296  std::shared_ptr<alexaClientSDK::avsCommon::utils::mediaPlayer::MediaPlayerInterface> m_ringtoneMediaPlayer;
297 
299  std::shared_ptr<alexaClientSDK::avsCommon::utils::mediaPlayer::MediaPlayerInterface> m_systemSoundMediaPlayer;
300 
302  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::SpeakerInterface> m_speakSpeaker;
303 
305  std::vector<std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::SpeakerInterface>> m_audioSpeakers;
306 
308  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::SpeakerInterface> m_alertsSpeaker;
309 
311  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::SpeakerInterface> m_notificationsSpeaker;
312 
314  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::SpeakerInterface> m_bluetoothSpeaker;
315 
317  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::SpeakerInterface> m_ringtoneSpeaker;
318 
320  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::SpeakerInterface> m_systemSoundSpeaker;
321 
323  std::multimap<
325  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::SpeakerInterface>>
326  m_additionalSpeakers;
327 
329  std::shared_ptr<EqualizerRuntimeSetup> m_equalizerRuntimeSetup;
330 
332  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::audio::AudioFactoryInterface> m_audioFactory;
333 
335  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::AuthDelegateInterface> m_authDelegate;
336 
338  std::shared_ptr<alexaClientSDK::acsdkAlerts::storage::AlertStorageInterface> m_alertStorage;
339 
341  std::shared_ptr<alexaClientSDK::certifiedSender::MessageStorageInterface> m_messageStorage;
342 
344  std::shared_ptr<alexaClientSDK::acsdkNotificationsInterfaces::NotificationsStorageInterface> m_notificationsStorage;
345 
347  std::shared_ptr<alexaClientSDK::settings::storage::DeviceSettingStorageInterface> m_deviceSettingStorage;
348 
350  std::shared_ptr<alexaClientSDK::acsdkBluetoothInterfaces::BluetoothStorageInterface> m_bluetoothStorage;
351 
353  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::storage::MiscStorageInterface> m_miscStorage;
354 
356  std::unordered_set<std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::DialogUXStateObserverInterface>>
357  m_alexaDialogStateObservers;
358 
360  std::unordered_set<std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::ConnectionStatusObserverInterface>>
361  m_connectionObservers;
362 
364  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::InternetConnectionMonitorInterface>
365  m_internetConnectionMonitor;
366 
368  bool m_isGuiSupported;
369 
371  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::CapabilitiesDelegateInterface> m_capabilitiesDelegate;
372 
374  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::ContextManagerInterface> m_contextManager;
375 
377  std::shared_ptr<alexaClientSDK::acl::TransportFactoryInterface> m_transportFactory;
378 
380  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::AVSGatewayManagerInterface> m_avsGatewayManager;
381 
383  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::LocaleAssetsManagerInterface> m_localeAssetsManager;
384 
386  std::unordered_set<
387  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceConnectionRuleInterface>>
388  m_enabledConnectionRules;
389 
391  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::SystemTimeZoneInterface> m_systemTimezone;
392 
395 
397  bool m_sendSoftwareInfoOnConnected;
398 
400  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::SoftwareInfoSenderObserverInterface>
401  m_softwareInfoSenderObserver;
402 
404  std::unique_ptr<alexaClientSDK::avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceManagerInterface>
405  m_bluetoothDeviceManager;
406 
408  std::shared_ptr<alexaClientSDK::avsCommon::utils::metrics::MetricRecorderInterface> m_metricRecorder;
409 
411  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::PowerResourceManagerInterface> m_powerResourceManager;
412 
414  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::diagnostics::DiagnosticsInterface> m_diagnostics;
415 
417  std::shared_ptr<ExternalCapabilitiesBuilderInterface> m_externalCapabilitiesBuilder;
418 
420  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::ChannelVolumeFactoryInterface> m_channelVolumeFactory;
421 
424  bool m_startAlertSchedulingOnInitialization;
425 
427  std::shared_ptr<alexaClientSDK::acl::MessageRouterFactoryInterface> m_messageRouterFactory;
428 
431  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::ExpectSpeechTimeoutHandlerInterface>
432  m_expectSpeechTimeoutHandler;
433 
435  alexaClientSDK::capabilityAgents::aip::AudioProvider m_firstInteractionAudioProvider =
437 
439  std::shared_ptr<alexaClientSDK::cryptoInterfaces::CryptoFactoryInterface> m_cryptoFactory;
440 
441 #ifdef ENABLE_COMMS_AUDIO_PROXY
442  std::shared_ptr<alexaClientSDK::avsCommon::utils::mediaPlayer::MediaPlayerInterface> m_commsMediaPlayer;
444 
446  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::SpeakerInterface> m_commsSpeaker;
447 
449  std::shared_ptr<alexaClientSDK::avsCommon::avs::AudioInputStream> m_sharedDataStream;
450 #endif
451 
452 #ifdef ENABLE_PCC
453  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::SpeakerInterface> m_phoneSpeaker;
455 
457  std::shared_ptr<phoneCallControllerInterfaces::phone::PhoneCallerInterface> m_phoneCaller;
458 #endif
459 
460 #ifdef ENABLE_MCC
461  std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::SpeakerInterface> m_meetingSpeaker;
463 
465  std::shared_ptr<meetingClientControllerInterfaces::meeting::MeetingClientInterface> m_meetingClient;
466 
468  std::shared_ptr<meetingClientControllerInterfaces::calendar::CalendarClientInterface> m_calendarClient;
469 #endif
470 };
471 } // namespace defaultClient
472 } // namespace alexaClientSDK
473 #endif // ALEXA_CLIENT_SDK_APPLICATIONUTILITIES_DEFAULTCLIENT_INCLUDE_DEFAULTCLIENT_DEFAULTCLIENTBUILDER_H_
Definition: FeatureClientBuilderInterface.h:37
::std::string string
Definition: gtest-port.h:1097
std::shared_ptr< avsCommon::sdkInterfaces::ChannelVolumeFactoryInterface > createChannelVolumeFactory() noexcept
Create default implementation of ChannelVolumeFactoryInterface.
static const AudioProvider & null()
Definition: AudioProvider.h:171
static std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface > metricRecorder
Metric recorder shared ptr.
Definition: BaseAPLCapabilityAgentTest.cpp:261
std::unordered_map< std::string, AdapterCreateFunction > AdapterCreationMap
Definition: ExternalMediaPlayer.h:106
static const FirmwareVersion INVALID_FIRMWARE_VERSION
The invalid firmware version.
Definition: SoftwareInfoSenderObserverInterface.h:32
Definition: DefaultClientBuilder.h:77
Whether or not curl logs should be emitted.
Definition: AVSConnectionManager.h:36
static std::unique_ptr< DefaultClientBuilder > create(std::shared_ptr< avsCommon::utils::DeviceInfo > deviceInfo, std::shared_ptr< registrationManager::CustomerDataManagerInterface > customerDataManager, std::unordered_map< std::string, std::shared_ptr< avsCommon::utils::mediaPlayer::MediaPlayerInterface >> externalMusicProviderMediaPlayers, std::unordered_map< std::string, std::shared_ptr< avsCommon::sdkInterfaces::SpeakerInterface >> externalMusicProviderSpeakers, acsdkExternalMediaPlayer::ExternalMediaPlayer::AdapterCreationMap adapterCreationMap, std::shared_ptr< avsCommon::utils::mediaPlayer::MediaPlayerInterface > speakMediaPlayer, std::unique_ptr< avsCommon::utils::mediaPlayer::MediaPlayerFactoryInterface > audioMediaPlayerFactory, std::shared_ptr< avsCommon::utils::mediaPlayer::MediaPlayerInterface > alertsMediaPlayer, std::shared_ptr< avsCommon::utils::mediaPlayer::MediaPlayerInterface > notificationsMediaPlayer, std::shared_ptr< avsCommon::utils::mediaPlayer::MediaPlayerInterface > bluetoothMediaPlayer, std::shared_ptr< avsCommon::utils::mediaPlayer::MediaPlayerInterface > ringtoneMediaPlayer, std::shared_ptr< avsCommon::utils::mediaPlayer::MediaPlayerInterface > systemSoundMediaPlayer, std::shared_ptr< avsCommon::sdkInterfaces::SpeakerInterface > speakSpeaker, std::vector< std::shared_ptr< avsCommon::sdkInterfaces::SpeakerInterface >> audioSpeakers, std::shared_ptr< avsCommon::sdkInterfaces::SpeakerInterface > alertsSpeaker, std::shared_ptr< avsCommon::sdkInterfaces::SpeakerInterface > notificationsSpeaker, std::shared_ptr< avsCommon::sdkInterfaces::SpeakerInterface > bluetoothSpeaker, std::shared_ptr< avsCommon::sdkInterfaces::SpeakerInterface > ringtoneSpeaker, std::shared_ptr< avsCommon::sdkInterfaces::SpeakerInterface > systemSoundSpeaker, std::multimap< avsCommon::sdkInterfaces::ChannelVolumeInterface::Type, std::shared_ptr< avsCommon::sdkInterfaces::SpeakerInterface >> additionalSpeakers, std::shared_ptr< EqualizerRuntimeSetup > equalizerRuntimeSetup, std::shared_ptr< avsCommon::sdkInterfaces::audio::AudioFactoryInterface > audioFactory, std::shared_ptr< avsCommon::sdkInterfaces::AuthDelegateInterface > authDelegate, std::shared_ptr< acsdkAlerts::storage::AlertStorageInterface > alertStorage, std::shared_ptr< certifiedSender::MessageStorageInterface > messageStorage, std::shared_ptr< acsdkNotificationsInterfaces::NotificationsStorageInterface > notificationsStorage, std::shared_ptr< settings::storage::DeviceSettingStorageInterface > deviceSettingStorage, std::shared_ptr< acsdkBluetoothInterfaces::BluetoothStorageInterface > bluetoothStorage, std::shared_ptr< avsCommon::sdkInterfaces::storage::MiscStorageInterface > miscStorage, std::unordered_set< std::shared_ptr< avsCommon::sdkInterfaces::DialogUXStateObserverInterface >> alexaDialogStateObservers, std::unordered_set< std::shared_ptr< avsCommon::sdkInterfaces::ConnectionStatusObserverInterface >> connectionObservers, std::shared_ptr< avsCommon::sdkInterfaces::InternetConnectionMonitorInterface > internetConnectionMonitor, bool isGuiSupported, std::shared_ptr< avsCommon::sdkInterfaces::CapabilitiesDelegateInterface > capabilitiesDelegate, std::shared_ptr< avsCommon::sdkInterfaces::ContextManagerInterface > contextManager, std::shared_ptr< alexaClientSDK::acl::TransportFactoryInterface > transportFactory, std::shared_ptr< avsCommon::sdkInterfaces::AVSGatewayManagerInterface > avsGatewayManager, std::shared_ptr< avsCommon::sdkInterfaces::LocaleAssetsManagerInterface > localeAssetsManager, std::unordered_set< std::shared_ptr< avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceConnectionRuleInterface >> enabledConnectionRules=std::unordered_set< std::shared_ptr< avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceConnectionRuleInterface >>(), std::shared_ptr< avsCommon::sdkInterfaces::SystemTimeZoneInterface > systemTimezone=nullptr, avsCommon::sdkInterfaces::softwareInfo::FirmwareVersion firmwareVersion=avsCommon::sdkInterfaces::softwareInfo::INVALID_FIRMWARE_VERSION, bool sendSoftwareInfoOnConnected=false, std::shared_ptr< avsCommon::sdkInterfaces::SoftwareInfoSenderObserverInterface > softwareInfoSenderObserver=nullptr, std::unique_ptr< avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceManagerInterface > bluetoothDeviceManager=nullptr, std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface > metricRecorder=nullptr, std::shared_ptr< avsCommon::sdkInterfaces::PowerResourceManagerInterface > powerResourceManager=nullptr, std::shared_ptr< avsCommon::sdkInterfaces::diagnostics::DiagnosticsInterface > diagnostics=nullptr, std::shared_ptr< ExternalCapabilitiesBuilderInterface > externalCapabilitiesBuilder=nullptr, std::shared_ptr< avsCommon::sdkInterfaces::ChannelVolumeFactoryInterface > channelVolumeFactory=speakerManager::createChannelVolumeFactory(), bool startAlertSchedulingOnInitialization=true, std::shared_ptr< alexaClientSDK::acl::MessageRouterFactoryInterface > messageRouterFactory=std::make_shared< alexaClientSDK::acl::MessageRouterFactory >(), std::shared_ptr< avsCommon::sdkInterfaces::ExpectSpeechTimeoutHandlerInterface > expectSpeechTimeoutHandler=nullptr, capabilityAgents::aip::AudioProvider firstInteractionAudioProvider=capabilityAgents::aip::AudioProvider::null(), std::shared_ptr< alexaClientSDK::cryptoInterfaces::CryptoFactoryInterface > cryptoFactory=nullptr)
int32_t FirmwareVersion
Type to use to communicate a firmware version.
Definition: SoftwareInfoSenderObserverInterface.h:29
std::shared_ptr< DefaultClient > construct(const std::shared_ptr< sdkClient::SDKClientRegistry > &sdkClientRegistry)

AlexaClientSDK 3.0.0 - Copyright 2016-2022 Amazon.com, Inc. or its affiliates. All Rights Reserved. Licensed under the Apache License, Version 2.0