AlexaClientSDK  1.25.0
A cross-platform, modular SDK for interacting with the Alexa Voice Service
Namespaces | Classes | Functions | Variables
alexaClientSDK::acsdkExternalMediaPlayer Namespace Reference

Namespaces

 test
 

Classes

struct  AuthorizedPlayerInfo
 
class  AuthorizedSender
 
class  ExternalMediaAdapterHandler
 
class  ExternalMediaPlayer
 
class  StaticExternalMediaPlayerAdapterHandler
 

Functions

acsdkManufactory::Component< std::shared_ptr< acsdkExternalMediaPlayerInterfaces::ExternalMediaPlayerInterface >, std::shared_ptr< acsdkExternalMediaPlayer::ExternalMediaPlayer >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::RenderPlayerInfoCardsProviderRegistrarInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::PlaybackRouterInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::ContextManagerInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::MessageSenderInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::ExceptionEncounteredSenderInterface > >, acsdkManufactory::Import< std::shared_ptr< certifiedSender::CertifiedSender > >, acsdkManufactory::Import< std::shared_ptr< acsdkShutdownManagerInterfaces::ShutdownNotifierInterface > >, acsdkManufactory::Import< std::shared_ptr< acsdkStartupManagerInterfaces::StartupNotifierInterface > >, acsdkManufactory::Import< acsdkManufactory::Annotated< avsCommon::sdkInterfaces::endpoints::DefaultEndpointAnnotation, avsCommon::sdkInterfaces::endpoints::EndpointCapabilitiesRegistrarInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface > > > getComponent ()
 
acsdkManufactory::Component< std::shared_ptr< acsdkExternalMediaPlayerInterfaces::ExternalMediaPlayerInterface >, std::shared_ptr< acsdkExternalMediaPlayer::ExternalMediaPlayer >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::RenderPlayerInfoCardsProviderRegistrarInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::SpeakerManagerInterface > >, acsdkManufactory::Import< acsdkManufactory::Annotated< avsCommon::sdkInterfaces::AudioFocusAnnotation, avsCommon::sdkInterfaces::FocusManagerInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::PlaybackRouterInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::ContextManagerInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::MessageSenderInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::ExceptionEncounteredSenderInterface > >, acsdkManufactory::Import< std::shared_ptr< certifiedSender::CertifiedSender > >, acsdkManufactory::Import< std::shared_ptr< acsdkShutdownManagerInterfaces::ShutdownNotifierInterface > >, acsdkManufactory::Import< std::shared_ptr< acsdkStartupManagerInterfaces::StartupNotifierInterface > >, acsdkManufactory::Import< acsdkManufactory::Annotated< avsCommon::sdkInterfaces::endpoints::DefaultEndpointAnnotation, avsCommon::sdkInterfaces::endpoints::EndpointCapabilitiesRegistrarInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface > >, acsdkManufactory::Import< std::shared_ptr< acsdkApplicationAudioPipelineFactoryInterfaces::ApplicationAudioPipelineFactoryInterface > > > getBackwardsCompatibleComponent (const acsdkExternalMediaPlayer::ExternalMediaPlayer::AdapterCreationMap &adapterCreationMap)
 
static const std::string TAG ("AuthorizedSender")
 String to identify log entries originating from this file. More...
 
static const std::string TAG ("ExternalMediaAdapterHandler")
 String to identify log entries originating from this file. More...
 
static Navigation getNavigationEnum (std::string name)
 
static const std::string TAG ("ExternalMediaPlayer")
 String to identify log entries originating from this file. More...
 
static void submitMetric (const std::shared_ptr< MetricRecorderInterface > &metricRecorder, const std::string metricName, const DataPoint &dataPoint, const std::string &msgId, const std::string &trackId, const std::string &playerId)
 
static std::shared_ptr< avsCommon::avs::CapabilityConfigurationgetExternalMediaPlayerCapabilityConfiguration ()
 
static std::shared_ptr< CapabilityConfigurationgenerateCapabilityConfiguration (const std::string &type, const std::string &interfaceName, const std::string &version)
 
static const std::string TAG ("ExternalMediaPlayerComponent")
 String to identify log entries originating from this file. More...
 
static std::function< std::shared_ptr< acsdkExternalMediaPlayer::ExternalMediaPlayer > std::shared_ptr< avsCommon::sdkInterfaces::RenderPlayerInfoCardsProviderRegistrarInterface >, std::shared_ptr< avsCommon::sdkInterfaces::SpeakerManagerInterface >, acsdkManufactory::Annotated< avsCommon::sdkInterfaces::AudioFocusAnnotation, avsCommon::sdkInterfaces::FocusManagerInterface >, std::shared_ptr< avsCommon::sdkInterfaces::PlaybackRouterInterface >, std::shared_ptr< avsCommon::sdkInterfaces::ContextManagerInterface >, std::shared_ptr< avsCommon::sdkInterfaces::MessageSenderInterface >, std::shared_ptr< avsCommon::sdkInterfaces::ExceptionEncounteredSenderInterface >, std::shared_ptr< certifiedSender::CertifiedSender >, std::shared_ptr< acsdkShutdownManagerInterfaces::ShutdownNotifierInterface >, std::shared_ptr< acsdkStartupManagerInterfaces::StartupNotifierInterface >, acsdkManufactory::Annotated< avsCommon::sdkInterfaces::endpoints::DefaultEndpointAnnotation, avsCommon::sdkInterfaces::endpoints::EndpointCapabilitiesRegistrarInterface >, std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface >, std::shared_ptr< acsdkApplicationAudioPipelineFactoryInterfaces::ApplicationAudioPipelineFactoryInterface >)> getCreateExternalMediaPlayerWithAdapters (const acsdkExternalMediaPlayer::ExternalMediaPlayer::AdapterCreationMap &adapterCreationMap)
 
