AlexaClientSDK  1.22.0
A cross-platform, modular SDK for interacting with the Alexa Voice Service
Public Types | Public Member Functions | List of all members
alexaClientSDK::avsCommon::sdkInterfaces::CallManagerInterface Class Referenceabstract

#include <CallManagerInterface.h>

Inheritance diagram for alexaClientSDK::avsCommon::sdkInterfaces::CallManagerInterface:
Inheritance graph
[legend]
Collaboration diagram for alexaClientSDK::avsCommon::sdkInterfaces::CallManagerInterface:
Collaboration graph
[legend]

Public Types

enum  DTMFTone {
  DTMFTone::DTMF_ZERO, DTMFTone::DTMF_ONE, DTMFTone::DTMF_TWO, DTMFTone::DTMF_THREE,
  DTMFTone::DTMF_FOUR, DTMFTone::DTMF_FIVE, DTMFTone::DTMF_SIX, DTMFTone::DTMF_SEVEN,
  DTMFTone::DTMF_EIGHT, DTMFTone::DTMF_NINE, DTMFTone::DTMF_STAR, DTMFTone::DTMF_POUND
}
 An enum used to define the characters that dtmf tone can be. More...
 
- Public Types inherited from alexaClientSDK::avsCommon::sdkInterfaces::ConnectionStatusObserverInterface
enum  Status { Status::DISCONNECTED, Status::PENDING, Status::CONNECTED }
 
enum  ChangedReason {
  ChangedReason::NONE, ChangedReason::SUCCESS, ChangedReason::UNRECOVERABLE_ERROR, ChangedReason::ACL_CLIENT_REQUEST,
  ChangedReason::ACL_DISABLED, ChangedReason::DNS_TIMEDOUT, ChangedReason::CONNECTION_TIMEDOUT, ChangedReason::CONNECTION_THROTTLED,
  ChangedReason::INVALID_AUTH, ChangedReason::PING_TIMEDOUT, ChangedReason::WRITE_TIMEDOUT, ChangedReason::READ_TIMEDOUT,
  ChangedReason::FAILURE_PROTOCOL_ERROR, ChangedReason::INTERNAL_ERROR, ChangedReason::SERVER_INTERNAL_ERROR, ChangedReason::SERVER_SIDE_DISCONNECT,
  ChangedReason::SERVER_ENDPOINT_CHANGED
}
 

Public Member Functions

 CallManagerInterface (const std::string &objectName, const std::string &avsNamespace, std::shared_ptr< sdkInterfaces::ExceptionEncounteredSenderInterface > exceptionEncounteredSender)
 
virtual ~CallManagerInterface ()=default
 
virtual void addObserver (std::shared_ptr< avsCommon::sdkInterfaces::CallStateObserverInterface > observer)=0
 
virtual void removeObserver (std::shared_ptr< avsCommon::sdkInterfaces::CallStateObserverInterface > observer)=0
 
virtual void acceptCall ()=0
 
virtual void sendDtmf (DTMFTone dtmfTone)=0
 
virtual void stopCall ()=0
 
virtual void muteSelf ()=0
 
virtual void unmuteSelf ()=0
 
virtual bool isSelfMuted () const =0
 
- Public Member Functions inherited from alexaClientSDK::avsCommon::utils::RequiresShutdown
 RequiresShutdown (const std::string &name)
 
virtual ~RequiresShutdown ()
 Destructor. More...
 
const std::string & name () const
 
void shutdown ()
 
bool isShutdown () const
 
- Public Member Functions inherited from alexaClientSDK::avsCommon::avs::CapabilityAgent
virtual ~CapabilityAgent ()=default
 
void preHandleDirective (std::shared_ptr< AVSDirective > directive, std::unique_ptr< sdkInterfaces::DirectiveHandlerResultInterface > result) override final
 
bool handleDirective (const std::string &messageId) override final
 
void cancelDirective (const std::string &messageId) override final
 
void onDeregistered () override
 
