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

Namespaces

 test
 

Classes

class  BasicDeviceConnectionRule
 
class  BasicDeviceConnectionRulesProvider
 
class  Bluetooth
 
class  BluetoothEventState
 
class  BluetoothMediaInputTransformer
 
class  BluetoothNotifier
 
class  DeviceConnectionRulesAdapter
 
class  SQLiteBluetoothStorage
 A concrete implementation of BluetoothStorageInterface using SQLite. More...
 

Typedefs

using BluetoothComponent = acsdkManufactory::Component< std::shared_ptr< acsdkBluetoothInterfaces::BluetoothNotifierInterface >, acsdkManufactory::Import< std::shared_ptr< acsdkApplicationAudioPipelineFactoryInterfaces::ApplicationAudioPipelineFactoryInterface > >, acsdkManufactory::Import< std::shared_ptr< acsdkBluetoothInterfaces::BluetoothDeviceConnectionRulesProviderInterface > >, acsdkManufactory::Import< std::shared_ptr< acsdkBluetoothInterfaces::BluetoothStorageInterface > >, acsdkManufactory::Import< std::shared_ptr< acsdkShutdownManagerInterfaces::ShutdownNotifierInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::ContextManagerInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::ExceptionEncounteredSenderInterface > >, acsdkManufactory::Import< acsdkManufactory::Annotated< avsCommon::sdkInterfaces::AudioFocusAnnotation, avsCommon::sdkInterfaces::FocusManagerInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::MessageSenderInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::PlaybackRouterInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceManagerInterface > >, acsdkManufactory::Import< acsdkManufactory::Annotated< avsCommon::sdkInterfaces::endpoints::DefaultEndpointAnnotation, avsCommon::sdkInterfaces::endpoints::EndpointCapabilitiesRegistrarInterface > >, acsdkManufactory::Import< std::shared_ptr< avsCommon::utils::bluetooth::BluetoothEventBus > >, acsdkManufactory::Import< std::shared_ptr< registrationManager::CustomerDataManagerInterface > >>
 
using MediaPlayerState = avsCommon::utils::mediaPlayer::MediaPlayerState
 

Functions

std::string streamingStateToString (Bluetooth::StreamingState state)
 
std::ostream & operator<< (std::ostream &stream, const Bluetooth::StreamingState state)
 
std::string focusTransitionStateToString (Bluetooth::FocusTransitionState state)
 
std::ostream & operator<< (std::ostream &stream, const Bluetooth::FocusTransitionState state)
 
std::string scanningStateToString (Bluetooth::ScanningTransitionState state)
 
std::ostream & operator<< (std::ostream &stream, const Bluetooth::ScanningTransitionState state)
 
BluetoothComponent getComponent ()
 
static std::shared_ptr< avsCommon::avs::CapabilityConfigurationgetBluetoothCapabilityConfiguration ()
 
static std::string truncateWithDefault (const std::string &mac, const std::string &defaultString="XX:XX:XX:XX:XX:XX")
 
static bool supportsAvsProfile (std::shared_ptr< BluetoothDeviceInterface > device, const std::string &avsProfileName)
 
static bool waitOnFuture (std::future< bool > future, std::string description="", std::chrono::milliseconds timeout=DEFAULT_FUTURE_TIMEOUT)
 
static std::string convertToAVSStreamingState (const Bluetooth::StreamingState &state)
 
static bool validateDeviceConnectionRules (std::unordered_set< std::shared_ptr< avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceConnectionRuleInterface >> enabledConnectionRules)
 
static std::string convertToAVSConnectedState (const DeviceState &state)
 
static bool parseDirectivePayload (const std::string &payload, Document *document)
 

Variables

static const constexpr char * BLUETOOTH_MEDIA_PLAYER_NAME = "BluetoothMediaPlayer"
 String to identify the Bluetooth media player to render audio. More...
 
static const std::string TAG {"Bluetooth"}
 String to identify log entries originating from this file. More...
 
static const std::string NAMESPACE = "Bluetooth"
 The Bluetooth interface namespace. More...
 
static const NamespaceAndName BLUETOOTH_STATE {NAMESPACE, "BluetoothState"}
 The Bluetooth state portion of the Context. More...
 
static const NamespaceAndName SCAN_DEVICES {NAMESPACE, "ScanDevices"}
 The ScanDevices directive identifier. More...
 
static const NamespaceAndName SCAN_DEVICES_REPORT {NAMESPACE, "ScanDevicesReport"}
 The ScanDevicesReport event. More...
 
static const NamespaceAndName SCAN_DEVICES_FAILED {NAMESPACE, "ScanDevicesFailed"}
 The ScanDevicesFailed event. More...
 
static const NamespaceAndName ENTER_DISCOVERABLE_MODE {NAMESPACE, "EnterDiscoverableMode"}
 The EnterDiscoverableMode directive identifier. More...
 
static const NamespaceAndName ENTER_DISCOVERABLE_MODE_SUCCEEDED {NAMESPACE, "EnterDiscoverableModeSucceeded"}
 The EnterDiscoverableModeSucceeded event. More...
 
static const NamespaceAndName ENTER_DISCOVERABLE_MODE_FAILED {NAMESPACE, "EnterDiscoverableModeFailed"}
 The EnterDiscoverableModeFailed event. More...
 
static const NamespaceAndName EXIT_DISCOVERABLE_MODE {NAMESPACE, "ExitDiscoverableMode"}
 The ExitDiscoverableMode directive identifier. More...
 
static const NamespaceAndName PAIR_DEVICES_SUCCEEDED {NAMESPACE, "PairDevicesSucceeded"}
 The PairDevicesSucceeded event. More...
 
static const NamespaceAndName PAIR_DEVICES_FAILED {NAMESPACE, "PairDevicesFailed"}
 The PairDevicesFailed event. More...
 
static const NamespaceAndName PAIR_DEVICES {NAMESPACE, "PairDevices"}
 The PairDevices directive identifier. More...
 