static const std::string TAG ("StaticExternalMediaPlayerAdapterHandler")
 String to identify log entries originating from this file. More...
 

Variables

static const std::string EVENT_KEY = "event"
 The event key. More...
 
static const std::string HEADER_KEY = "header"
 The header key. More...
 
static const std::string PAYLOAD_KEY = "payload"
 The payload key. More...
 
static const std::string PLAYER_ID_KEY = "playerId"
 The playerId key. More...
 
static const uint8_t DEFAULT_SPEAKER_VOLUME = 50
 
static const std::unordered_map< std::string, NavigationNAVIGATION_ENUM_MAP
 
static const std::string EXTERNALMEDIAPLAYER_STATE_NAMESPACE = "ExternalMediaPlayer"
 
static const std::string PLAYBACKSTATEREPORTER_STATE_NAMESPACE = "Alexa.PlaybackStateReporter"
 
static const std::string EXTERNALMEDIAPLAYER_NAME = "ExternalMediaPlayerState"
 
static const std::string PLAYBACKSTATEREPORTER_NAME = "playbackState"
 
static const std::string EXTERNALMEDIAPLAYER_NAMESPACE = "ExternalMediaPlayer"
 
static const std::string PLAYBACKCONTROLLER_NAMESPACE = "Alexa.PlaybackController"
 
static const std::string PLAYLISTCONTROLLER_NAMESPACE = "Alexa.PlaylistController"
 
static const std::string SEEKCONTROLLER_NAMESPACE = "Alexa.SeekController"
 
static const std::string FAVORITESCONTROLLER_NAMESPACE = "Alexa.FavoritesController"
 
static const std::string ALEXA_INTERFACE_TYPE = "AlexaInterface"
 The AlexaInterface constant type. More...
 
static const std::string EXTERNALMEDIAPLAYER_CAPABILITY_INTERFACE_TYPE = ALEXA_INTERFACE_TYPE
 
static const std::string EXTERNALMEDIAPLAYER_CAPABILITY_INTERFACE_NAME = "ExternalMediaPlayer"
 ExternalMediaPlayer interface name. More...
 
static const std::string EXTERNALMEDIAPLAYER_CAPABILITY_INTERFACE_VERSION = "1.2"
 ExternalMediaPlayer interface version. More...
 
static const std::string PLAYBACKSTATEREPORTER_CAPABILITY_INTERFACE_NAME = PLAYBACKSTATEREPORTER_STATE_NAMESPACE
 Alexa.PlaybackStateReporter name. More...
 
static const std::string PLAYBACKSTATEREPORTER_CAPABILITY_INTERFACE_VERSION = "1.0"
 Alexa.PlaybackStateReporter version. More...
 
static const std::string PLAYBACKCONTROLLER_CAPABILITY_INTERFACE_NAME = PLAYBACKCONTROLLER_NAMESPACE
 Alexa.PlaybackController name. More...
 
static const std::string PLAYBACKCONTROLLER_CAPABILITY_INTERFACE_VERSION = "1.0"
 Alexa.PlaybackController version. More...
 
static const std::string PLAYLISTCONTROLLER_CAPABILITY_INTERFACE_NAME = PLAYLISTCONTROLLER_NAMESPACE
 Alexa.PlaylistController name. More...
 
static const std::string PLAYLISTCONTROLLER_CAPABILITY_INTERFACE_VERSION = "1.0"
 Alexa.PlaylistController version. More...
 
static const std::string SEEKCONTROLLER_CAPABILITY_INTERFACE_NAME = SEEKCONTROLLER_NAMESPACE
 Alexa.SeekController name. More...
 
static const std::string SEEKCONTROLLER_CAPABILITY_INTERFACE_VERSION = "1.0"
 Alexa.SeekController version. More...
 
static const std::string FAVORITESCONTROLLER_CAPABILITY_INTERFACE_NAME = FAVORITESCONTROLLER_NAMESPACE
 Alexa.FavoritesController name. More...
 
static const std::string FAVORITESCONTROLLER_CAPABILITY_INTERFACE_VERSION = "1.0"
 Alexa.FavoritesController version. More...
 
static const NamespaceAndName PLAY_DIRECTIVE {EXTERNALMEDIAPLAYER_NAMESPACE, "Play"}
 
static const NamespaceAndName LOGIN_DIRECTIVE {EXTERNALMEDIAPLAYER_NAMESPACE, "Login"}
 
static const NamespaceAndName LOGOUT_DIRECTIVE {EXTERNALMEDIAPLAYER_NAMESPACE, "Logout"}
 
static const NamespaceAndName AUTHORIZEDISCOVEREDPLAYERS_DIRECTIVE
 
static const NamespaceAndName RESUME_DIRECTIVE {PLAYBACKCONTROLLER_NAMESPACE, "Play"}
 
static const NamespaceAndName PAUSE_DIRECTIVE {PLAYBACKCONTROLLER_NAMESPACE, "Pause"}
 
static const NamespaceAndName STOP_DIRECTIVE {PLAYBACKCONTROLLER_NAMESPACE, "Stop"}
 
static const NamespaceAndName NEXT_DIRECTIVE {PLAYBACKCONTROLLER_NAMESPACE, "Next"}
 
