AlexaClientSDK  3.0.0
A cross-platform, modular SDK for interacting with the Alexa Voice Service
Public Member Functions | List of all members
alexaClientSDK::sampleApp::ExternalCapabilitiesBuilder Class Reference

#include <ExternalCapabilitiesBuilder.h>

Inheritance diagram for alexaClientSDK::sampleApp::ExternalCapabilitiesBuilder:
Inheritance graph
[legend]
Collaboration diagram for alexaClientSDK::sampleApp::ExternalCapabilitiesBuilder:
Collaboration graph
[legend]

Public Member Functions

 ExternalCapabilitiesBuilder (std::shared_ptr< avsCommon::utils::DeviceInfo > deviceInfo)
 
ExternalCapabilitiesBuilderInterface methods.
ExternalCapabilitiesBuilderwithSettingsStorage (std::shared_ptr< alexaClientSDK::settings::storage ::DeviceSettingStorageInterface > settingStorage) override
 
ExternalCapabilitiesBuilderwithTemplateRunTime (std::shared_ptr< templateRuntimeInterfaces::TemplateRuntimeInterface > templateRuntime) override
 
std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::CallManagerInterfacegetCallManager () override
 
ExternalCapabilitiesBuilderwithInternetConnectionMonitor (std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::InternetConnectionMonitorInterface > internetConnectionMonitor) override
 
ExternalCapabilitiesBuilderwithDialogUXStateAggregator (std::shared_ptr< alexaClientSDK::avsCommon::avs::DialogUXStateAggregator > dialogUXStateAggregator) override
 
ExternalCapabilitiesBuilderwithAlexaInterfaceMessageSender (std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::AlexaInterfaceMessageSenderInterface > alexaMessageSender) override
 
std::pair< std::list< Capability >, std::list< std::shared_ptr< alexaClientSDK::avsCommon::utils::RequiresShutdown > > > buildCapabilities (std::shared_ptr< alexaClientSDK::acsdkExternalMediaPlayer::ExternalMediaPlayer > externalMediaPlayer, std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::AVSConnectionManagerInterface > connectionManager, std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::MessageSenderInterface > messageSender, std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::ExceptionEncounteredSenderInterface > exceptionSender, std::shared_ptr< alexaClientSDK::certifiedSender::CertifiedSender > certifiedSender, std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::FocusManagerInterface > audioFocusManager, std::shared_ptr< alexaClientSDK::registrationManager::CustomerDataManagerInterface > dataManager, std::shared_ptr< alexaClientSDK::capabilityAgents::system::ReportStateHandler > stateReportHandler, std::shared_ptr< alexaClientSDK::capabilityAgents::aip::AudioInputProcessor > audioInputProcessor, std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::SpeakerManagerInterface > speakerManager, std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::DirectiveSequencerInterface > directiveSequencer, std::shared_ptr< avsCommon::sdkInterfaces::UserInactivityMonitorInterface > userInactivityMonitor, std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::ContextManagerInterface > contextManager, std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::AVSGatewayManagerInterface > avsGatewayManager, std::shared_ptr< alexaClientSDK::avsCommon::utils::mediaPlayer::MediaPlayerInterface > ringtoneMediaPlayer, std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::audio::AudioFactoryInterface > audioFactory, std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::ChannelVolumeInterface > ringtoneChannelVolumeInterface, std::shared_ptr< avsCommon::sdkInterfaces::PowerResourceManagerInterface > powerResourceManager, std::shared_ptr< avsCommon::sdkInterfaces::ComponentReporterInterface > softwareComponentReporter, std::shared_ptr< avsCommon::sdkInterfaces::PlaybackRouterInterface > playbackRouter, std::shared_ptr< avsCommon::sdkInterfaces::endpoints::EndpointRegistrationManagerInterface > endpointRegistrationManager, std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface > metricRecorder) override
 
- Public Member Functions inherited from alexaClientSDK::defaultClient::ExternalCapabilitiesBuilderInterface
virtual ~ExternalCapabilitiesBuilderInterface ()=default
 
virtual ExternalCapabilitiesBuilderInterfacewithSettingsStorage (std::shared_ptr< settings::storage::DeviceSettingStorageInterface > settingStorage)=0
 