static const NamespaceAndName UNPAIR_DEVICES {NAMESPACE, "UnpairDevices"}
 The UnpairDevices directive identifier. More...
 
static const NamespaceAndName UNPAIR_DEVICES_SUCCEEDED {NAMESPACE, "UnpairDevicesSucceeded"}
 The UnpairDevicesSucceeded event. More...
 
static const NamespaceAndName UNPAIR_DEVICES_FAILED {NAMESPACE, "UnpairDevicesFailed"}
 The UnpairDevicesFailed event. More...
 
static const NamespaceAndName SET_DEVICE_CATEGORIES {NAMESPACE, "SetDeviceCategories"}
 The SetDeviceCategories directive identifier. More...
 
static const NamespaceAndName SET_DEVICE_CATEGORIES_SUCCEEDED {NAMESPACE, "SetDeviceCategoriesSucceeded"}
 The SetDeviceCategoriesSucceeded event. More...
 
static const NamespaceAndName SET_DEVICE_CATEGORIES_FAILED {NAMESPACE, "SetDeviceCategoriesFailed"}
 The SetDeviceCategoriesFailed event. More...
 
static const NamespaceAndName CONNECT_BY_DEVICE_IDS {NAMESPACE, "ConnectByDeviceIds"}
 The ConnectByDeviceIds directive identifier. More...
 
static const NamespaceAndName CONNECT_BY_DEVICE_IDS_SUCCEEDED {NAMESPACE, "ConnectByDeviceIdsSucceeded"}
 The ConnectByDeviceIdsSucceeded event. More...
 
static const NamespaceAndName CONNECT_BY_DEVICE_IDS_FAILED {NAMESPACE, "ConnectByDeviceIdsFailed"}
 The ConnectByDeviceIdsFailed event. More...
 
static const NamespaceAndName CONNECT_BY_PROFILE {NAMESPACE, "ConnectByProfile"}
 The ConnectByProfile directive identifier. More...
 
static const NamespaceAndName CONNECT_BY_PROFILE_SUCCEEDED {NAMESPACE, "ConnectByProfileSucceeded"}
 The ConnectByProfileSucceeded event. More...
 
static const NamespaceAndName CONNECT_BY_PROFILE_FAILED {NAMESPACE, "ConnectByProfileFailed"}
 The ConnectByProfileFailed event. More...
 
static const NamespaceAndName DISCONNECT_DEVICES {NAMESPACE, "DisconnectDevices"}
 The DisconnectDevices directive identifier. More...
 
static const NamespaceAndName DISCONNECT_DEVICES_SUCCEEDED {NAMESPACE, "DisconnectDevicesSucceeded"}
 The DisconnectDevicesSucceeded event. More...
 
static const NamespaceAndName DISCONNECT_DEVICES_FAILED {NAMESPACE, "DisconnectDevicesFailed"}
 The DisconnectDevicesFailed event. More...
 
static const NamespaceAndName PLAY {NAMESPACE, "Play"}
 The Play directive identifier. More...
 
static const NamespaceAndName MEDIA_CONTROL_PLAY_SUCCEEDED {NAMESPACE, "MediaControlPlaySucceeded"}
 The MediaControlPlaySucceeded event. More...
 
static const NamespaceAndName MEDIA_CONTROL_PLAY_FAILED {NAMESPACE, "MediaControlPlayFailed"}
 The MediaControlPlayFailed event. More...
 
static const NamespaceAndName STOP {NAMESPACE, "Stop"}
 The Stop directive identifier. More...
 
static const NamespaceAndName MEDIA_CONTROL_STOP_SUCCEEDED {NAMESPACE, "MediaControlStopSucceeded"}
 The MediaControlStopSucceeded event. More...
 
static const NamespaceAndName MEDIA_CONTROL_STOP_FAILED {NAMESPACE, "MediaControlStopFailed"}
 The MediaControlStopFailed event. More...
 
static const NamespaceAndName NEXT {NAMESPACE, "Next"}
 The Next directive identifier. More...
 
static const NamespaceAndName MEDIA_CONTROL_NEXT_SUCCEEDED {NAMESPACE, "MediaControlNextSucceeded"}
 The MediaControlNextSucceeded event. More...
 
static const NamespaceAndName MEDIA_CONTROL_NEXT_FAILED {NAMESPACE, "MediaControlNextFailed"}
 The MediaControlNextFailed event. More...
 
static const NamespaceAndName PREVIOUS {NAMESPACE, "Previous"}
 The Previous directive identifier. More...
 
static const NamespaceAndName MEDIA_CONTROL_PREVIOUS_SUCCEEDED {NAMESPACE, "MediaControlPreviousSucceeded"}
 The MediaControlPreviousSucceeded event. More...
 
static const NamespaceAndName MEDIA_CONTROL_PREVIOUS_FAILED {NAMESPACE, "MediaControlPreviousFailed"}
 The MediaControlPreviousFailed event. More...
 
static const NamespaceAndName STREAMING_STARTED {NAMESPACE, "StreamingStarted"}
 The StreamingStarted event. More...
 
static const NamespaceAndName STREAMING_ENDED {NAMESPACE, "StreamingEnded"}
 The StreamingEnded event. More...
 
static const std::string CHANNEL_NAME = FocusManagerInterface::CONTENT_CHANNEL_NAME
 The Channel name. More...
 
static const std::string ACTIVITY_ID = "Bluetooth"
 Activity ID for use by FocusManager. More...
 
static const unsigned int MAX_CONNECT_BY_PROFILE_COUNT = 2
 Max number of paired devices connect by profile should atempt connect to. More...
 
static const std::chrono::milliseconds INITIALIZE_SOURCE_DELAY {1000}
 
static const std::chrono::seconds DEFAULT_FUTURE_TIMEOUT {45}
 
static const std::chrono::minutes TRANSIENT_FOCUS_DURATION {2}
 
static const char ALEXA_DEVICE_NAME_KEY [] = "alexaDevice"
 A key for the alexa (host) device. More...
 