static const NamespaceAndName PREVIOUS_DIRECTIVE {PLAYBACKCONTROLLER_NAMESPACE, "Previous"}
 
static const NamespaceAndName STARTOVER_DIRECTIVE {PLAYBACKCONTROLLER_NAMESPACE, "StartOver"}
 
static const NamespaceAndName REWIND_DIRECTIVE {PLAYBACKCONTROLLER_NAMESPACE, "Rewind"}
 
static const NamespaceAndName FASTFORWARD_DIRECTIVE {PLAYBACKCONTROLLER_NAMESPACE, "FastForward"}
 
static const NamespaceAndName ENABLEREPEATONE_DIRECTIVE {PLAYLISTCONTROLLER_NAMESPACE, "EnableRepeatOne"}
 
static const NamespaceAndName ENABLEREPEAT_DIRECTIVE {PLAYLISTCONTROLLER_NAMESPACE, "EnableRepeat"}
 
static const NamespaceAndName DISABLEREPEAT_DIRECTIVE {PLAYLISTCONTROLLER_NAMESPACE, "DisableRepeat"}
 
static const NamespaceAndName ENABLESHUFFLE_DIRECTIVE {PLAYLISTCONTROLLER_NAMESPACE, "EnableShuffle"}
 
static const NamespaceAndName DISABLESHUFFLE_DIRECTIVE {PLAYLISTCONTROLLER_NAMESPACE, "DisableShuffle"}
 
static const NamespaceAndName SEEK_DIRECTIVE {SEEKCONTROLLER_NAMESPACE, "SetSeekPosition"}
 
static const NamespaceAndName ADJUSTSEEK_DIRECTIVE {SEEKCONTROLLER_NAMESPACE, "AdjustSeekPosition"}
 
static const NamespaceAndName FAVORITE_DIRECTIVE {FAVORITESCONTROLLER_NAMESPACE, "Favorite"}
 
static const NamespaceAndName UNFAVORITE_DIRECTIVE {FAVORITESCONTROLLER_NAMESPACE, "Unfavorite"}
 
static const NamespaceAndName SESSION_STATE {EXTERNALMEDIAPLAYER_STATE_NAMESPACE, EXTERNALMEDIAPLAYER_NAME}
 
static const NamespaceAndName PLAYBACK_STATE {PLAYBACKSTATEREPORTER_STATE_NAMESPACE, PLAYBACKSTATEREPORTER_NAME}
 
static const int64_t MAX_PAST_OFFSET = -86400000
 
static const int64_t MAX_FUTURE_OFFSET = 86400000
 
static const char AUTHORIZED [] = "authorized"
 The authorized key. More...
 
static const char DEAUTHORIZED [] = "deauthorized"
 The deauthorized key. More...
 
static const char LOCAL_PLAYER_ID [] = "localPlayerId"
 The localPlayerId key. More...
 
static const char METADATA [] = "metadata"
 The metadata key. More...
 
static const char SPI_VERSION_KEY [] = "spiVersion"
 The spiVersion key. More...
 
static const char VALIDATION_METHOD [] = "validationMethod"
 The validationMethod key. More...
 
static const char VALIDATION_DATA [] = "validationData"
 The validationData key. More...
 
static const char REPORT_DISCOVERED_PLAYERS [] = "ReportDiscoveredPlayers"
 The ReportDiscoveredPlayers Event key. More...
 
static const char AUTHORIZATION_COMPLETE [] = "AuthorizationComplete"
 The AuthorizationComplete Event key. More...
 
static const std::string AUDIO_PLAYER_METRIC_PREFIX = "AUDIO_PLAYER-"
 Metric name prefix for AudioPlayer metric source. More...
 
static const std::string PLAY_DIRECTIVE_RECEIVED = "PLAY_DIRECTIVE_RECEIVED"
 
static const std::string STOP_DIRECTIVE_RECEIVED = "STOP_DIRECTIVE_RECEIVED"
 
auto audioNonBlockingPolicy = BlockingPolicy(BlockingPolicy::MEDIUM_AUDIO, false)
 
auto neitherNonBlockingPolicy = BlockingPolicy(BlockingPolicy::MEDIUMS_NONE, false)
 
static DirectiveHandlerConfiguration g_configuration
 
static std::unordered_map< PlaybackButton, RequestTypeg_buttonToRequestType
 
static std::unordered_map< PlaybackToggle, std::pair< RequestType, RequestType > > g_toggleToRequestType
 

Function Documentation

◆ generateCapabilityConfiguration()

static std::shared_ptr<CapabilityConfiguration> alexaClientSDK::acsdkExternalMediaPlayer::generateCapabilityConfiguration ( const std::string &  type,
const std::string &  interfaceName,
const std::string &  version 
)
static

Generate a CapabilityConfiguration object.

Parameters
typeThe Capability interface type.
interfaceNameThe Capability interface name.
versionThe Capability interface verison.

◆ getBackwardsCompatibleComponent()