virtual ExternalCapabilitiesBuilderInterfacewithInternetConnectionMonitor (std::shared_ptr< avsCommon::sdkInterfaces::InternetConnectionMonitorInterface > internetConnectionMonitor)=0
 
virtual ExternalCapabilitiesBuilderInterfacewithDialogUXStateAggregator (std::shared_ptr< avsCommon::avs::DialogUXStateAggregator > dialogUXStateAggregator)=0
 
virtual std::pair< std::list< Capability >, std::list< std::shared_ptr< avsCommon::utils::RequiresShutdown > > > buildCapabilities (std::shared_ptr< acsdkExternalMediaPlayer::ExternalMediaPlayer > externalMediaPlayer, std::shared_ptr< avsCommon::sdkInterfaces::AVSConnectionManagerInterface > connectionManager, std::shared_ptr< avsCommon::sdkInterfaces::MessageSenderInterface > messageSender, std::shared_ptr< avsCommon::sdkInterfaces::ExceptionEncounteredSenderInterface > exceptionSender, std::shared_ptr< certifiedSender::CertifiedSender > certifiedSender, std::shared_ptr< avsCommon::sdkInterfaces::FocusManagerInterface > audioFocusManager, std::shared_ptr< registrationManager::CustomerDataManagerInterface > dataManager, std::shared_ptr< capabilityAgents::system::ReportStateHandler > stateReportHandler, std::shared_ptr< capabilityAgents::aip::AudioInputProcessor > audioInputProcessor, std::shared_ptr< avsCommon::sdkInterfaces::SpeakerManagerInterface > speakerManager, std::shared_ptr< avsCommon::sdkInterfaces::DirectiveSequencerInterface > directiveSequencer, std::shared_ptr< avsCommon::sdkInterfaces::UserInactivityMonitorInterface > userInactivityMonitor, std::shared_ptr< avsCommon::sdkInterfaces::ContextManagerInterface > contextManager, std::shared_ptr< avsCommon::sdkInterfaces::AVSGatewayManagerInterface > avsGatewayManager, std::shared_ptr< avsCommon::utils::mediaPlayer::MediaPlayerInterface > ringtoneMediaPlayer, std::shared_ptr< avsCommon::sdkInterfaces::audio::AudioFactoryInterface > audioFactory, std::shared_ptr< avsCommon::sdkInterfaces::ChannelVolumeInterface > ringtoneChannelVolumeInterface, std::shared_ptr< avsCommon::sdkInterfaces::PowerResourceManagerInterface > powerResourceManager, std::shared_ptr< avsCommon::sdkInterfaces::ComponentReporterInterface > softwareComponentReporter, std::shared_ptr< avsCommon::sdkInterfaces::PlaybackRouterInterface > playbackRouter, std::shared_ptr< avsCommon::sdkInterfaces::endpoints::EndpointRegistrationManagerInterface > endpointRegistrationManager, std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface > metricRecorder)=0
 

Detailed Description

This class provides a facility to add external capabilities to default client.

Default client will provide its core components in the build call.

Note
Any object created during the buildCapabilities that keep a pointer to a core component should be added or managed by an object in the list of RequiresShutdown objects returned by buildCapabilities(). This will ensure that these objects are shutdown during DefaultClient shutdown and before any core component is shutdown.

Constructor & Destructor Documentation

◆ ExternalCapabilitiesBuilder()

alexaClientSDK::sampleApp::ExternalCapabilitiesBuilder::ExternalCapabilitiesBuilder ( std::shared_ptr< avsCommon::utils::DeviceInfo deviceInfo)

Constructor.

Parameters
deviceInfoDeviceInfo which reflects the device setup credentials.

Member Function Documentation

◆ buildCapabilities()