void onFocusChanged (FocusState newFocus, MixingBehavior behavior) override
 
- Public Member Functions inherited from alexaClientSDK::avsCommon::sdkInterfaces::DirectiveHandlerInterface
virtual ~DirectiveHandlerInterface ()=default
 
virtual void handleDirectiveImmediately (std::shared_ptr< avsCommon::avs::AVSDirective > directive)=0
 
virtual void preHandleDirective (std::shared_ptr< avsCommon::avs::AVSDirective > directive, std::unique_ptr< DirectiveHandlerResultInterface > result)=0
 
virtual avs::DirectiveHandlerConfiguration getConfiguration () const =0
 
- Public Member Functions inherited from alexaClientSDK::avsCommon::sdkInterfaces::ChannelObserverInterface
virtual ~ChannelObserverInterface ()=default
 
- Public Member Functions inherited from alexaClientSDK::avsCommon::sdkInterfaces::StateProviderInterface
virtual ~StateProviderInterface ()=default
 
virtual void provideState (const avs::NamespaceAndName &stateProviderName, const ContextRequestToken stateRequestToken)
 
virtual void provideState (const avs::CapabilityTag &stateProviderName, const ContextRequestToken stateRequestToken)
 
virtual bool canStateBeRetrieved ()
 
virtual bool hasReportableStateProperties ()
 
- Public Member Functions inherited from alexaClientSDK::avsCommon::sdkInterfaces::ContextRequesterInterface
virtual ~ContextRequesterInterface ()=default
 
virtual void onContextAvailable (const std::string &jsonContext)
 
virtual void onContextAvailable (const endpoints::EndpointIdentifier &endpointId, const avs::AVSContext &endpointContext, ContextRequestToken requestToken)
 
virtual void onContextFailure (const ContextRequestError error)
 
virtual void onContextFailure (const ContextRequestError error, ContextRequestToken token)
 
- Public Member Functions inherited from alexaClientSDK::avsCommon::sdkInterfaces::ConnectionStatusObserverInterface
virtual ~ConnectionStatusObserverInterface ()=default
 
virtual void onConnectionStatusChanged (const Status status, const ChangedReason reason)=0
 
virtual void onConnectionStatusChanged (const Status status, const std::vector< EngineConnectionStatus > &engineStatuses)
 
- Public Member Functions inherited from alexaClientSDK::avsCommon::sdkInterfaces::SoftwareInfoSenderObserverInterface
virtual ~SoftwareInfoSenderObserverInterface ()=default
 
virtual void onFirmwareVersionAccepted (softwareInfo::FirmwareVersion firmwareVersion)=0
 
- Public Member Functions inherited from alexaClientSDK::avsCommon::sdkInterfaces::AVSGatewayObserverInterface
virtual ~AVSGatewayObserverInterface ()=default
 
virtual void onAVSGatewayChanged (const std::string &avsGateway)=0
 

Additional Inherited Members

- Protected Member Functions inherited from alexaClientSDK::avsCommon::utils::RequiresShutdown
virtual void doShutdown ()=0
 
- Protected Member Functions inherited from alexaClientSDK::avsCommon::avs::CapabilityAgent
 CapabilityAgent (const std::string &nameSpace, std::shared_ptr< sdkInterfaces::ExceptionEncounteredSenderInterface > exceptionEncounteredSender)
 
virtual std::shared_ptr< DirectiveInfocreateDirectiveInfo (std::shared_ptr< AVSDirective > directive, std::unique_ptr< sdkInterfaces::DirectiveHandlerResultInterface > result)
 
virtual void preHandleDirective (std::shared_ptr< DirectiveInfo > info)=0
 
virtual void handleDirective (std::shared_ptr< DirectiveInfo > info)=0
 
virtual void cancelDirective (std::shared_ptr< DirectiveInfo > info)=0
 
void removeDirective (const std::string &messageId)
 