acsdkManufactory::Component< std::shared_ptr< acsdkExternalMediaPlayerInterfaces::ExternalMediaPlayerInterface >, std::shared_ptr< acsdkExternalMediaPlayer::ExternalMediaPlayer >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::RenderPlayerInfoCardsProviderRegistrarInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::SpeakerManagerInterface > >, acsdkManufactory::Import< acsdkManufactory::Annotated< avsCommon::sdkInterfaces::AudioFocusAnnotation, avsCommon::sdkInterfaces::FocusManagerInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::PlaybackRouterInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::ContextManagerInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::MessageSenderInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::ExceptionEncounteredSenderInterface > >, acsdkManufactory::Import< std::shared_ptr< certifiedSender::CertifiedSender > >, acsdkManufactory::Import< std::shared_ptr< acsdkShutdownManagerInterfaces::ShutdownNotifierInterface > >, acsdkManufactory::Import< std::shared_ptr< acsdkStartupManagerInterfaces::StartupNotifierInterface > >, acsdkManufactory::Import< acsdkManufactory::Annotated< avsCommon::sdkInterfaces::endpoints::DefaultEndpointAnnotation, avsCommon::sdkInterfaces::endpoints::EndpointCapabilitiesRegistrarInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::utils::metrics::MetricRecorderInterface > >, acsdkManufactory::Import< std::shared_ptr< acsdkApplicationAudioPipelineFactoryInterfaces::ApplicationAudioPipelineFactoryInterface > > > alexaClientSDK::acsdkExternalMediaPlayer::getBackwardsCompatibleComponent ( const acsdkExternalMediaPlayer::ExternalMediaPlayer::AdapterCreationMap adapterCreationMap)

Creates an manufactory component that exports a shared pointer to an implementation of ExternalMediaPlayerInterface as well as ExternalMediaPlayer.

This method is provided for backwards compatibility where the ExternalMediaPlayer must create the adapters at initialization. Prefer creating components for ExternalMediaPlayerAdapters such that the adapter can register its own handler with the ExternalMediaPlayer.

Although this component currently also exports an ExternalMediaPlayer concrete type, applications must not use this export as it is included here only during the transition to manufactory and will be removed in a later release.

Parameters
adapterCreationMapMap of AdapterCreationFunctions so that the EMP can create the adapters at initialization.
Returns
A component.

◆ getComponent()

Creates an manufactory component that exports a shared pointer to an implementation of ExternalMediaPlayerInterface.

Although this component currently also exports an ExternalMediaPlayer concrete type, applications must not use this export as it is included here only during the transition to manufactory and will be removed in a later release.

Returns
A component.

◆ getCreateExternalMediaPlayerWithAdapters()

Returns an std::function to serve as the factory method for a ExternalMediaPlayer given a map of adapter creation methods.

Deprecated:
Applications should prefer to create components for their external media adapters; this is provided for backwards compatibility only.
Parameters
adapterCreationMapA map of <player ID: AdapterCreateFunction> such that ExternalMediaPlayer can create the adapters in this map.
Returns
A ExternalMediaPlayer.

◆ getExternalMediaPlayerCapabilityConfiguration()

std::shared_ptr< CapabilityConfiguration > alexaClientSDK::acsdkExternalMediaPlayer::getExternalMediaPlayerCapabilityConfiguration ( )
static

Creates the ExternalMediaPlayer capability configuration.

Returns
The ExternalMediaPlayer capability configuration.

◆ getNavigationEnum()

static Navigation alexaClientSDK::acsdkExternalMediaPlayer::getNavigationEnum ( std::string  name)
static

◆ submitMetric()

static void alexaClientSDK::acsdkExternalMediaPlayer::submitMetric ( const std::shared_ptr< MetricRecorderInterface > &  metricRecorder,
const std::string  metricName,
const DataPoint dataPoint,
const std::string &  msgId,
const std::string &  trackId,
const std::string &  playerId 
)
static

Handles a Metric event by creating and recording it. Failure to create or record the event results in an early return.

Parameters
metricRecorderThe MetricRecorderInterface which records Metric events.
metricNameThe name of the Metric event.
dataPointThe DataPoint of this Metric event (e.g. duration).
msgIdThe message id string from the retrieved from the directive.
trackIdThe track id string from the retrieved from the directive.
playerIdThe player id string from the retrieved from the directive.

◆ TAG() [1/5]

static const std::string alexaClientSDK::acsdkExternalMediaPlayer::TAG ( "ExternalMediaPlayerComponent"  )
static

String to identify log entries originating from this file.

◆ TAG() [2/5]

static const std::string alexaClientSDK::acsdkExternalMediaPlayer::TAG ( "StaticExternalMediaPlayerAdapterHandler"  )
static

String to identify log entries originating from this file.

◆ TAG() [3/5]

static const std::string alexaClientSDK::acsdkExternalMediaPlayer::TAG ( "AuthorizedSender"  )
static

String to identify log entries originating from this file.

◆ TAG() [4/5]

static const std::string alexaClientSDK::acsdkExternalMediaPlayer::TAG ( "ExternalMediaAdapterHandler"  )
static

String to identify log entries originating from this file.

◆ TAG() [5/5]

static const std::string alexaClientSDK::acsdkExternalMediaPlayer::TAG ( "ExternalMediaPlayer"  )
static

String to identify log entries originating from this file.

Variable Documentation

◆ ADJUSTSEEK_DIRECTIVE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::ADJUSTSEEK_DIRECTIVE {SEEKCONTROLLER_NAMESPACE, "AdjustSeekPosition"}
static

◆ ALEXA_INTERFACE_TYPE

const std::string alexaClientSDK::acsdkExternalMediaPlayer::ALEXA_INTERFACE_TYPE = "AlexaInterface"
static

The AlexaInterface constant type.

◆ AUDIO_PLAYER_METRIC_PREFIX

const std::string alexaClientSDK::acsdkExternalMediaPlayer::AUDIO_PLAYER_METRIC_PREFIX = "AUDIO_PLAYER-"
static

Metric name prefix for AudioPlayer metric source.