static const char DEVICE_KEY [] = "device"
 A key for a device. More...
 
static const char DEVICES_KEY [] = "devices"
 A key for a devices. More...
 
static const char DISCOVERED_DEVICES_KEY [] = "discoveredDevices"
 A key for discovered devices. More...
 
static const char HAS_MORE_KEY [] = "hasMore"
 A key to indicate if more devices are to be reported. More...
 
static const std::string EMPTY_PAYLOAD = "{}"
 An empty payload. More...
 
static const char FRIENDLY_NAME_KEY [] = "friendlyName"
 The friendly name. More...
 
static const char NAME_KEY [] = "name"
 The name key for a profile. More...
 
static const char VERSION_KEY [] = "version"
 The version key for a profile. More...
 
static const char PAIRED_DEVICES_KEY [] = "pairedDevices"
 Identifying paired devices. More...
 
static const char PROFILE_KEY [] = "profile"
 Identifying a profile. More...
 
static const char PROFILES_KEY [] = "profiles"
 Identifying an array of profiles. More...
 
static const char PROFILE_NAME_KEY [] = "profileName"
 Identifying a profile name. More...
 
static const char REQUESTER_KEY [] = "requester"
 Identifying the requester of the operation. More...
 
static const char STREAMING_KEY [] = "streaming"
 A key indicating streaming status. More...
 
static const char STATE_KEY [] = "state"
 A key indicating state. More...
 
static const char SUPPORTED_PROFILES_KEY [] = "supportedProfiles"
 Indicates the supported profiles. More...
 
static const char TRUNCATED_MAC_ADDRESS_KEY [] = "truncatedMacAddress"
 The truncated mac address. More...
 
static const char UNIQUE_DEVICE_ID_KEY [] = "uniqueDeviceId"
 The uuid generated to identify a device. More...
 
static const char METADATA_KEY [] = "metadata"
 The metadata. More...
 
static const char VENDOR_ID_KEY [] = "vendorId"
 The Vendor Id. More...
 
static const char PRODUCT_ID_KEY [] = "productId"
 The Product Id. More...
 
static const char CLASS_OF_DEVICE_KEY [] = "classOfDevice"
 The Class of Device. More...
 
static const char VENDOR_DEVICE_SIG_ID_KEY [] = "vendorDeviceSigId"
 The Vendor Device SigID. More...
 
static const char VENDOR_DEVICE_ID_KEY [] = "vendorDeviceId"
 The Vendor Device ID. More...
 
static const char DEVICE_CATEGORY_KEY [] = "deviceCategory"
 Identifying a device category. More...
 
static const char CONNECTION_STATE_KEY [] = "connectionState"
 Identifying the connection status of a device. More...
 
static const std::string AVS_A2DP_SOURCE = "A2DP-SOURCE"
 A2DP Source. More...
 
static const std::string AVS_A2DP_SINK = "A2DP-SINK"
 A2DP Sink. More...
 
static const std::string AVS_A2DP = "A2DP"
 General A2DP. More...
 
static const std::string AVS_AVRCP = "AVRCP"
 
static const std::string AVS_HFP = "HFP"
 HFP. More...
 
static const std::string AVS_HID = "HID"
 HID. More...
 
static const std::string AVS_SPP = "SPP"
 SPP. More...
 
static const std::map< std::string, std::string > AVS_PROFILE_MAP
 A mapping of Bluetooth service UUIDs to AVS profile identifiers. More...
 
static const std::map< DeviceCategory, std::unordered_set< std::string > > DEVICECATEGORY_PROFILES_MAP
 
static const std::string BLUETOOTH_CAPABILITY_INTERFACE_TYPE = "AlexaInterface"
 
static const std::string BLUETOOTH_CAPABILITY_INTERFACE_NAME = "Bluetooth"
 Bluetooth interface name. More...
 
static const std::string BLUETOOTH_CAPABILITY_INTERFACE_VERSION = "2.0"
 Bluetooth interface version. Version 1.0 works with StreamingStarted and StreamingEnded. More...
 
static const std::string BLUETOOTH_CAPABILITY_CONFIGURATION_VALUE
 Bluetooth configurations value. More...
 
static const std::string TAG {"BluetoothMediaInputTransformer"}
 String to identify log entries originating from this file. More...
 
static const std::string BLUETOOTH_CONFIGURATION_ROOT_KEY = "bluetooth"
 Configuration root. More...
 
static const std::string BLUETOOTH_DB_FILE_PATH_KEY = "databaseFilePath"
 The node identifying the database. More...
 
static const std::string UUID_TABLE_NAME = "uuidMapping"
 Table name. More...
 
static const std::string COLUMN_UUID = "uuid"
 The UUID column. More...
 
static const std::string COLUMN_MAC = "mac"
 The MAC address column. More...
 
static const std::string COLUMN_CATEGORY = "category"
 The Category column. More...
 
const std::string SQL_CREATE_UUID_TABLE_QUERY
 The SQL string to create a table. More...
 

Typedef Documentation

◆ BluetoothComponent