std::pair<std::list<Capability>, std::list<std::shared_ptr<alexaClientSDK::avsCommon::utils::RequiresShutdown> > > alexaClientSDK::sampleApp::ExternalCapabilitiesBuilder::buildCapabilities ( std::shared_ptr< alexaClientSDK::acsdkExternalMediaPlayer::ExternalMediaPlayer externalMediaPlayer,
std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::AVSConnectionManagerInterface connectionManager,
std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::MessageSenderInterface messageSender,
std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::ExceptionEncounteredSenderInterface exceptionSender,
std::shared_ptr< alexaClientSDK::certifiedSender::CertifiedSender certifiedSender,
std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::FocusManagerInterface audioFocusManager,
std::shared_ptr< alexaClientSDK::registrationManager::CustomerDataManagerInterface dataManager,
std::shared_ptr< alexaClientSDK::capabilityAgents::system::ReportStateHandler stateReportHandler,
std::shared_ptr< alexaClientSDK::capabilityAgents::aip::AudioInputProcessor audioInputProcessor,
std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::SpeakerManagerInterface speakerManager,
std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::DirectiveSequencerInterface directiveSequencer,
std::shared_ptr< avsCommon::sdkInterfaces::UserInactivityMonitorInterface userInactivityMonitor,
std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::ContextManagerInterface contextManager,
std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::AVSGatewayManagerInterface avsGatewayManager,
std::shared_ptr< alexaClientSDK::avsCommon::utils::mediaPlayer::MediaPlayerInterface ringtoneMediaPlayer,
std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::audio::AudioFactoryInterface audioFactory,
std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::ChannelVolumeInterface ringtoneChannelVolumeInterface,
std::shared_ptr< avsCommon::sdkInterfaces::PowerResourceManagerInterface powerResourceManager,
std::shared_ptr< avsCommon::sdkInterfaces::ComponentReporterInterface softwareComponentReporter,
std::shared_ptr< avsCommon::sdkInterfaces::PlaybackRouterInterface playbackRouter,
std::shared_ptr< avsCommon::sdkInterfaces::endpoints::EndpointRegistrationManagerInterface endpointRegistrationManager,
std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface metricRecorder 
)
override

◆ getCallManager()

std::shared_ptr<alexaClientSDK::avsCommon::sdkInterfaces::CallManagerInterface> alexaClientSDK::sampleApp::ExternalCapabilitiesBuilder::getCallManager ( )
overridevirtual

Get the CallManager reference.

Returns
A reference of CallManager.

Implements alexaClientSDK::defaultClient::ExternalCapabilitiesBuilderInterface.

◆ withAlexaInterfaceMessageSender()

ExternalCapabilitiesBuilder& alexaClientSDK::sampleApp::ExternalCapabilitiesBuilder::withAlexaInterfaceMessageSender ( std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::AlexaInterfaceMessageSenderInterface alexaMessageSender)
overridevirtual

This method sets the Alexa Interface Message Sender to send Alexa Interface response events.

Parameters
alexaMessageSenderThe AlexaInterfaceMessageSenderInterface object.

Implements alexaClientSDK::defaultClient::ExternalCapabilitiesBuilderInterface.

◆ withDialogUXStateAggregator()

ExternalCapabilitiesBuilder& alexaClientSDK::sampleApp::ExternalCapabilitiesBuilder::withDialogUXStateAggregator ( std::shared_ptr< alexaClientSDK::avsCommon::avs::DialogUXStateAggregator dialogUXStateAggregator)
override

◆ withInternetConnectionMonitor()

ExternalCapabilitiesBuilder& alexaClientSDK::sampleApp::ExternalCapabilitiesBuilder::withInternetConnectionMonitor ( std::shared_ptr< alexaClientSDK::avsCommon::sdkInterfaces::InternetConnectionMonitorInterface internetConnectionMonitor)
override

◆ withSettingsStorage()

ExternalCapabilitiesBuilder& alexaClientSDK::sampleApp::ExternalCapabilitiesBuilder::withSettingsStorage ( std::shared_ptr< alexaClientSDK::settings::storage ::DeviceSettingStorageInterface >  settingStorage)
override

◆ withTemplateRunTime()

ExternalCapabilitiesBuilder& alexaClientSDK::sampleApp::ExternalCapabilitiesBuilder::withTemplateRunTime ( std::shared_ptr< templateRuntimeInterfaces::TemplateRuntimeInterface templateRuntime)
overridevirtual

This method sets the TemplateRuntime Capability Agent for visual interactions.

This method will only get called if GUI supports has been enabled.

Parameters
templateRuntimeThe TemplateRuntime object.

Implements alexaClientSDK::defaultClient::ExternalCapabilitiesBuilderInterface.


The documentation for this class was generated from the following file:

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