◆ audioNonBlockingPolicy

auto alexaClientSDK::acsdkExternalMediaPlayer::audioNonBlockingPolicy = BlockingPolicy(BlockingPolicy::MEDIUM_AUDIO, false)

◆ AUTHORIZATION_COMPLETE

const char alexaClientSDK::acsdkExternalMediaPlayer::AUTHORIZATION_COMPLETE[] = "AuthorizationComplete"
static

The AuthorizationComplete Event key.

◆ AUTHORIZED

const char alexaClientSDK::acsdkExternalMediaPlayer::AUTHORIZED[] = "authorized"
static

The authorized key.

◆ AUTHORIZEDISCOVEREDPLAYERS_DIRECTIVE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::AUTHORIZEDISCOVEREDPLAYERS_DIRECTIVE
static
Initial value:
"AuthorizeDiscoveredPlayers"}
static const std::string EXTERNALMEDIAPLAYER_NAMESPACE
Definition: ExternalMediaPlayer.cpp:72

◆ DEAUTHORIZED

const char alexaClientSDK::acsdkExternalMediaPlayer::DEAUTHORIZED[] = "deauthorized"
static

The deauthorized key.

◆ DEFAULT_SPEAKER_VOLUME

const uint8_t alexaClientSDK::acsdkExternalMediaPlayer::DEFAULT_SPEAKER_VOLUME = 50
static

◆ DISABLEREPEAT_DIRECTIVE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::DISABLEREPEAT_DIRECTIVE {PLAYLISTCONTROLLER_NAMESPACE, "DisableRepeat"}
static

◆ DISABLESHUFFLE_DIRECTIVE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::DISABLESHUFFLE_DIRECTIVE {PLAYLISTCONTROLLER_NAMESPACE, "DisableShuffle"}
static

◆ ENABLEREPEAT_DIRECTIVE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::ENABLEREPEAT_DIRECTIVE {PLAYLISTCONTROLLER_NAMESPACE, "EnableRepeat"}
static

◆ ENABLEREPEATONE_DIRECTIVE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::ENABLEREPEATONE_DIRECTIVE {PLAYLISTCONTROLLER_NAMESPACE, "EnableRepeatOne"}
static

◆ ENABLESHUFFLE_DIRECTIVE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::ENABLESHUFFLE_DIRECTIVE {PLAYLISTCONTROLLER_NAMESPACE, "EnableShuffle"}
static

◆ EVENT_KEY

const std::string alexaClientSDK::acsdkExternalMediaPlayer::EVENT_KEY = "event"
static

The event key.

◆ EXTERNALMEDIAPLAYER_CAPABILITY_INTERFACE_NAME

const std::string alexaClientSDK::acsdkExternalMediaPlayer::EXTERNALMEDIAPLAYER_CAPABILITY_INTERFACE_NAME = "ExternalMediaPlayer"
static

ExternalMediaPlayer interface name.

◆ EXTERNALMEDIAPLAYER_CAPABILITY_INTERFACE_TYPE

const std::string alexaClientSDK::acsdkExternalMediaPlayer::EXTERNALMEDIAPLAYER_CAPABILITY_INTERFACE_TYPE = ALEXA_INTERFACE_TYPE
static

ExternalMediaPlayer capability constants ExternalMediaPlayer interface type

◆ EXTERNALMEDIAPLAYER_CAPABILITY_INTERFACE_VERSION

const std::string alexaClientSDK::acsdkExternalMediaPlayer::EXTERNALMEDIAPLAYER_CAPABILITY_INTERFACE_VERSION = "1.2"
static

ExternalMediaPlayer interface version.

◆ EXTERNALMEDIAPLAYER_NAME

const std::string alexaClientSDK::acsdkExternalMediaPlayer::EXTERNALMEDIAPLAYER_NAME = "ExternalMediaPlayerState"
static

◆ EXTERNALMEDIAPLAYER_NAMESPACE

const std::string alexaClientSDK::acsdkExternalMediaPlayer::EXTERNALMEDIAPLAYER_NAMESPACE = "ExternalMediaPlayer"
static

◆ EXTERNALMEDIAPLAYER_STATE_NAMESPACE

const std::string alexaClientSDK::acsdkExternalMediaPlayer::EXTERNALMEDIAPLAYER_STATE_NAMESPACE = "ExternalMediaPlayer"
static

◆ FASTFORWARD_DIRECTIVE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::FASTFORWARD_DIRECTIVE {PLAYBACKCONTROLLER_NAMESPACE, "FastForward"}
static

◆ FAVORITE_DIRECTIVE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::FAVORITE_DIRECTIVE {FAVORITESCONTROLLER_NAMESPACE, "Favorite"}
static

◆ FAVORITESCONTROLLER_CAPABILITY_INTERFACE_NAME

const std::string alexaClientSDK::acsdkExternalMediaPlayer::FAVORITESCONTROLLER_CAPABILITY_INTERFACE_NAME = FAVORITESCONTROLLER_NAMESPACE
static

Alexa.FavoritesController name.

◆ FAVORITESCONTROLLER_CAPABILITY_INTERFACE_VERSION

const std::string alexaClientSDK::acsdkExternalMediaPlayer::FAVORITESCONTROLLER_CAPABILITY_INTERFACE_VERSION = "1.0"
static

Alexa.FavoritesController version.

◆ FAVORITESCONTROLLER_NAMESPACE

const std::string alexaClientSDK::acsdkExternalMediaPlayer::FAVORITESCONTROLLER_NAMESPACE = "Alexa.FavoritesController"
static