using alexaClientSDK::acsdkBluetooth::BluetoothComponent = typedef acsdkManufactory::Component< std::shared_ptr<acsdkBluetoothInterfaces::BluetoothNotifierInterface>, acsdkManufactory::Import< std::shared_ptr<acsdkApplicationAudioPipelineFactoryInterfaces::ApplicationAudioPipelineFactoryInterface> >, acsdkManufactory::Import< std::shared_ptr<acsdkBluetoothInterfaces::BluetoothDeviceConnectionRulesProviderInterface> >, acsdkManufactory::Import<std::shared_ptr<acsdkBluetoothInterfaces::BluetoothStorageInterface> >, acsdkManufactory::Import<std::shared_ptr<acsdkShutdownManagerInterfaces::ShutdownNotifierInterface> >, acsdkManufactory::Import<std::shared_ptr<avsCommon::sdkInterfaces::ContextManagerInterface> >, acsdkManufactory::Import<std::shared_ptr<avsCommon::sdkInterfaces::ExceptionEncounteredSenderInterface> >, acsdkManufactory::Import<acsdkManufactory::Annotated< avsCommon::sdkInterfaces::AudioFocusAnnotation, avsCommon::sdkInterfaces::FocusManagerInterface> >, acsdkManufactory::Import<std::shared_ptr<avsCommon::sdkInterfaces::MessageSenderInterface> >, acsdkManufactory::Import<std::shared_ptr<avsCommon::sdkInterfaces::PlaybackRouterInterface> >, acsdkManufactory::Import<std::shared_ptr<avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceManagerInterface> >, acsdkManufactory::Import<acsdkManufactory::Annotated< avsCommon::sdkInterfaces::endpoints::DefaultEndpointAnnotation, avsCommon::sdkInterfaces::endpoints::EndpointCapabilitiesRegistrarInterface> >, acsdkManufactory::Import<std::shared_ptr<avsCommon::utils::bluetooth::BluetoothEventBus> >, acsdkManufactory::Import<std::shared_ptr<registrationManager::CustomerDataManagerInterface> >>

Manufactory Component definition for the BluetoothNotifierInterface.

◆ MediaPlayerState

Function Documentation

◆ convertToAVSConnectedState()

static std::string alexaClientSDK::acsdkBluetooth::convertToAVSConnectedState ( const DeviceState state)
static

Utility function to squash DeviceState into the connection state that AVS has defined.

Parameters
stateThe DeviceState
Returns
A string representing the connection state.

◆ convertToAVSStreamingState()

static std::string alexaClientSDK::acsdkBluetooth::convertToAVSStreamingState ( const Bluetooth::StreamingState state)
static

Utility function to squash StreamingState into the streaming states that AVS has defined.

Parameters
stateThe StreamingState.
Returns
A string representing the streaming state.

◆ focusTransitionStateToString()

std::string alexaClientSDK::acsdkBluetooth::focusTransitionStateToString ( Bluetooth::FocusTransitionState  state)
inline

Converts an enum FocusTransitionState to a string.

Parameters
stateThe FocusTransitionState.
Returns
The string form of the enum.

◆ getBluetoothCapabilityConfiguration()

static std::shared_ptr<avsCommon::avs::CapabilityConfiguration> alexaClientSDK::acsdkBluetooth::getBluetoothCapabilityConfiguration ( )
static

Creates the Bluetooth capability configuration.

Returns
The Bluetooth capability configuration.

◆ getComponent()

BluetoothComponent alexaClientSDK::acsdkBluetooth::getComponent ( )

Get the Manufactory component for creating an instance of BluetoothNotifierInterface.

Returns
The Manufactory component for creating an instance of BluetoothNotifierInterface.

◆ operator<<() [1/3]

std::ostream& alexaClientSDK::acsdkBluetooth::operator<< ( std::ostream &  stream,
const Bluetooth::StreamingState  state 
)
inline

Overload for the StreamingState enum. This will write the StreamingState as a string to the provided stream.

Parameters
streamAn ostream to send the StreamingState as a string.
stateThe StreamingState to convert.
Returns
The stream.

◆ operator<<() [2/3]

std::ostream& alexaClientSDK::acsdkBluetooth::operator<< ( std::ostream &  stream,
const Bluetooth::FocusTransitionState  state 
)
inline

Overload for the FocusTransitionState enum. This will write the FocusTransitionState as a string to the provided stream.

Parameters
streamAn ostream to send the FocusTransitionState as a string.
stateThe FocusTransitionState to convert.
Returns
The stream.

◆ operator<<() [3/3]

std::ostream& alexaClientSDK::acsdkBluetooth::operator<< ( std::ostream &  stream,
const Bluetooth::ScanningTransitionState  state 
)
inline

Overload for the ScanningTransitionState enum. This will write the ScanningTransitionState as a string to the provided stream.

Parameters
streamAn ostream to send the ScanningTransitionState as a string.
stateThe ScanningTransitionState to convert.
Returns
The stream.

◆ parseDirectivePayload()

static bool alexaClientSDK::acsdkBluetooth::parseDirectivePayload ( const std::string &  payload,
Document *  document 
)
static

◆ scanningStateToString()

std::string alexaClientSDK::acsdkBluetooth::scanningStateToString ( Bluetooth::ScanningTransitionState  state)
inline

Converts an enum ScanningTransitionState to a string.

Parameters
stateThe ScanningTransitionState.
Returns
The string form of the enum.

◆ streamingStateToString()

std::string alexaClientSDK::acsdkBluetooth::streamingStateToString ( Bluetooth::StreamingState  state)
inline

Converts an enum to a string.

Parameters
stateThe StreamingState.
Returns
The string form of the enum.

◆ supportsAvsProfile()

static bool alexaClientSDK::acsdkBluetooth::supportsAvsProfile ( std::shared_ptr< BluetoothDeviceInterface device,
const std::string &  avsProfileName 
)
static

Utility function to evaluate whether a device supports a specific AVS profile.

Parameters
deviceThe device.
avsProfileNameThe AVS Profile to match against.
Abool indicating whether the device supports the specific profile.
Returns
A bool indicating success.

◆ truncateWithDefault()

static std::string alexaClientSDK::acsdkBluetooth::truncateWithDefault ( const std::string &  mac,
const std::string &  defaultString = "XX:XX:XX:XX:XX:XX" 
)
static

Utility function to truncate a MAC address.

Parameters
macThe mac address.
defaultStringThe default truncated mac address to return if the mac address is invalid.
Returns
The truncated mac address.

◆ validateDeviceConnectionRules()

static bool alexaClientSDK::acsdkBluetooth::validateDeviceConnectionRules ( std::unordered_set< std::shared_ptr< avsCommon::sdkInterfaces::bluetooth::BluetoothDeviceConnectionRuleInterface >>  enabledConnectionRules)
static

Utility function to evaluate whether connection rules are valid. Device categories defined in the BasicDeviceConnectionRule are enabled by the Bluetoooth CapabilityAgent by default and are not allowed to be overwritten.