void sendExceptionEncounteredAndReportFailed (std::shared_ptr< DirectiveInfo > info, const std::string &message, avsCommon::avs::ExceptionErrorType type=avsCommon::avs::ExceptionErrorType::INTERNAL_ERROR)
 
const std::pair< std::string, std::string > buildJsonEventString (const std::string &eventName, const std::string &dialogRequestIdString="", const std::string &payload="{}", const std::string &context="") const
 
- Protected Attributes inherited from alexaClientSDK::avsCommon::avs::CapabilityAgent
const std::string m_namespace
 The namespace of the capability agent. More...
 
std::shared_ptr< sdkInterfaces::ExceptionEncounteredSenderInterfacem_exceptionEncounteredSender
 Object to use to send exceptionEncountered messages. More...
 

Detailed Description

This class provides an interface to the CallManager.

Member Enumeration Documentation

◆ DTMFTone

An enum used to define the characters that dtmf tone can be.

Enumerator
DTMF_ZERO 
DTMF_ONE 
DTMF_TWO 
DTMF_THREE 
DTMF_FOUR 
DTMF_FIVE 
DTMF_SIX 
DTMF_SEVEN 
DTMF_EIGHT 
DTMF_NINE 
DTMF_STAR 
DTMF_POUND 

Constructor & Destructor Documentation

◆ CallManagerInterface()

alexaClientSDK::avsCommon::sdkInterfaces::CallManagerInterface::CallManagerInterface ( const std::string &  objectName,
const std::string &  avsNamespace,
std::shared_ptr< sdkInterfaces::ExceptionEncounteredSenderInterface exceptionEncounteredSender 
)
inline

Constructor.

Parameters
objectNameThe name of the class or object which requires shutdown calls. Used in log messages when problems are detected in shutdown or destruction sequences.
avsNamespaceThe namespace of the CapabilityAgent.
exceptionEncounteredSenderObject to use to send Exceptions to AVS.

◆ ~CallManagerInterface()

virtual alexaClientSDK::avsCommon::sdkInterfaces::CallManagerInterface::~CallManagerInterface ( )
virtualdefault

Destructor

Member Function Documentation

◆ acceptCall()

virtual void alexaClientSDK::avsCommon::sdkInterfaces::CallManagerInterface::acceptCall ( )
pure virtual

Accepts an incoming call.

◆ addObserver()

virtual void alexaClientSDK::avsCommon::sdkInterfaces::CallManagerInterface::addObserver ( std::shared_ptr< avsCommon::sdkInterfaces::CallStateObserverInterface observer)
pure virtual

Adds a CallStateObserverInterface to the group of observers.

Parameters
observerThe observer to add.

◆ isSelfMuted()

virtual bool alexaClientSDK::avsCommon::sdkInterfaces::CallManagerInterface::isSelfMuted ( ) const
pure virtual

Check if the call is muted.

Returns
Whether the call is muted.

◆ muteSelf()

virtual void alexaClientSDK::avsCommon::sdkInterfaces::CallManagerInterface::muteSelf ( )
pure virtual

Mute self during the call.

◆ removeObserver()

virtual void alexaClientSDK::avsCommon::sdkInterfaces::CallManagerInterface::removeObserver ( std::shared_ptr< avsCommon::sdkInterfaces::CallStateObserverInterface observer)
pure virtual

Removes a CallStateObserverInterface from the group of observers.

Parameters
observerThe observer to remove.

◆ sendDtmf()

virtual void alexaClientSDK::avsCommon::sdkInterfaces::CallManagerInterface::sendDtmf ( DTMFTone  dtmfTone)
pure virtual

Send dtmf tones during the call.

Parameters
dtmfToneThe signal of the dtmf message.

◆ stopCall()

virtual void alexaClientSDK::avsCommon::sdkInterfaces::CallManagerInterface::stopCall ( )
pure virtual

Stops the call.

◆ unmuteSelf()

virtual void alexaClientSDK::avsCommon::sdkInterfaces::CallManagerInterface::unmuteSelf ( )
pure virtual

Unmute self during the call.


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

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