◆ g_buttonToRequestType

std::unordered_map<PlaybackButton, RequestType> alexaClientSDK::acsdkExternalMediaPlayer::g_buttonToRequestType
static
Initial value:
= {
{PlaybackButton::PLAY, RequestType::PAUSE_RESUME_TOGGLE},
{PlaybackButton::PAUSE, RequestType::PAUSE_RESUME_TOGGLE},
static const NamespaceAndName NEXT
The Next directive identifier.
Definition: Bluetooth.cpp:163
static const char PAUSE
Definition: UserInputManager.cpp:42
static const NamespaceAndName PREVIOUS
The Previous directive identifier.
Definition: Bluetooth.cpp:172
static const NamespaceAndName PLAY
The Play directive signature.
Definition: AudioPlayer.cpp:91

◆ g_configuration

DirectiveHandlerConfiguration alexaClientSDK::acsdkExternalMediaPlayer::g_configuration
static
Initial value:
{PLAY_DIRECTIVE, audioNonBlockingPolicy},
{LOGOUT_DIRECTIVE, neitherNonBlockingPolicy},
{RESUME_DIRECTIVE, audioNonBlockingPolicy},
{PAUSE_DIRECTIVE, audioNonBlockingPolicy},
{STOP_DIRECTIVE, audioNonBlockingPolicy},
{NEXT_DIRECTIVE, audioNonBlockingPolicy},
{PREVIOUS_DIRECTIVE, audioNonBlockingPolicy},
{STARTOVER_DIRECTIVE, audioNonBlockingPolicy},
{REWIND_DIRECTIVE, audioNonBlockingPolicy},
{FASTFORWARD_DIRECTIVE, audioNonBlockingPolicy},
{ENABLEREPEATONE_DIRECTIVE, neitherNonBlockingPolicy},
{ENABLEREPEAT_DIRECTIVE, neitherNonBlockingPolicy},
{DISABLEREPEAT_DIRECTIVE, neitherNonBlockingPolicy},
{ENABLESHUFFLE_DIRECTIVE, neitherNonBlockingPolicy},
{DISABLESHUFFLE_DIRECTIVE, neitherNonBlockingPolicy},
{SEEK_DIRECTIVE, audioNonBlockingPolicy},
{ADJUSTSEEK_DIRECTIVE, audioNonBlockingPolicy},
{FAVORITE_DIRECTIVE, neitherNonBlockingPolicy},
{UNFAVORITE_DIRECTIVE, neitherNonBlockingPolicy}}
static const NamespaceAndName PREVIOUS_DIRECTIVE
Definition: ExternalMediaPlayer.cpp:127
static const NamespaceAndName STARTOVER_DIRECTIVE
Definition: ExternalMediaPlayer.cpp:128
static const NamespaceAndName REWIND_DIRECTIVE
Definition: ExternalMediaPlayer.cpp:129
static const NamespaceAndName UNFAVORITE_DIRECTIVE
Definition: ExternalMediaPlayer.cpp:145
static const NamespaceAndName FASTFORWARD_DIRECTIVE
Definition: ExternalMediaPlayer.cpp:130
static const NamespaceAndName LOGOUT_DIRECTIVE
Definition: ExternalMediaPlayer.cpp:118
static const NamespaceAndName AUTHORIZEDISCOVEREDPLAYERS_DIRECTIVE
Definition: ExternalMediaPlayer.cpp:119
auto audioNonBlockingPolicy
Definition: ExternalMediaPlayer.cpp:272
static const NamespaceAndName PAUSE_DIRECTIVE
Definition: ExternalMediaPlayer.cpp:124
static const NamespaceAndName ADJUSTSEEK_DIRECTIVE
Definition: ExternalMediaPlayer.cpp:141
static const NamespaceAndName PLAY_DIRECTIVE
Definition: ExternalMediaPlayer.cpp:116
static const NamespaceAndName DISABLEREPEAT_DIRECTIVE
Definition: ExternalMediaPlayer.cpp:135
static const NamespaceAndName NEXT_DIRECTIVE
Definition: ExternalMediaPlayer.cpp:126
static const NamespaceAndName ENABLESHUFFLE_DIRECTIVE
Definition: ExternalMediaPlayer.cpp:136
auto neitherNonBlockingPolicy
Definition: ExternalMediaPlayer.cpp:273
static const NamespaceAndName DISABLESHUFFLE_DIRECTIVE
Definition: ExternalMediaPlayer.cpp:137
static const NamespaceAndName LOGIN_DIRECTIVE
Definition: ExternalMediaPlayer.cpp:117
static const NamespaceAndName STOP_DIRECTIVE
Definition: ExternalMediaPlayer.cpp:125
static const NamespaceAndName FAVORITE_DIRECTIVE
Definition: ExternalMediaPlayer.cpp:144
static const NamespaceAndName RESUME_DIRECTIVE
Definition: ExternalMediaPlayer.cpp:123
static const NamespaceAndName SEEK_DIRECTIVE
Definition: ExternalMediaPlayer.cpp:140
static const NamespaceAndName ENABLEREPEAT_DIRECTIVE
Definition: ExternalMediaPlayer.cpp:134
static const NamespaceAndName ENABLEREPEATONE_DIRECTIVE
Definition: ExternalMediaPlayer.cpp:133

◆ g_toggleToRequestType