Parameters
enabledConnectionRulesa set of device connection rules defined by customers.
Returns
A bool indicating success.

◆ waitOnFuture()

static bool alexaClientSDK::acsdkBluetooth::waitOnFuture ( std::future< bool >  future,
std::string  description = "",
std::chrono::milliseconds  timeout = DEFAULT_FUTURE_TIMEOUT 
)
static

Wait for a a future function to be resolved.

Parameters
futureThe future
descriptionThe desription of the future function.
timeoutThe timeout given to the future.
Returns
A bool indicating the future success.

Variable Documentation

◆ ACTIVITY_ID

const std::string alexaClientSDK::acsdkBluetooth::ACTIVITY_ID = "Bluetooth"
static

Activity ID for use by FocusManager.

◆ ALEXA_DEVICE_NAME_KEY

const char alexaClientSDK::acsdkBluetooth::ALEXA_DEVICE_NAME_KEY[] = "alexaDevice"
static

A key for the alexa (host) device.

◆ AVS_A2DP

const std::string alexaClientSDK::acsdkBluetooth::AVS_A2DP = "A2DP"
static

General A2DP.

◆ AVS_A2DP_SINK

const std::string alexaClientSDK::acsdkBluetooth::AVS_A2DP_SINK = "A2DP-SINK"
static

A2DP Sink.

◆ AVS_A2DP_SOURCE

const std::string alexaClientSDK::acsdkBluetooth::AVS_A2DP_SOURCE = "A2DP-SOURCE"
static

A2DP Source.

◆ AVS_AVRCP

const std::string alexaClientSDK::acsdkBluetooth::AVS_AVRCP = "AVRCP"
static

AVS identifies this as just AVRCP. It technically refers to AVRCPTarget, since the presence of this profile will dictate whether AVS will send down Media control directives.

◆ AVS_HFP

const std::string alexaClientSDK::acsdkBluetooth::AVS_HFP = "HFP"
static

HFP.

◆ AVS_HID

const std::string alexaClientSDK::acsdkBluetooth::AVS_HID = "HID"
static

HID.

◆ AVS_PROFILE_MAP

const std::map<std::string, std::string> alexaClientSDK::acsdkBluetooth::AVS_PROFILE_MAP
static
Initial value:
{
{std::string(A2DPSourceInterface::UUID), AVS_A2DP_SOURCE},
{std::string(A2DPSinkInterface::UUID), AVS_A2DP_SINK},
{std::string(AVRCPTargetInterface::UUID), AVS_AVRCP},
{std::string(HFPInterface::UUID), AVS_HFP},
{std::string(HIDInterface::UUID), AVS_HID},
{std::string(SPPInterface::UUID), AVS_SPP}}
static const std::string AVS_A2DP_SINK
A2DP Sink.
Definition: Bluetooth.cpp:306
static const std::string AVS_HFP
HFP.
Definition: Bluetooth.cpp:319
static const std::string AVS_AVRCP
Definition: Bluetooth.cpp:316
static const std::string AVS_A2DP_SOURCE
A2DP Source.
Definition: Bluetooth.cpp:303
static const std::string AVS_SPP
SPP.
Definition: Bluetooth.cpp:325
static const std::string AVS_HID
HID.
Definition: Bluetooth.cpp:322

A mapping of Bluetooth service UUIDs to AVS profile identifiers.

◆ AVS_SPP

const std::string alexaClientSDK::acsdkBluetooth::AVS_SPP = "SPP"
static

SPP.

◆ BLUETOOTH_CAPABILITY_CONFIGURATION_VALUE

const std::string alexaClientSDK::acsdkBluetooth::BLUETOOTH_CAPABILITY_CONFIGURATION_VALUE
static
Initial value:
= R"(
{
"profiles": [
"AVRCP",
"A2DP_SINK",
"A2DP_SOURCE"
]
}
)"

Bluetooth configurations value.

◆ BLUETOOTH_CAPABILITY_INTERFACE_NAME

const std::string alexaClientSDK::acsdkBluetooth::BLUETOOTH_CAPABILITY_INTERFACE_NAME = "Bluetooth"
static

Bluetooth interface name.

◆ BLUETOOTH_CAPABILITY_INTERFACE_TYPE

const std::string alexaClientSDK::acsdkBluetooth::BLUETOOTH_CAPABILITY_INTERFACE_TYPE = "AlexaInterface"
static

Bluetooth capability constants Bluetooth interface type

◆ BLUETOOTH_CAPABILITY_INTERFACE_VERSION

const std::string alexaClientSDK::acsdkBluetooth::BLUETOOTH_CAPABILITY_INTERFACE_VERSION = "2.0"
static

Bluetooth interface version. Version 1.0 works with StreamingStarted and StreamingEnded.

◆ BLUETOOTH_CONFIGURATION_ROOT_KEY

const std::string alexaClientSDK::acsdkBluetooth::BLUETOOTH_CONFIGURATION_ROOT_KEY = "bluetooth"
static

Configuration root.

◆ BLUETOOTH_DB_FILE_PATH_KEY

const std::string alexaClientSDK::acsdkBluetooth::BLUETOOTH_DB_FILE_PATH_KEY = "databaseFilePath"
static

The node identifying the database.

◆ BLUETOOTH_MEDIA_PLAYER_NAME

const constexpr char* alexaClientSDK::acsdkBluetooth::BLUETOOTH_MEDIA_PLAYER_NAME = "BluetoothMediaPlayer"
static

String to identify the Bluetooth media player to render audio.

◆ BLUETOOTH_STATE

const NamespaceAndName alexaClientSDK::acsdkBluetooth::BLUETOOTH_STATE {NAMESPACE, "BluetoothState"}
static

The Bluetooth state portion of the Context.

◆ CHANNEL_NAME

const std::string alexaClientSDK::acsdkBluetooth::CHANNEL_NAME = FocusManagerInterface::CONTENT_CHANNEL_NAME
static

The Channel name.

