16 #ifndef ALEXA_CLIENT_SDK_APPLICATIONUTILITIES_DEFAULTCLIENT_INCLUDE_DEFAULTCLIENT_DEFAULTCLIENT_H_ 17 #define ALEXA_CLIENT_SDK_APPLICATIONUTILITIES_DEFAULTCLIENT_INCLUDE_DEFAULTCLIENT_DEFAULTCLIENT_H_ 97 #include <acsdk/PhoneCallControllerInterfaces/Phone/PhoneCallerInterface.h> 98 #include <acsdk/PhoneCallController/PhoneCallController.h> 102 #include <acsdk/MeetingClientControllerInterfaces/Calendar/CalendarClientInterface.h> 103 #include <acsdk/MeetingClientControllerInterfaces/Meeting/MeetingClientInterface.h> 104 #include <acsdk/MeetingClientController/MeetingClientController.h> 125 #ifdef ENABLE_REVOKE_AUTH 134 namespace defaultClient {
145 std::shared_ptr<acsdkAlertsInterfaces::AlertsCapabilityAgentInterface>,
146 std::shared_ptr<acsdkApplicationAudioPipelineFactoryInterfaces::ApplicationAudioPipelineFactoryInterface>,
147 std::shared_ptr<acsdkAudioPlayerInterfaces::AudioPlayerInterface>,
148 std::shared_ptr<acsdkBluetoothInterfaces::BluetoothLocalInterface>,
149 std::shared_ptr<acsdkBluetoothInterfaces::BluetoothNotifierInterface>,
150 std::shared_ptr<acsdkEqualizerInterfaces::EqualizerRuntimeSetupInterface>,
151 std::shared_ptr<acsdkExternalMediaPlayer::ExternalMediaPlayer>,
152 std::shared_ptr<acsdkExternalMediaPlayerInterfaces::ExternalMediaPlayerInterface>,
153 std::shared_ptr<acsdkInteractionModelInterfaces::InteractionModelNotifierInterface>,
154 std::shared_ptr<acsdkNotificationsInterfaces::NotificationsNotifierInterface>,
155 std::shared_ptr<acsdkShutdownManagerInterfaces::ShutdownManagerInterface>,
156 std::shared_ptr<acsdkStartupManagerInterfaces::StartupManagerInterface>,
157 std::shared_ptr<acsdkSystemClockMonitorInterfaces::SystemClockMonitorInterface>,
158 std::shared_ptr<avsCommon::sdkInterfaces::DirectiveSequencerInterface>,
159 std::shared_ptr<afml::interruptModel::InterruptModel>,
160 std::shared_ptr<avsCommon::avs::DialogUXStateAggregator>,
161 std::shared_ptr<avsCommon::avs::attachment::AttachmentManagerInterface>,
162 std::shared_ptr<avsCommon::sdkInterfaces::AuthDelegateInterface>,
163 std::shared_ptr<avsCommon::sdkInterfaces::AVSConnectionManagerInterface>,
164 std::shared_ptr<avsCommon::sdkInterfaces::AVSGatewayManagerInterface>,
165 std::shared_ptr<avsCommon::sdkInterfaces::CapabilitiesDelegateInterface>,
166 std::shared_ptr<avsCommon::sdkInterfaces::ChannelVolumeFactoryInterface>,
167 std::shared_ptr<avsCommon::sdkInterfaces::ContextManagerInterface>,
168 std::shared_ptr<avsCommon::sdkInterfaces::ExpectSpeechTimeoutHandlerInterface>,
169 std::shared_ptr<avsCommon::sdkInterfaces::ExceptionEncounteredSenderInterface>,
171 Annotated<avsCommon::sdkInterfaces::AudioFocusAnnotation, avsCommon::sdkInterfaces::FocusManagerInterface>,
172 std::shared_ptr<avsCommon::sdkInterfaces::HTTPContentFetcherInterfaceFactoryInterface>,
173 std::shared_ptr<avsCommon::sdkInterfaces::InternetConnectionMonitorInterface>,
174 std::shared_ptr<avsCommon::sdkInterfaces::LocaleAssetsManagerInterface>,
175 std::shared_ptr<avsCommon::sdkInterfaces::PlaybackRouterInterface>,
176 std::shared_ptr<avsCommon::sdkInterfaces::PowerResourceManagerInterface>,
177 std::shared_ptr<avsCommon::sdkInterfaces::RenderPlayerInfoCardsProviderRegistrarInterface>,
178 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerManagerInterface>,
179 std::shared_ptr<avsCommon::sdkInterfaces::SystemSoundPlayerInterface>,
180 std::shared_ptr<avsCommon::sdkInterfaces::SystemTimeZoneInterface>,
181 std::shared_ptr<avsCommon::sdkInterfaces::UserInactivityMonitorInterface>,
182 std::shared_ptr<avsCommon::sdkInterfaces::audio::AudioFactoryInterface>,
186 std::shared_ptr<avsCommon::sdkInterfaces::storage::MiscStorageInterface>,
187 std::shared_ptr<avsCommon::utils::DeviceInfo>,
188 std::shared_ptr<avsCommon::utils::configuration::ConfigurationNode>,
189 std::shared_ptr<avsCommon::utils::metrics::MetricRecorderInterface>,
190 std::shared_ptr<capabilityAgents::alexa::AlexaInterfaceMessageSender>,
191 std::shared_ptr<capabilityAgents::doNotDisturb::DoNotDisturbCapabilityAgent>,
192 std::shared_ptr<captions::CaptionManagerInterface>,
193 std::shared_ptr<certifiedSender::CertifiedSender>,
194 std::shared_ptr<registrationManager::CustomerDataManagerInterface>,
195 std::shared_ptr<registrationManager::RegistrationManagerInterface>,
196 std::shared_ptr<registrationManager::RegistrationNotifierInterface>,
197 std::shared_ptr<settings::DeviceSettingsManager>,
198 std::shared_ptr<settings::storage::DeviceSettingStorageInterface>,
199 std::shared_ptr<audioEncoderInterfaces::AudioEncoderInterface>,
200 std::shared_ptr<acsdkDeviceSetupInterfaces::DeviceSetupInterface>>;
203 std::shared_ptr<acsdkAlertsInterfaces::AlertsCapabilityAgentInterface>,
204 std::shared_ptr<acsdkApplicationAudioPipelineFactoryInterfaces::ApplicationAudioPipelineFactoryInterface>,
205 std::shared_ptr<acsdkAudioPlayerInterfaces::AudioPlayerInterface>,
206 std::shared_ptr<acsdkBluetoothInterfaces::BluetoothLocalInterface>,
207 std::shared_ptr<acsdkBluetoothInterfaces::BluetoothNotifierInterface>,
208 std::shared_ptr<acsdkEqualizerInterfaces::EqualizerRuntimeSetupInterface>,
209 std::shared_ptr<acsdkExternalMediaPlayer::ExternalMediaPlayer>,
210 std::shared_ptr<acsdkExternalMediaPlayerInterfaces::ExternalMediaPlayerInterface>,
211 std::shared_ptr<acsdkInteractionModelInterfaces::InteractionModelNotifierInterface>,
212 std::shared_ptr<acsdkNotificationsInterfaces::NotificationsNotifierInterface>,
213 std::shared_ptr<acsdkShutdownManagerInterfaces::ShutdownManagerInterface>,
214 std::shared_ptr<acsdkStartupManagerInterfaces::StartupManagerInterface>,
215 std::shared_ptr<acsdkSystemClockMonitorInterfaces::SystemClockMonitorInterface>,
216 std::shared_ptr<avsCommon::sdkInterfaces::DirectiveSequencerInterface>,
217 std::shared_ptr<afml::interruptModel::InterruptModel>,
218 std::shared_ptr<avsCommon::avs::DialogUXStateAggregator>,
219 std::shared_ptr<avsCommon::avs::attachment::AttachmentManagerInterface>,
220 std::shared_ptr<avsCommon::sdkInterfaces::AuthDelegateInterface>,
221 std::shared_ptr<avsCommon::sdkInterfaces::AVSConnectionManagerInterface>,
222 std::shared_ptr<avsCommon::sdkInterfaces::AVSGatewayManagerInterface>,
223 std::shared_ptr<avsCommon::sdkInterfaces::CapabilitiesDelegateInterface>,
224 std::shared_ptr<avsCommon::sdkInterfaces::ChannelVolumeFactoryInterface>,
225 std::shared_ptr<avsCommon::sdkInterfaces::ContextManagerInterface>,
226 std::shared_ptr<avsCommon::sdkInterfaces::ExpectSpeechTimeoutHandlerInterface>,
227 std::shared_ptr<avsCommon::sdkInterfaces::ExceptionEncounteredSenderInterface>,
229 Annotated<avsCommon::sdkInterfaces::AudioFocusAnnotation, avsCommon::sdkInterfaces::FocusManagerInterface>,
230 std::shared_ptr<avsCommon::sdkInterfaces::HTTPContentFetcherInterfaceFactoryInterface>,
231 std::shared_ptr<avsCommon::sdkInterfaces::InternetConnectionMonitorInterface>,
232 std::shared_ptr<avsCommon::sdkInterfaces::LocaleAssetsManagerInterface>,
233 std::shared_ptr<avsCommon::sdkInterfaces::PlaybackRouterInterface>,
234 std::shared_ptr<avsCommon::sdkInterfaces::PowerResourceManagerInterface>,
235 std::shared_ptr<avsCommon::sdkInterfaces::RenderPlayerInfoCardsProviderRegistrarInterface>,
236 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerManagerInterface>,
237 std::shared_ptr<avsCommon::sdkInterfaces::SystemSoundPlayerInterface>,
238 std::shared_ptr<avsCommon::sdkInterfaces::SystemTimeZoneInterface>,
239 std::shared_ptr<avsCommon::sdkInterfaces::UserInactivityMonitorInterface>,
240 std::shared_ptr<avsCommon::sdkInterfaces::audio::AudioFactoryInterface>,
243 avsCommon::sdkInterfaces::endpoints::EndpointBuilderInterface>,
244 std::shared_ptr<avsCommon::sdkInterfaces::storage::MiscStorageInterface>,
245 std::shared_ptr<avsCommon::utils::DeviceInfo>,
246 std::shared_ptr<avsCommon::utils::configuration::ConfigurationNode>,
247 std::shared_ptr<avsCommon::utils::metrics::MetricRecorderInterface>,
248 std::shared_ptr<capabilityAgents::alexa::AlexaInterfaceMessageSender>,
249 std::shared_ptr<capabilityAgents::doNotDisturb::DoNotDisturbCapabilityAgent>,
250 std::shared_ptr<captions::CaptionManagerInterface>,
251 std::shared_ptr<certifiedSender::CertifiedSender>,
252 std::shared_ptr<registrationManager::CustomerDataManagerInterface>,
253 std::shared_ptr<registrationManager::RegistrationManagerInterface>,
254 std::shared_ptr<registrationManager::RegistrationNotifierInterface>,
255 std::shared_ptr<settings::DeviceSettingsManager>,
256 std::shared_ptr<settings::storage::DeviceSettingStorageInterface>,
257 std::shared_ptr<audioEncoderInterfaces::AudioEncoderInterface>,
258 std::shared_ptr<acsdkDeviceSetupInterfaces::DeviceSetupInterface>>;
296 static std::unique_ptr<DefaultClient>
create(
297 const std::shared_ptr<DefaultClientSubsetManufactory>& manufactory,
298 std::shared_ptr<avsCommon::utils::mediaPlayer::MediaPlayerInterface> ringtoneMediaPlayer,
299 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> ringtoneSpeaker,
302 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface>> additionalSpeakers,
304 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> phoneSpeaker,
305 std::shared_ptr<phoneCallControllerInterfaces::phone::PhoneCallerInterface> phoneCaller,
308 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> meetingSpeaker,
309 std::shared_ptr<meetingClientControllerInterfaces::meeting::MeetingClientInterface> meetingClient,
310 std::shared_ptr<meetingClientControllerInterfaces::calendar::CalendarClientInterface> calendarClient,
312 #ifdef ENABLE_COMMS_AUDIO_PROXY
313 std::shared_ptr<avsCommon::utils::mediaPlayer::MediaPlayerInterface> commsMediaPlayer,
314 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> commsSpeaker,
315 std::shared_ptr<alexaClientSDK::avsCommon::avs::AudioInputStream> sharedDataStream,
317 std::unordered_set<std::shared_ptr<avsCommon::sdkInterfaces::DialogUXStateObserverInterface>>
318 alexaDialogStateObservers,
319 std::unordered_set<std::shared_ptr<avsCommon::sdkInterfaces::ConnectionStatusObserverInterface>>
324 bool sendSoftwareInfoOnConnected =
false,
325 std::shared_ptr<avsCommon::sdkInterfaces::SoftwareInfoSenderObserverInterface> softwareInfoSenderObserver =
327 std::shared_ptr<avsCommon::sdkInterfaces::diagnostics::DiagnosticsInterface> diagnostics =
nullptr,
328 const std::shared_ptr<ExternalCapabilitiesBuilderInterface>& externalCapabilitiesBuilder =
nullptr,
331 const std::shared_ptr<sdkClient::SDKClientRegistry>& sdkClientRegistry =
nullptr);
411 static std::unique_ptr<DefaultClient>
create(
412 std::shared_ptr<avsCommon::utils::DeviceInfo> deviceInfo,
413 std::shared_ptr<registrationManager::CustomerDataManagerInterface> customerDataManager,
414 const std::unordered_map<
std::string, std::shared_ptr<avsCommon::utils::mediaPlayer::MediaPlayerInterface>>&
415 externalMusicProviderMediaPlayers,
416 const std::unordered_map<
std::string, std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface>>&
417 externalMusicProviderSpeakers,
419 std::shared_ptr<avsCommon::utils::mediaPlayer::MediaPlayerInterface> speakMediaPlayer,
420 std::unique_ptr<avsCommon::utils::mediaPlayer::MediaPlayerFactoryInterface> audioMediaPlayerFactory,
421 std::shared_ptr<avsCommon::utils::mediaPlayer::MediaPlayerInterface> alertsMediaPlayer,
422 std::shared_ptr<avsCommon::utils::mediaPlayer::MediaPlayerInterface> notificationsMediaPlayer,
423 std::shared_ptr<avsCommon::utils::mediaPlayer::MediaPlayerInterface> bluetoothMediaPlayer,
424 std::shared_ptr<avsCommon::utils::mediaPlayer::MediaPlayerInterface> ringtoneMediaPlayer,
425 std::shared_ptr<avsCommon::utils::mediaPlayer::MediaPlayerInterface> systemSoundMediaPlayer,
426 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> speakSpeaker,
427 std::vector<std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface>> audioSpeakers,
428 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> alertsSpeaker,
429 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> notificationsSpeaker,
430 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> bluetoothSpeaker,
431 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> ringtoneSpeaker,
432 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> systemSoundSpeaker,
435 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface>> additionalSpeakers,
437 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> phoneSpeaker,
438 std::shared_ptr<phoneCallControllerInterfaces::phone::PhoneCallerInterface> phoneCaller,
441 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> meetingSpeaker,
442 std::shared_ptr<meetingClientControllerInterfaces::meeting::MeetingClientInterface> meetingClient,
443 std::shared_ptr<meetingClientControllerInterfaces::calendar::CalendarClientInterface> calendarClient,
445 #ifdef ENABLE_COMMS_AUDIO_PROXY
446 std::shared_ptr<avsCommon::utils::mediaPlayer::MediaPlayerInterface> commsMediaPlayer,
447 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> commsSpeaker,
448 std::shared_ptr<alexaClientSDK::avsCommon::avs::AudioInputStream> sharedDataStream,
450 std::shared_ptr<EqualizerRuntimeSetup> equalizerRuntimeSetup,
451 std::shared_ptr<avsCommon::sdkInterfaces::audio::AudioFactoryInterface> audioFactory,
452 std::shared_ptr<avsCommon::sdkInterfaces::AuthDelegateInterface> authDelegate,
453 std::shared_ptr<acsdkAlerts::storage::AlertStorageInterface> alertStorage,
454 std::shared_ptr<certifiedSender::MessageStorageInterface> messageStorage,
455 std::shared_ptr<acsdkNotificationsInterfaces::NotificationsStorageInterface> notificationsStorage,
456 std::shared_ptr<settings::storage::DeviceSettingStorageInterface> deviceSettingStorage,
457 std::shared_ptr<acsdkBluetoothInterfaces::BluetoothStorageInterface> bluetoothStorage,
458 std::shared_ptr<avsCommon::sdkInterfaces::storage::MiscStorageInterface> miscStorage,
459 std::unordered_set<std::shared_ptr<avsCommon::sdkInterfaces::DialogUXStateObserverInterface>>
460 alexaDialogStateObservers,
461 std::unordered_set<std::shared_ptr<avsCommon::sdkInterfaces::ConnectionStatusObserverInterface>>
463 std::shared_ptr<avsCommon::sdkInterfaces::InternetConnectionMonitorInterface> internetConnectionMonitor,
465 std::shared_ptr<avsCommon::sdkInterfaces::CapabilitiesDelegateInterface> capabilitiesDelegate,
466 std::shared_ptr<avsCommon::sdkInterfaces::ContextManagerInterface> contextManager,
467 std::shared_ptr<alexaClientSDK::acl::TransportFactoryInterface> transportFactory,
468 std::shared_ptr<avsCommon::sdkInterfaces::AVSGatewayManagerInterface> avsGatewayManager,
469 std::shared_ptr<avsCommon::sdkInterfaces::LocaleAssetsManagerInterface> localeAssetsManager,
470 std::unordered_set<std::shared_ptr<avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceConnectionRuleInterface>>
471 enabledConnectionRules = std::unordered_set<
472 std::shared_ptr<avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceConnectionRuleInterface>>(),
473 std::shared_ptr<avsCommon::sdkInterfaces::SystemTimeZoneInterface> systemTimezone =
nullptr,
476 bool sendSoftwareInfoOnConnected =
false,
477 std::shared_ptr<avsCommon::sdkInterfaces::SoftwareInfoSenderObserverInterface> softwareInfoSenderObserver =
479 std::unique_ptr<avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceManagerInterface> bluetoothDeviceManager =
481 std::shared_ptr<avsCommon::utils::metrics::MetricRecorderInterface>
metricRecorder =
nullptr,
482 std::shared_ptr<avsCommon::sdkInterfaces::PowerResourceManagerInterface> powerResourceManager =
nullptr,
483 std::shared_ptr<avsCommon::sdkInterfaces::diagnostics::DiagnosticsInterface> diagnostics =
nullptr,
484 const std::shared_ptr<ExternalCapabilitiesBuilderInterface>& externalCapabilitiesBuilder =
nullptr,
485 std::shared_ptr<avsCommon::sdkInterfaces::ChannelVolumeFactoryInterface> channelVolumeFactory =
487 bool startAlertSchedulingOnInitialization =
true,
488 std::shared_ptr<alexaClientSDK::acl::MessageRouterFactoryInterface> messageRouterFactory =
489 std::make_shared<alexaClientSDK::acl::MessageRouterFactory>(),
490 const std::shared_ptr<avsCommon::sdkInterfaces::ExpectSpeechTimeoutHandlerInterface>&
491 expectSpeechTimeoutHandler =
nullptr,
494 const std::shared_ptr<alexaClientSDK::cryptoInterfaces::CryptoFactoryInterface>& cryptoFactory =
nullptr,
495 const std::shared_ptr<sdkClient::SDKClientRegistry>& sdkClientRegistry =
nullptr);
499 bool configure(
const std::shared_ptr<sdkClient::SDKClientRegistry>& sdkClientRegistry)
override;
511 void connect(
bool performReset =
true);
551 std::shared_ptr<avsCommon::sdkInterfaces::DialogUXStateObserverInterface> observer);
563 std::shared_ptr<avsCommon::sdkInterfaces::DialogUXStateObserverInterface> observer);
570 void addMessageObserver(std::shared_ptr<avsCommon::sdkInterfaces::MessageObserverInterface> observer);
577 void removeMessageObserver(std::shared_ptr<avsCommon::sdkInterfaces::MessageObserverInterface> observer);
584 void addConnectionObserver(std::shared_ptr<avsCommon::sdkInterfaces::ConnectionStatusObserverInterface> observer);
592 std::shared_ptr<avsCommon::sdkInterfaces::ConnectionStatusObserverInterface> observer);
600 std::shared_ptr<avsCommon::sdkInterfaces::InternetConnectionObserverInterface> observer);
608 std::shared_ptr<avsCommon::sdkInterfaces::InternetConnectionObserverInterface> observer);
615 void addAlertsObserver(std::shared_ptr<acsdkAlertsInterfaces::AlertObserverInterface> observer);
622 void removeAlertsObserver(std::shared_ptr<acsdkAlertsInterfaces::AlertObserverInterface> observer);
630 void addAudioPlayerObserver(std::shared_ptr<acsdkAudioPlayerInterfaces::AudioPlayerObserverInterface> observer);
645 std::shared_ptr<templateRuntimeInterfaces::TemplateRuntimeObserverInterface> observer);
653 std::shared_ptr<templateRuntimeInterfaces::TemplateRuntimeObserverInterface> observer);
661 std::shared_ptr<acsdkNotificationsInterfaces::NotificationsObserverInterface> observer);
669 std::shared_ptr<acsdkNotificationsInterfaces::NotificationsObserverInterface> observer);
677 std::shared_ptr<acsdkExternalMediaPlayerInterfaces::ExternalMediaPlayerObserverInterface> observer);
685 std::shared_ptr<acsdkExternalMediaPlayerInterfaces::ExternalMediaPlayerObserverInterface> observer);
693 std::shared_ptr<acsdkBluetoothInterfaces::BluetoothDeviceObserverInterface> observer);
701 std::shared_ptr<acsdkBluetoothInterfaces::BluetoothDeviceObserverInterface> observer);
721 const std::vector<std::shared_ptr<avsCommon::utils::mediaPlayer::MediaPlayerInterface>>& mediaPlayers);
728 std::shared_ptr<avsCommon::sdkInterfaces::PlaybackRouterInterface>
getPlaybackRouter()
const;
743 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerManagerObserverInterface> observer);
750 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerManagerInterface>
getSpeakerManager();
757 std::shared_ptr<avsCommon::sdkInterfaces::SpeechSynthesizerObserverInterface> observer);
764 std::shared_ptr<avsCommon::sdkInterfaces::SpeechSynthesizerObserverInterface> observer);
778 void addRegistrationObserver(
const std::shared_ptr<registrationManager::RegistrationObserverInterface>& observer);
786 const std::shared_ptr<registrationManager::RegistrationObserverInterface>& observer);
788 #ifdef ENABLE_REVOKE_AUTH 794 void addRevokeAuthorizationObserver(
795 std::shared_ptr<avsCommon::sdkInterfaces::RevokeAuthorizationObserverInterface> observer);
802 void removeRevokeAuthorizationObserver(
803 std::shared_ptr<avsCommon::sdkInterfaces::RevokeAuthorizationObserverInterface> observer);
821 std::shared_ptr<acsdkEqualizerInterfaces::EqualizerControllerListenerInterface> listener);
829 std::shared_ptr<acsdkEqualizerInterfaces::EqualizerControllerListenerInterface> listener);
844 std::shared_ptr<avsCommon::sdkInterfaces::ContextManagerObserverInterface> observer);
861 std::chrono::steady_clock::time_point startOfSpeechTimestamp,
862 std::shared_ptr<
const std::vector<char>> KWDMetadata =
nullptr)
override;
867 std::chrono::steady_clock::time_point startOfSpeechTimestamp = std::chrono::steady_clock::now())
override;
871 std::chrono::steady_clock::time_point startOfSpeechTimestamp = std::chrono::steady_clock::now(),
894 std::shared_ptr<avsCommon::sdkInterfaces::endpoints::EndpointBuilderInterface>
createEndpointBuilder();
902 std::future<endpoints::EndpointRegistrationManager::RegistrationResult>
registerEndpoint(
903 std::shared_ptr<avsCommon::sdkInterfaces::endpoints::EndpointInterface> endpoint);
912 std::future<endpoints::EndpointRegistrationManager::UpdateResult>
updateEndpoint(
914 const std::shared_ptr<avsCommon::sdkInterfaces::endpoints::EndpointModificationData>& endpointModificationData);
922 std::future<endpoints::EndpointRegistrationManager::DeregistrationResult>
deregisterEndpoint(
942 const std::shared_ptr<avsCommon::sdkInterfaces::endpoints::EndpointRegistrationObserverInterface>& observer);
950 const std::shared_ptr<avsCommon::sdkInterfaces::endpoints::EndpointRegistrationObserverInterface>& observer);
958 const std::shared_ptr<avsCommon::sdkInterfaces::AudioInputProcessorObserverInterface>& observer);
966 const std::shared_ptr<avsCommon::sdkInterfaces::AudioInputProcessorObserverInterface>& observer);
973 void addCallStateObserver(std::shared_ptr<avsCommon::sdkInterfaces::CallStateObserverInterface> observer);
1050 std::shared_ptr<acsdkExternalMediaPlayerInterfaces::ExternalMediaAdapterHandlerInterface>
1051 externalMediaPlayerAdapterHandler);
1060 std::shared_ptr<acsdkShutdownManagerInterfaces::ShutdownManagerInterface>
getShutdownManager();
1092 std::shared_ptr<acsdkDeviceSetupInterfaces::DeviceSetupInterface>
getDeviceSetup();
1099 std::shared_ptr<acsdkBluetoothInterfaces::BluetoothLocalInterface>
getBluetoothLocal();
1116 std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::FocusManagerInterface>
getAudioFocusManager();
1147 const std::shared_ptr<DefaultClientManufactory>& manufactory,
1148 std::shared_ptr<avsCommon::utils::mediaPlayer::MediaPlayerInterface> ringtoneMediaPlayer,
1149 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> ringtoneSpeaker,
1150 const std::multimap<
1152 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface>> additionalSpeakers,
1154 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> phoneSpeaker,
1155 std::shared_ptr<phoneCallControllerInterfaces::phone::PhoneCallerInterface> phoneCaller,
1158 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> meetingSpeaker,
1159 std::shared_ptr<meetingClientControllerInterfaces::meeting::MeetingClientInterface> meetingClient,
1160 std::shared_ptr<meetingClientControllerInterfaces::calendar::CalendarClientInterface> calendarClient,
1162 #ifdef ENABLE_COMMS_AUDIO_PROXY
1163 std::shared_ptr<avsCommon::utils::mediaPlayer::MediaPlayerInterface> commsMediaPlayer,
1164 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerInterface> commsSpeaker,
1165 std::shared_ptr<alexaClientSDK::avsCommon::avs::AudioInputStream> sharedDataStream,
1167 std::unordered_set<std::shared_ptr<avsCommon::sdkInterfaces::DialogUXStateObserverInterface>>
1168 alexaDialogStateObservers,
1169 std::unordered_set<std::shared_ptr<avsCommon::sdkInterfaces::ConnectionStatusObserverInterface>>
1170 connectionObservers,
1171 bool isGuiSupported,
1173 bool sendSoftwareInfoOnConnected,
1174 std::shared_ptr<avsCommon::sdkInterfaces::SoftwareInfoSenderObserverInterface> softwareInfoSenderObserver,
1175 std::shared_ptr<avsCommon::sdkInterfaces::diagnostics::DiagnosticsInterface> diagnostics,
1176 const std::shared_ptr<ExternalCapabilitiesBuilderInterface>& externalCapabilitiesBuilder,
1178 const std::shared_ptr<sdkClient::SDKClientRegistry>& sdkClientRegistry =
nullptr);
1181 std::shared_ptr<avsCommon::sdkInterfaces::DirectiveSequencerInterface> m_directiveSequencer;
1184 std::shared_ptr<avsCommon::sdkInterfaces::FocusManagerInterface> m_audioFocusManager;
1187 std::shared_ptr<acl::AVSConnectionManagerInterface> m_connectionManager;
1190 std::shared_ptr<avsCommon::sdkInterfaces::InternetConnectionMonitorInterface> m_internetConnectionMonitor;
1193 std::shared_ptr<captions::CaptionManagerInterface> m_captionManager;
1196 std::shared_ptr<avsCommon::sdkInterfaces::ExceptionEncounteredSenderInterface> m_exceptionSender;
1199 std::shared_ptr<certifiedSender::CertifiedSender> m_certifiedSender;
1202 std::shared_ptr<capabilityAgents::aip::AudioInputProcessor> m_audioInputProcessor;
1205 std::shared_ptr<capabilityAgents::speechSynthesizer::SpeechSynthesizer> m_speechSynthesizer;
1208 std::shared_ptr<acsdkAudioPlayerInterfaces::AudioPlayerInterface> m_audioPlayer;
1211 std::shared_ptr<acsdkExternalMediaPlayerInterfaces::ExternalMediaPlayerInterface> m_externalMediaPlayer;
1214 std::shared_ptr<capabilityAgents::alexa::AlexaInterfaceMessageSender> m_alexaMessageSender;
1217 std::shared_ptr<capabilityAgents::apiGateway::ApiGatewayCapabilityAgent> m_apiGatewayCapabilityAgent;
1220 std::shared_ptr<acsdkAlertsInterfaces::AlertsCapabilityAgentInterface> m_alertsCapabilityAgent;
1223 std::shared_ptr<acsdkBluetoothInterfaces::BluetoothLocalInterface> m_bluetoothLocal;
1226 std::shared_ptr<acsdkBluetoothInterfaces::BluetoothNotifierInterface> m_bluetoothNotifier;
1229 std::shared_ptr<acsdkInteractionModelInterfaces::InteractionModelNotifierInterface> m_interactionModelNotifier;
1232 std::shared_ptr<acsdkNotificationsInterfaces::NotificationsNotifierInterface> m_notificationsNotifier;
1235 std::shared_ptr<phoneCallController::PhoneCallController> m_phoneCallControllerCapabilityAgent;
1240 std::shared_ptr<meetingClientController::MeetingClientController> m_meetingClientControllerCapabilityAgent;
1245 std::shared_ptr<avsCommon::sdkInterfaces::CallManagerInterface> m_callManager;
1248 std::shared_ptr<avsCommon::avs::DialogUXStateAggregator> m_dialogUXStateAggregator;
1251 std::shared_ptr<avsCommon::sdkInterfaces::PlaybackRouterInterface> m_playbackRouter;
1254 std::shared_ptr<avsCommon::sdkInterfaces::SpeakerManagerInterface> m_speakerManager;
1257 std::shared_ptr<templateRuntimeInterfaces::TemplateRuntimeInterface> m_templateRuntime;
1260 std::shared_ptr<acsdkEqualizer::EqualizerCapabilityAgent> m_equalizerCapabilityAgent;
1263 std::shared_ptr<acsdkEqualizer::EqualizerController> m_equalizerController;
1266 std::shared_ptr<acsdkEqualizerInterfaces::EqualizerRuntimeSetupInterface> m_equalizerRuntimeSetup;
1269 std::mutex m_softwareInfoSenderMutex;
1272 std::shared_ptr<capabilityAgents::system::SoftwareInfoSender> m_softwareInfoSender;
1274 #ifdef ENABLE_REVOKE_AUTH 1275 std::shared_ptr<capabilityAgents::system::RevokeAuthorizationHandler> m_revokeAuthorizationHandler;
1280 std::shared_ptr<avsCommon::sdkInterfaces::AuthDelegateInterface> m_authDelegate;
1283 std::shared_ptr<registrationManager::RegistrationManagerInterface> m_registrationManager;
1286 std::shared_ptr<registrationManager::RegistrationNotifierInterface> m_registrationNotifier;
1289 std::shared_ptr<settings::DeviceSettingsManager> m_deviceSettingsManager;
1292 std::shared_ptr<avsCommon::utils::DeviceInfo> m_deviceInfo;
1295 std::shared_ptr<avsCommon::sdkInterfaces::ContextManagerInterface> m_contextManager;
1298 std::shared_ptr<endpoints::EndpointRegistrationManager> m_endpointRegistrationManager;
1301 std::shared_ptr<avsCommon::sdkInterfaces::endpoints::EndpointBuilderInterface> m_defaultEndpointBuilder;
1304 std::shared_ptr<avsCommon::sdkInterfaces::AVSGatewayManagerInterface> m_avsGatewayManager;
1307 std::shared_ptr<avsCommon::sdkInterfaces::CapabilitiesDelegateInterface> m_capabilitiesDelegate;
1310 std::shared_ptr<avsCommon::sdkInterfaces::diagnostics::DiagnosticsInterface> m_diagnostics;
1313 std::shared_ptr<acsdkSystemClockMonitorInterfaces::SystemClockMonitorInterface> m_systemClockMonitor;
1316 std::list<std::shared_ptr<avsCommon::utils::RequiresShutdown>> m_shutdownObjects;
1319 std::shared_ptr<ConnectionRetryTrigger> m_connectionRetryTrigger;
1322 std::unordered_set<std::shared_ptr<avsCommon::sdkInterfaces::SoftwareInfoSenderObserverInterface>>
1323 m_softwareInfoSenderObservers;
1326 std::shared_ptr<capabilityAgents::softwareComponentReporter::SoftwareComponentReporterCapabilityAgent>
1327 m_softwareReporterCapabilityAgent;
1330 std::shared_ptr<acsdkShutdownManagerInterfaces::ShutdownManagerInterface> m_shutdownManager;
1333 std::shared_ptr<acsdkDeviceSetupInterfaces::DeviceSetupInterface> m_deviceSetup;
1339 #endif // ALEXA_CLIENT_SDK_APPLICATIONUTILITIES_DEFAULTCLIENT_INCLUDE_DEFAULTCLIENT_DEFAULTCLIENT_H_ void removeRegistrationObserver(const std::shared_ptr< registrationManager::RegistrationObserverInterface > &observer)
void onSystemClockSynchronized()
The directive sequencer.
capabilityAgents::aip::AudioInputProcessor::EncodingFormatResponse requestEncodingAudioFormats(const capabilityAgents::aip::AudioInputProcessor::EncodingFormatRequest &encodings)
void removeExternalMediaPlayerObserver(std::shared_ptr< acsdkExternalMediaPlayerInterfaces::ExternalMediaPlayerObserverInterface > observer)
void setCaptionMediaPlayers(const std::vector< std::shared_ptr< avsCommon::utils::mediaPlayer::MediaPlayerInterface >> &mediaPlayers)
void addRegistrationObserver(const std::shared_ptr< registrationManager::RegistrationObserverInterface > &observer)
void removeTemplateRuntimeObserver(std::shared_ptr< templateRuntimeInterfaces::TemplateRuntimeObserverInterface > observer)
std::shared_ptr< avsCommon::sdkInterfaces::SpeakerManagerInterface > getSpeakerManager()
void addMessageObserver(std::shared_ptr< avsCommon::sdkInterfaces::MessageObserverInterface > observer)
void addSpeakerManagerObserver(std::shared_ptr< avsCommon::sdkInterfaces::SpeakerManagerObserverInterface > observer)
static std::unique_ptr< DefaultClient > create(const std::shared_ptr< DefaultClientSubsetManufactory > &manufactory, std::shared_ptr< avsCommon::utils::mediaPlayer::MediaPlayerInterface > ringtoneMediaPlayer, std::shared_ptr< avsCommon::sdkInterfaces::SpeakerInterface > ringtoneSpeaker, const std::multimap< avsCommon::sdkInterfaces::ChannelVolumeInterface::Type, std::shared_ptr< avsCommon::sdkInterfaces::SpeakerInterface >> additionalSpeakers, std::unordered_set< std::shared_ptr< avsCommon::sdkInterfaces::DialogUXStateObserverInterface >> alexaDialogStateObservers, std::unordered_set< std::shared_ptr< avsCommon::sdkInterfaces::ConnectionStatusObserverInterface >> connectionObservers, bool isGuiSupported, avsCommon::sdkInterfaces::softwareInfo::FirmwareVersion firmwareVersion=avsCommon::sdkInterfaces::softwareInfo::INVALID_FIRMWARE_VERSION, bool sendSoftwareInfoOnConnected=false, std::shared_ptr< avsCommon::sdkInterfaces::SoftwareInfoSenderObserverInterface > softwareInfoSenderObserver=nullptr, std::shared_ptr< avsCommon::sdkInterfaces::diagnostics::DiagnosticsInterface > diagnostics=nullptr, const std::shared_ptr< ExternalCapabilitiesBuilderInterface > &externalCapabilitiesBuilder=nullptr, capabilityAgents::aip::AudioProvider firstInteractionAudioProvider=capabilityAgents::aip::AudioProvider::null(), const std::shared_ptr< sdkClient::SDKClientRegistry > &sdkClientRegistry=nullptr)
void addTemplateRuntimeObserver(std::shared_ptr< templateRuntimeInterfaces::TemplateRuntimeObserverInterface > observer)
::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
void connect(bool performReset=true)
std::future< endpoints::EndpointRegistrationManager::UpdateResult > updateEndpoint(const avsCommon::sdkInterfaces::endpoints::EndpointIdentifier &endpointId, const std::shared_ptr< avsCommon::sdkInterfaces::endpoints::EndpointModificationData > &endpointModificationData)
Type
Definition: ChannelVolumeInterface.h:37
std::shared_ptr< acsdkBluetoothInterfaces::BluetoothLocalInterface > getBluetoothLocal()
void addContextManagerObserver(std::shared_ptr< avsCommon::sdkInterfaces::ContextManagerObserverInterface > observer)
std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::FocusManagerInterface > getAudioFocusManager()
void addAudioPlayerObserver(std::shared_ptr< acsdkAudioPlayerInterfaces::AudioPlayerObserverInterface > observer)
std::shared_ptr< settings::DeviceSettingsManager > getSettingsManager()
}
Definition: AudioProvider.h:31
avsCommon::sdkInterfaces::endpoints::DefaultEndpointAnnotation DefaultEndpointAnnotation
Definition: AlexaInterfaceCapabilityAgentTest.cpp:50
void localStopActiveAlert()
std::shared_ptr< acsdkEqualizer::EqualizerController > getEqualizerController()
void removeMessageObserver(std::shared_ptr< avsCommon::sdkInterfaces::MessageObserverInterface > observer)
Definition: EndpointBuilderInterface.h:66
void removeEndpointRegistrationManagerObserver(const std::shared_ptr< avsCommon::sdkInterfaces::endpoints::EndpointRegistrationObserverInterface > &observer)
std::future< endpoints::EndpointRegistrationManager::RegistrationResult > registerEndpoint(std::shared_ptr< avsCommon::sdkInterfaces::endpoints::EndpointInterface > endpoint)
static std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface > metricRecorder
Metric recorder shared ptr.
Definition: BaseAPLCapabilityAgentTest.cpp:261
Definition: FeatureClientInterface.h:37
void addNotificationsObserver(std::shared_ptr< acsdkNotificationsInterfaces::NotificationsObserverInterface > observer)
void removeContextManagerObserver(std::shared_ptr< avsCommon::sdkInterfaces::ContextManagerObserverInterface > observer)
std::shared_ptr< avsCommon::sdkInterfaces::PlaybackRouterInterface > getPlaybackRouter() const
void addInternetConnectionObserver(std::shared_ptr< avsCommon::sdkInterfaces::InternetConnectionObserverInterface > observer)
static const FirmwareVersion INVALID_FIRMWARE_VERSION
The invalid firmware version.
Definition: SoftwareInfoSenderObserverInterface.h:32
void addExternalMediaPlayerObserver(std::shared_ptr< acsdkExternalMediaPlayerInterfaces::ExternalMediaPlayerObserverInterface > observer)
std::future< bool > notifyOfHoldToTalkStart(capabilityAgents::aip::AudioProvider holdToTalkAudioProvider, std::chrono::steady_clock::time_point startOfSpeechTimestamp=std::chrono::steady_clock::now(), avsCommon::avs::AudioInputStream::Index beginIndex=capabilityAgents::aip::AudioInputProcessor::INVALID_INDEX) override
The directive sequencer.
std::future< bool > notifyOfTapToTalkEnd() override
The directive sequencer.
std::future< endpoints::EndpointRegistrationManager::DeregistrationResult > deregisterEndpoint(avsCommon::sdkInterfaces::endpoints::EndpointIdentifier endpointId)
Definition: Annotated.h:35
void addEndpointRegistrationManagerObserver(const std::shared_ptr< avsCommon::sdkInterfaces::endpoints::EndpointRegistrationObserverInterface > &observer)
std::future< bool > notifyOfWakeWord(capabilityAgents::aip::AudioProvider wakeWordAudioProvider, avsCommon::avs::AudioInputStream::Index beginIndex, avsCommon::avs::AudioInputStream::Index endIndex, std::string keyword, std::chrono::steady_clock::time_point startOfSpeechTimestamp, std::shared_ptr< const std::vector< char >> KWDMetadata=nullptr) override
The directive sequencer.
void addSpeechSynthesizerObserver(std::shared_ptr< avsCommon::sdkInterfaces::SpeechSynthesizerObserverInterface > observer)
void addAlertsObserver(std::shared_ptr< acsdkAlertsInterfaces::AlertObserverInterface > observer)
std::shared_ptr< avsCommon::sdkInterfaces::endpoints::EndpointBuilderInterface > createEndpointBuilder()
void removeSpeakerManagerObserver(std::shared_ptr< avsCommon::sdkInterfaces::SpeakerManagerObserverInterface > observer)
void addCaptionPresenter(std::shared_ptr< captions::CaptionPresenterInterface > presenter)
void removeAlertsObserver(std::shared_ptr< acsdkAlertsInterfaces::AlertObserverInterface > observer)
void addCallStateObserver(std::shared_ptr< avsCommon::sdkInterfaces::CallStateObserverInterface > observer)
Definition: Manufactory.h:33
void removeInternetConnectionObserver(std::shared_ptr< avsCommon::sdkInterfaces::InternetConnectionObserverInterface > observer)
void removeNotificationsObserver(std::shared_ptr< acsdkNotificationsInterfaces::NotificationsObserverInterface > observer)
DTMFTone
An enum used to define the characters that dtmf tone can be.
Definition: CallManagerInterface.h:59
Index
Index used for setting access.
Definition: StateReportGeneratorTest.cpp:41
void registerExternalMediaPlayerAdapterHandler(std::shared_ptr< acsdkExternalMediaPlayerInterfaces::ExternalMediaAdapterHandlerInterface > externalMediaPlayerAdapterHandler)
Whether or not curl logs should be emitted.
Definition: AVSConnectionManager.h:36
Definition: DefaultClient.h:140
void removeAudioInputProcessorObserver(const std::shared_ptr< avsCommon::sdkInterfaces::AudioInputProcessorObserverInterface > &observer)
void removeEqualizerControllerListener(std::shared_ptr< acsdkEqualizerInterfaces::EqualizerControllerListenerInterface > listener)
std::shared_ptr< acsdkShutdownManagerInterfaces::ShutdownManagerInterface > getShutdownManager()
void addBluetoothDeviceObserver(std::shared_ptr< acsdkBluetoothInterfaces::BluetoothDeviceObserverInterface > observer)
bool configure(const std::shared_ptr< sdkClient::SDKClientRegistry > &sdkClientRegistry) override
int32_t FirmwareVersion
Type to use to communicate a firmware version.
Definition: SoftwareInfoSenderObserverInterface.h:29
void removeCallStateObserver(std::shared_ptr< avsCommon::sdkInterfaces::CallStateObserverInterface > observer)
void addAudioInputProcessorObserver(const std::shared_ptr< avsCommon::sdkInterfaces::AudioInputProcessorObserverInterface > &observer)
void removeConnectionObserver(std::shared_ptr< avsCommon::sdkInterfaces::ConnectionStatusObserverInterface > observer)
void audioPlayerLocalStop()
void addAlexaDialogStateObserver(std::shared_ptr< avsCommon::sdkInterfaces::DialogUXStateObserverInterface > observer)
std::shared_ptr< avsCommon::sdkInterfaces::endpoints::EndpointBuilderInterface > getDefaultEndpointBuilder()
std::string EndpointIdentifier
Definition: EndpointIdentifier.h:38
void stopForegroundActivity()
std::future< bool > notifyOfTapToTalk(capabilityAgents::aip::AudioProvider tapToTalkAudioProvider, avsCommon::avs::AudioInputStream::Index beginIndex=capabilityAgents::aip::AudioInputProcessor::INVALID_INDEX, std::chrono::steady_clock::time_point startOfSpeechTimestamp=std::chrono::steady_clock::now()) override
The directive sequencer.
void doShutdown() override
std::string getAVSGateway()
void sendDtmf(avsCommon::sdkInterfaces::CallManagerInterface::DTMFTone dtmfTone)
void removeBluetoothDeviceObserver(std::shared_ptr< acsdkBluetoothInterfaces::BluetoothDeviceObserverInterface > observer)
Definition: SpeechInteractionHandlerInterface.h:37
void addEqualizerControllerListener(std::shared_ptr< acsdkEqualizerInterfaces::EqualizerControllerListenerInterface > listener)
bool setFirmwareVersion(avsCommon::sdkInterfaces::softwareInfo::FirmwareVersion firmwareVersion)
void addConnectionObserver(std::shared_ptr< avsCommon::sdkInterfaces::ConnectionStatusObserverInterface > observer)
std::shared_ptr< registrationManager::RegistrationManagerInterface > getRegistrationManager()
bool setEncodingAudioFormat(avsCommon::utils::AudioFormat::Encoding encoding)
void removeAlexaDialogStateObserver(std::shared_ptr< avsCommon::sdkInterfaces::DialogUXStateObserverInterface > observer)
void removeSpeechSynthesizerObserver(std::shared_ptr< avsCommon::sdkInterfaces::SpeechSynthesizerObserverInterface > observer)
void removeAudioPlayerObserver(std::shared_ptr< acsdkAudioPlayerInterfaces::AudioPlayerObserverInterface > observer)
std::shared_ptr< acsdkDeviceSetupInterfaces::DeviceSetupInterface > getDeviceSetup()
std::future< bool > notifyOfHoldToTalkEnd() override
The directive sequencer.