std::unordered_map<PlaybackToggle, std::pair<RequestType, RequestType> > alexaClientSDK::acsdkExternalMediaPlayer::g_toggleToRequestType
static
Initial value:
= {
{PlaybackToggle::SHUFFLE, std::make_pair(RequestType::ENABLE_SHUFFLE, RequestType::DISABLE_SHUFFLE)},
{PlaybackToggle::LOOP, std::make_pair(RequestType::ENABLE_REPEAT, RequestType::DISABLE_REPEAT)},
{PlaybackToggle::REPEAT, std::make_pair(RequestType::ENABLE_REPEAT_ONE, RequestType::DISABLE_REPEAT_ONE)},
{PlaybackToggle::THUMBS_UP, std::make_pair(RequestType::FAVORITE, RequestType::DESELECT_FAVORITE)},
{PlaybackToggle::THUMBS_DOWN, std::make_pair(RequestType::UNFAVORITE, RequestType::DESELECT_UNFAVORITE)}}
static const char THUMBS_UP
Definition: UserInputManager.cpp:50
const char REPEAT[]
Definition: ExternalMediaAdapterConstants.h:55
const char FAVORITE[]
Definition: ExternalMediaAdapterConstants.h:56
const char SHUFFLE[]
Definition: ExternalMediaAdapterConstants.h:54
static const char LOOP
Definition: UserInputManager.cpp:48
static const char THUMBS_DOWN
Definition: UserInputManager.cpp:51

◆ HEADER_KEY

const std::string alexaClientSDK::acsdkExternalMediaPlayer::HEADER_KEY = "header"
static

The header key.

◆ LOCAL_PLAYER_ID

const char alexaClientSDK::acsdkExternalMediaPlayer::LOCAL_PLAYER_ID[] = "localPlayerId"
static

The localPlayerId key.

◆ LOGIN_DIRECTIVE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::LOGIN_DIRECTIVE {EXTERNALMEDIAPLAYER_NAMESPACE, "Login"}
static

◆ LOGOUT_DIRECTIVE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::LOGOUT_DIRECTIVE {EXTERNALMEDIAPLAYER_NAMESPACE, "Logout"}
static

◆ MAX_FUTURE_OFFSET

const int64_t alexaClientSDK::acsdkExternalMediaPlayer::MAX_FUTURE_OFFSET = 86400000
static

The max relative time in the past that we can seek to in milliseconds(+12 hours in ms).

◆ MAX_PAST_OFFSET

const int64_t alexaClientSDK::acsdkExternalMediaPlayer::MAX_PAST_OFFSET = -86400000
static

The max relative time in the past that we can seek to in milliseconds(-12hours in ms).

◆ METADATA

const char alexaClientSDK::acsdkExternalMediaPlayer::METADATA[] = "metadata"
static

The metadata key.

◆ NAVIGATION_ENUM_MAP

const std::unordered_map<std::string, Navigation> alexaClientSDK::acsdkExternalMediaPlayer::NAVIGATION_ENUM_MAP
static
Initial value:
= {{"DEFAULT", Navigation::DEFAULT},
{"NONE", Navigation::NONE},
{"FOREGROUND", Navigation::FOREGROUND}}
static const std::string NONE
String to identify NONE property value.
Definition: DevicePropertyAggregator.cpp:37

◆ neitherNonBlockingPolicy

auto alexaClientSDK::acsdkExternalMediaPlayer::neitherNonBlockingPolicy = BlockingPolicy(BlockingPolicy::MEDIUMS_NONE, false)

◆ NEXT_DIRECTIVE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::NEXT_DIRECTIVE {PLAYBACKCONTROLLER_NAMESPACE, "Next"}
static

◆ PAUSE_DIRECTIVE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::PAUSE_DIRECTIVE {PLAYBACKCONTROLLER_NAMESPACE, "Pause"}
static

◆ PAYLOAD_KEY

const std::string alexaClientSDK::acsdkExternalMediaPlayer::PAYLOAD_KEY = "payload"
static

The payload key.

◆ PLAY_DIRECTIVE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::PLAY_DIRECTIVE {EXTERNALMEDIAPLAYER_NAMESPACE, "Play"}
static

◆ PLAY_DIRECTIVE_RECEIVED

const std::string alexaClientSDK::acsdkExternalMediaPlayer::PLAY_DIRECTIVE_RECEIVED = "PLAY_DIRECTIVE_RECEIVED"
static

The directive received metric is used in place of 'first bytes' for UPL because pre-buffering may distort the metric

◆ PLAYBACK_STATE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::PLAYBACK_STATE {PLAYBACKSTATEREPORTER_STATE_NAMESPACE, PLAYBACKSTATEREPORTER_NAME}
static

◆ PLAYBACKCONTROLLER_CAPABILITY_INTERFACE_NAME

const std::string alexaClientSDK::acsdkExternalMediaPlayer::PLAYBACKCONTROLLER_CAPABILITY_INTERFACE_NAME = PLAYBACKCONTROLLER_NAMESPACE
static

Alexa.PlaybackController name.

◆ PLAYBACKCONTROLLER_CAPABILITY_INTERFACE_VERSION

const std::string alexaClientSDK::acsdkExternalMediaPlayer::PLAYBACKCONTROLLER_CAPABILITY_INTERFACE_VERSION = "1.0"
static

Alexa.PlaybackController version.

◆ PLAYBACKCONTROLLER_NAMESPACE

const std::string alexaClientSDK::acsdkExternalMediaPlayer::PLAYBACKCONTROLLER_NAMESPACE = "Alexa.PlaybackController"
static

◆ PLAYBACKSTATEREPORTER_CAPABILITY_INTERFACE_NAME