◆ CLASS_OF_DEVICE_KEY

const char alexaClientSDK::acsdkBluetooth::CLASS_OF_DEVICE_KEY[] = "classOfDevice"
static

The Class of Device.

◆ COLUMN_CATEGORY

const std::string alexaClientSDK::acsdkBluetooth::COLUMN_CATEGORY = "category"
static

The Category column.

◆ COLUMN_MAC

const std::string alexaClientSDK::acsdkBluetooth::COLUMN_MAC = "mac"
static

The MAC address column.

◆ COLUMN_UUID

const std::string alexaClientSDK::acsdkBluetooth::COLUMN_UUID = "uuid"
static

The UUID column.

◆ CONNECT_BY_DEVICE_IDS

const NamespaceAndName alexaClientSDK::acsdkBluetooth::CONNECT_BY_DEVICE_IDS {NAMESPACE, "ConnectByDeviceIds"}
static

The ConnectByDeviceIds directive identifier.

◆ CONNECT_BY_DEVICE_IDS_FAILED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::CONNECT_BY_DEVICE_IDS_FAILED {NAMESPACE, "ConnectByDeviceIdsFailed"}
static

The ConnectByDeviceIdsFailed event.

◆ CONNECT_BY_DEVICE_IDS_SUCCEEDED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::CONNECT_BY_DEVICE_IDS_SUCCEEDED {NAMESPACE, "ConnectByDeviceIdsSucceeded"}
static

The ConnectByDeviceIdsSucceeded event.

◆ CONNECT_BY_PROFILE

const NamespaceAndName alexaClientSDK::acsdkBluetooth::CONNECT_BY_PROFILE {NAMESPACE, "ConnectByProfile"}
static

The ConnectByProfile directive identifier.

◆ CONNECT_BY_PROFILE_FAILED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::CONNECT_BY_PROFILE_FAILED {NAMESPACE, "ConnectByProfileFailed"}
static

The ConnectByProfileFailed event.

◆ CONNECT_BY_PROFILE_SUCCEEDED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::CONNECT_BY_PROFILE_SUCCEEDED {NAMESPACE, "ConnectByProfileSucceeded"}
static

The ConnectByProfileSucceeded event.

◆ CONNECTION_STATE_KEY

const char alexaClientSDK::acsdkBluetooth::CONNECTION_STATE_KEY[] = "connectionState"
static

Identifying the connection status of a device.

◆ DEFAULT_FUTURE_TIMEOUT

const std::chrono::seconds alexaClientSDK::acsdkBluetooth::DEFAULT_FUTURE_TIMEOUT {45}
static

The maximum about of time to block on a future from the Bluetooth implementation before it should be rejected.

◆ DEVICE_CATEGORY_KEY

const char alexaClientSDK::acsdkBluetooth::DEVICE_CATEGORY_KEY[] = "deviceCategory"
static

Identifying a device category.

◆ DEVICE_KEY

const char alexaClientSDK::acsdkBluetooth::DEVICE_KEY[] = "device"
static

A key for a device.

◆ DEVICECATEGORY_PROFILES_MAP

const std::map<DeviceCategory, std::unordered_set<std::string> > alexaClientSDK::acsdkBluetooth::DEVICECATEGORY_PROFILES_MAP
static
Initial value:
{
{DeviceCategory::REMOTE_CONTROL, {std::string(SPPInterface::UUID), std::string(HIDInterface::UUID)}},
{DeviceCategory::GADGET, {std::string(SPPInterface::UUID), std::string(HIDInterface::UUID)}}}

A mapping of DeviceCategory to its dependent service UUIDs. List all necessary profiles needed for a device with the following DeviceCategory: 1)DeviceCategory::REMOTE_CONTROL 2)DeviceCategory::GADGET All other categories are already enforced to have correct dependent profiles by BasicDeviceConnectionRule.

◆ DEVICES_KEY

const char alexaClientSDK::acsdkBluetooth::DEVICES_KEY[] = "devices"
static

A key for a devices.

◆ DISCONNECT_DEVICES

const NamespaceAndName alexaClientSDK::acsdkBluetooth::DISCONNECT_DEVICES {NAMESPACE, "DisconnectDevices"}
static

The DisconnectDevices directive identifier.

◆ DISCONNECT_DEVICES_FAILED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::DISCONNECT_DEVICES_FAILED {NAMESPACE, "DisconnectDevicesFailed"}
static

The DisconnectDevicesFailed event.

◆ DISCONNECT_DEVICES_SUCCEEDED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::DISCONNECT_DEVICES_SUCCEEDED {NAMESPACE, "DisconnectDevicesSucceeded"}
static

The DisconnectDevicesSucceeded event.

◆ DISCOVERED_DEVICES_KEY

const char alexaClientSDK::acsdkBluetooth::DISCOVERED_DEVICES_KEY[] = "discoveredDevices"
static

A key for discovered devices.

◆ EMPTY_PAYLOAD

const std::string alexaClientSDK::acsdkBluetooth::EMPTY_PAYLOAD = "{}"
static

An empty payload.

◆ ENTER_DISCOVERABLE_MODE

const NamespaceAndName alexaClientSDK::acsdkBluetooth::ENTER_DISCOVERABLE_MODE {NAMESPACE, "EnterDiscoverableMode"}
static

The EnterDiscoverableMode directive identifier.

◆ ENTER_DISCOVERABLE_MODE_FAILED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::ENTER_DISCOVERABLE_MODE_FAILED {NAMESPACE, "EnterDiscoverableModeFailed"}
static

The EnterDiscoverableModeFailed event.

◆ ENTER_DISCOVERABLE_MODE_SUCCEEDED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::ENTER_DISCOVERABLE_MODE_SUCCEEDED {NAMESPACE, "EnterDiscoverableModeSucceeded"}
static

The EnterDiscoverableModeSucceeded event.

◆ EXIT_DISCOVERABLE_MODE

const NamespaceAndName alexaClientSDK::acsdkBluetooth::EXIT_DISCOVERABLE_MODE {NAMESPACE, "ExitDiscoverableMode"}
static