const std::string alexaClientSDK::acsdkExternalMediaPlayer::PLAYBACKSTATEREPORTER_CAPABILITY_INTERFACE_NAME = PLAYBACKSTATEREPORTER_STATE_NAMESPACE
static

Alexa.PlaybackStateReporter name.

◆ PLAYBACKSTATEREPORTER_CAPABILITY_INTERFACE_VERSION

const std::string alexaClientSDK::acsdkExternalMediaPlayer::PLAYBACKSTATEREPORTER_CAPABILITY_INTERFACE_VERSION = "1.0"
static

Alexa.PlaybackStateReporter version.

◆ PLAYBACKSTATEREPORTER_NAME

const std::string alexaClientSDK::acsdkExternalMediaPlayer::PLAYBACKSTATEREPORTER_NAME = "playbackState"
static

◆ PLAYBACKSTATEREPORTER_STATE_NAMESPACE

const std::string alexaClientSDK::acsdkExternalMediaPlayer::PLAYBACKSTATEREPORTER_STATE_NAMESPACE = "Alexa.PlaybackStateReporter"
static

◆ PLAYER_ID_KEY

const std::string alexaClientSDK::acsdkExternalMediaPlayer::PLAYER_ID_KEY = "playerId"
static

The playerId key.

◆ PLAYLISTCONTROLLER_CAPABILITY_INTERFACE_NAME

const std::string alexaClientSDK::acsdkExternalMediaPlayer::PLAYLISTCONTROLLER_CAPABILITY_INTERFACE_NAME = PLAYLISTCONTROLLER_NAMESPACE
static

Alexa.PlaylistController name.

◆ PLAYLISTCONTROLLER_CAPABILITY_INTERFACE_VERSION

const std::string alexaClientSDK::acsdkExternalMediaPlayer::PLAYLISTCONTROLLER_CAPABILITY_INTERFACE_VERSION = "1.0"
static

Alexa.PlaylistController version.

◆ PLAYLISTCONTROLLER_NAMESPACE

const std::string alexaClientSDK::acsdkExternalMediaPlayer::PLAYLISTCONTROLLER_NAMESPACE = "Alexa.PlaylistController"
static

◆ PREVIOUS_DIRECTIVE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::PREVIOUS_DIRECTIVE {PLAYBACKCONTROLLER_NAMESPACE, "Previous"}
static

◆ REPORT_DISCOVERED_PLAYERS

const char alexaClientSDK::acsdkExternalMediaPlayer::REPORT_DISCOVERED_PLAYERS[] = "ReportDiscoveredPlayers"
static

The ReportDiscoveredPlayers Event key.

◆ RESUME_DIRECTIVE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::RESUME_DIRECTIVE {PLAYBACKCONTROLLER_NAMESPACE, "Play"}
static

◆ REWIND_DIRECTIVE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::REWIND_DIRECTIVE {PLAYBACKCONTROLLER_NAMESPACE, "Rewind"}
static

◆ SEEK_DIRECTIVE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::SEEK_DIRECTIVE {SEEKCONTROLLER_NAMESPACE, "SetSeekPosition"}
static

◆ SEEKCONTROLLER_CAPABILITY_INTERFACE_NAME

const std::string alexaClientSDK::acsdkExternalMediaPlayer::SEEKCONTROLLER_CAPABILITY_INTERFACE_NAME = SEEKCONTROLLER_NAMESPACE
static

Alexa.SeekController name.

◆ SEEKCONTROLLER_CAPABILITY_INTERFACE_VERSION

const std::string alexaClientSDK::acsdkExternalMediaPlayer::SEEKCONTROLLER_CAPABILITY_INTERFACE_VERSION = "1.0"
static

Alexa.SeekController version.

◆ SEEKCONTROLLER_NAMESPACE

const std::string alexaClientSDK::acsdkExternalMediaPlayer::SEEKCONTROLLER_NAMESPACE = "Alexa.SeekController"
static

◆ SESSION_STATE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::SESSION_STATE {EXTERNALMEDIAPLAYER_STATE_NAMESPACE, EXTERNALMEDIAPLAYER_NAME}
static

◆ SPI_VERSION_KEY

const char alexaClientSDK::acsdkExternalMediaPlayer::SPI_VERSION_KEY[] = "spiVersion"
static

The spiVersion key.

◆ STARTOVER_DIRECTIVE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::STARTOVER_DIRECTIVE {PLAYBACKCONTROLLER_NAMESPACE, "StartOver"}
static

◆ STOP_DIRECTIVE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::STOP_DIRECTIVE {PLAYBACKCONTROLLER_NAMESPACE, "Stop"}
static

◆ STOP_DIRECTIVE_RECEIVED

const std::string alexaClientSDK::acsdkExternalMediaPlayer::STOP_DIRECTIVE_RECEIVED = "STOP_DIRECTIVE_RECEIVED"
static

The directive received metric is used in place of 'first bytes' for Stop UPL because there are no bytes involved

◆ UNFAVORITE_DIRECTIVE

const NamespaceAndName alexaClientSDK::acsdkExternalMediaPlayer::UNFAVORITE_DIRECTIVE {FAVORITESCONTROLLER_NAMESPACE, "Unfavorite"}
static

◆ VALIDATION_DATA

const char alexaClientSDK::acsdkExternalMediaPlayer::VALIDATION_DATA[] = "validationData"
static

The validationData key.

◆ VALIDATION_METHOD

const char alexaClientSDK::acsdkExternalMediaPlayer::VALIDATION_METHOD[] = "validationMethod"
static

The validationMethod key.

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