The ExitDiscoverableMode directive identifier.

◆ FRIENDLY_NAME_KEY

const char alexaClientSDK::acsdkBluetooth::FRIENDLY_NAME_KEY[] = "friendlyName"
static

The friendly name.

◆ HAS_MORE_KEY

const char alexaClientSDK::acsdkBluetooth::HAS_MORE_KEY[] = "hasMore"
static

A key to indicate if more devices are to be reported.

◆ INITIALIZE_SOURCE_DELAY

const std::chrono::milliseconds alexaClientSDK::acsdkBluetooth::INITIALIZE_SOURCE_DELAY {1000}
static

We get the stream faster than a peer device can process an AVRCP command (for example NEXT/PAUSE). Wait a bit before we get the stream so we don't get any buffers from before the command was processed.

◆ MAX_CONNECT_BY_PROFILE_COUNT

const unsigned int alexaClientSDK::acsdkBluetooth::MAX_CONNECT_BY_PROFILE_COUNT = 2
static

Max number of paired devices connect by profile should atempt connect to.

◆ MEDIA_CONTROL_NEXT_FAILED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::MEDIA_CONTROL_NEXT_FAILED {NAMESPACE, "MediaControlNextFailed"}
static

The MediaControlNextFailed event.

◆ MEDIA_CONTROL_NEXT_SUCCEEDED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::MEDIA_CONTROL_NEXT_SUCCEEDED {NAMESPACE, "MediaControlNextSucceeded"}
static

The MediaControlNextSucceeded event.

◆ MEDIA_CONTROL_PLAY_FAILED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::MEDIA_CONTROL_PLAY_FAILED {NAMESPACE, "MediaControlPlayFailed"}
static

The MediaControlPlayFailed event.

◆ MEDIA_CONTROL_PLAY_SUCCEEDED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::MEDIA_CONTROL_PLAY_SUCCEEDED {NAMESPACE, "MediaControlPlaySucceeded"}
static

The MediaControlPlaySucceeded event.

◆ MEDIA_CONTROL_PREVIOUS_FAILED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::MEDIA_CONTROL_PREVIOUS_FAILED {NAMESPACE, "MediaControlPreviousFailed"}
static

The MediaControlPreviousFailed event.

◆ MEDIA_CONTROL_PREVIOUS_SUCCEEDED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::MEDIA_CONTROL_PREVIOUS_SUCCEEDED {NAMESPACE, "MediaControlPreviousSucceeded"}
static

The MediaControlPreviousSucceeded event.

◆ MEDIA_CONTROL_STOP_FAILED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::MEDIA_CONTROL_STOP_FAILED {NAMESPACE, "MediaControlStopFailed"}
static

The MediaControlStopFailed event.

◆ MEDIA_CONTROL_STOP_SUCCEEDED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::MEDIA_CONTROL_STOP_SUCCEEDED {NAMESPACE, "MediaControlStopSucceeded"}
static

The MediaControlStopSucceeded event.

◆ METADATA_KEY

const char alexaClientSDK::acsdkBluetooth::METADATA_KEY[] = "metadata"
static

The metadata.

◆ NAME_KEY

const char alexaClientSDK::acsdkBluetooth::NAME_KEY[] = "name"
static

The name key for a profile.

◆ NAMESPACE

const std::string alexaClientSDK::acsdkBluetooth::NAMESPACE = "Bluetooth"
static

The Bluetooth interface namespace.

◆ NEXT

const NamespaceAndName alexaClientSDK::acsdkBluetooth::NEXT {NAMESPACE, "Next"}
static

The Next directive identifier.

◆ PAIR_DEVICES

const NamespaceAndName alexaClientSDK::acsdkBluetooth::PAIR_DEVICES {NAMESPACE, "PairDevices"}
static

The PairDevices directive identifier.

◆ PAIR_DEVICES_FAILED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::PAIR_DEVICES_FAILED {NAMESPACE, "PairDevicesFailed"}
static

The PairDevicesFailed event.

◆ PAIR_DEVICES_SUCCEEDED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::PAIR_DEVICES_SUCCEEDED {NAMESPACE, "PairDevicesSucceeded"}
static

The PairDevicesSucceeded event.

◆ PAIRED_DEVICES_KEY

const char alexaClientSDK::acsdkBluetooth::PAIRED_DEVICES_KEY[] = "pairedDevices"
static

Identifying paired devices.

◆ PLAY

const NamespaceAndName alexaClientSDK::acsdkBluetooth::PLAY {NAMESPACE, "Play"}
static

The Play directive identifier.

◆ PREVIOUS

const NamespaceAndName alexaClientSDK::acsdkBluetooth::PREVIOUS {NAMESPACE, "Previous"}
static

The Previous directive identifier.

◆ PRODUCT_ID_KEY

const char alexaClientSDK::acsdkBluetooth::PRODUCT_ID_KEY[] = "productId"
static

The Product Id.

◆ PROFILE_KEY

const char alexaClientSDK::acsdkBluetooth::PROFILE_KEY[] = "profile"
static

Identifying a profile.

◆ PROFILE_NAME_KEY

const char alexaClientSDK::acsdkBluetooth::PROFILE_NAME_KEY[] = "profileName"
static

Identifying a profile name.

◆ PROFILES_KEY

const char alexaClientSDK::acsdkBluetooth::PROFILES_KEY[] = "profiles"
static

Identifying an array of profiles.

◆ REQUESTER_KEY

const char alexaClientSDK::acsdkBluetooth::REQUESTER_KEY[] = "requester"
static

Identifying the requester of the operation.

◆ SCAN_DEVICES

const NamespaceAndName alexaClientSDK::acsdkBluetooth::SCAN_DEVICES {NAMESPACE, "ScanDevices"}
static

The ScanDevices directive identifier.

◆ SCAN_DEVICES_FAILED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::SCAN_DEVICES_FAILED {NAMESPACE, "ScanDevicesFailed"}
static

The ScanDevicesFailed event.

◆ SCAN_DEVICES_REPORT

const NamespaceAndName alexaClientSDK::acsdkBluetooth::SCAN_DEVICES_REPORT {NAMESPACE, "ScanDevicesReport"}
static

The ScanDevicesReport event.

◆ SET_DEVICE_CATEGORIES

const NamespaceAndName alexaClientSDK::acsdkBluetooth::SET_DEVICE_CATEGORIES {NAMESPACE, "SetDeviceCategories"}
static

The SetDeviceCategories directive identifier.

◆ SET_DEVICE_CATEGORIES_FAILED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::SET_DEVICE_CATEGORIES_FAILED {NAMESPACE, "SetDeviceCategoriesFailed"}
static

The SetDeviceCategoriesFailed event.

◆ SET_DEVICE_CATEGORIES_SUCCEEDED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::SET_DEVICE_CATEGORIES_SUCCEEDED {NAMESPACE, "SetDeviceCategoriesSucceeded"}
static

The SetDeviceCategoriesSucceeded event.

◆ SQL_CREATE_UUID_TABLE_QUERY

const std::string alexaClientSDK::acsdkBluetooth::SQL_CREATE_UUID_TABLE_QUERY
Initial value:
= "CREATE TABLE " + UUID_TABLE_NAME + "(" +
COLUMN_UUID + " text not null unique, " +
COLUMN_MAC + " text not null unique, " +
static const std::string COLUMN_CATEGORY
The Category column.
Definition: SQLiteBluetoothStorage.cpp:53
static const std::string COLUMN_MAC
The MAC address column.
Definition: SQLiteBluetoothStorage.cpp:50
static const std::string UUID_TABLE_NAME
Table name.
Definition: SQLiteBluetoothStorage.cpp:44
static const std::string COLUMN_UUID
The UUID column.
Definition: SQLiteBluetoothStorage.cpp:47
std::string deviceCategoryToString(const DeviceCategory &category)
Definition: DeviceCategory.h:45

The SQL string to create a table.

◆ STATE_KEY

const char alexaClientSDK::acsdkBluetooth::STATE_KEY[] = "state"
static

A key indicating state.

◆ STOP

const NamespaceAndName alexaClientSDK::acsdkBluetooth::STOP {NAMESPACE, "Stop"}
static

The Stop directive identifier.

◆ STREAMING_ENDED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::STREAMING_ENDED {NAMESPACE, "StreamingEnded"}
static

The StreamingEnded event.

◆ STREAMING_KEY

const char alexaClientSDK::acsdkBluetooth::STREAMING_KEY[] = "streaming"
static

A key indicating streaming status.

◆ STREAMING_STARTED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::STREAMING_STARTED {NAMESPACE, "StreamingStarted"}
static

The StreamingStarted event.

◆ SUPPORTED_PROFILES_KEY

const char alexaClientSDK::acsdkBluetooth::SUPPORTED_PROFILES_KEY[] = "supportedProfiles"
static

Indicates the supported profiles.

◆ TAG [1/2]

const std::string alexaClientSDK::acsdkBluetooth::TAG {"BluetoothMediaInputTransformer"}
static

String to identify log entries originating from this file.

◆ TAG [2/2]

const std::string alexaClientSDK::acsdkBluetooth::TAG {"Bluetooth"}
static

String to identify log entries originating from this file.

◆ TRANSIENT_FOCUS_DURATION

const std::chrono::minutes alexaClientSDK::acsdkBluetooth::TRANSIENT_FOCUS_DURATION {2}
static

The amount of time that the Bluetooth CA can hold onto the foreground channel and keep another CA in the background. If the time that the Bluetooth CA is in the foreground exceeds this value then other CAs will completely lose focus. If the Bluetooth CA loses focus within that time frame then the other CA which had focus will regain it and resume normal operation.

◆ TRUNCATED_MAC_ADDRESS_KEY

const char alexaClientSDK::acsdkBluetooth::TRUNCATED_MAC_ADDRESS_KEY[] = "truncatedMacAddress"
static

The truncated mac address.

◆ UNIQUE_DEVICE_ID_KEY

const char alexaClientSDK::acsdkBluetooth::UNIQUE_DEVICE_ID_KEY[] = "uniqueDeviceId"
static

The uuid generated to identify a device.

◆ UNPAIR_DEVICES

const NamespaceAndName alexaClientSDK::acsdkBluetooth::UNPAIR_DEVICES {NAMESPACE, "UnpairDevices"}
static

The UnpairDevices directive identifier.

◆ UNPAIR_DEVICES_FAILED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::UNPAIR_DEVICES_FAILED {NAMESPACE, "UnpairDevicesFailed"}
static

The UnpairDevicesFailed event.

◆ UNPAIR_DEVICES_SUCCEEDED

const NamespaceAndName alexaClientSDK::acsdkBluetooth::UNPAIR_DEVICES_SUCCEEDED {NAMESPACE, "UnpairDevicesSucceeded"}
static

The UnpairDevicesSucceeded event.

◆ UUID_TABLE_NAME

const std::string alexaClientSDK::acsdkBluetooth::UUID_TABLE_NAME = "uuidMapping"
static

Table name.

◆ VENDOR_DEVICE_ID_KEY

const char alexaClientSDK::acsdkBluetooth::VENDOR_DEVICE_ID_KEY[] = "vendorDeviceId"
static

The Vendor Device ID.

◆ VENDOR_DEVICE_SIG_ID_KEY

const char alexaClientSDK::acsdkBluetooth::VENDOR_DEVICE_SIG_ID_KEY[] = "vendorDeviceSigId"
static

The Vendor Device SigID.

◆ VENDOR_ID_KEY

const char alexaClientSDK::acsdkBluetooth::VENDOR_ID_KEY[] = "vendorId"
static

The Vendor Id.

◆ VERSION_KEY

const char alexaClientSDK::acsdkBluetooth::VERSION_KEY[] = "version"
static

The version key for a profile.

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