AlexaClientSDK  1.19.0
A cross-platform, modular SDK for interacting with the Alexa Voice Service
Public Member Functions | Static Public Member Functions | List of all members
alexaClientSDK::capabilityAgents::alerts::Timer Class Reference

#include <Timer.h>

Inheritance diagram for alexaClientSDK::capabilityAgents::alerts::Timer:
Inheritance graph
[legend]
Collaboration diagram for alexaClientSDK::capabilityAgents::alerts::Timer:
Collaboration graph
[legend]

Public Member Functions

 Timer (std::function< std::pair< std::unique_ptr< std::istream >, const avsCommon::utils::MediaType >()> defaultAudioFactory, std::function< std::pair< std::unique_ptr< std::istream >, const avsCommon::utils::MediaType >()> shortAudioFactory, std::shared_ptr< settings::DeviceSettingsManager > settingsManager)
 
std::string getTypeName () const override
 
- Public Member Functions inherited from alexaClientSDK::capabilityAgents::alerts::Alert
 Alert (std::function< std::pair< std::unique_ptr< std::istream >, const avsCommon::utils::MediaType >()> defaultAudioFactory, std::function< std::pair< std::unique_ptr< std::istream >, const avsCommon::utils::MediaType >()> shortAudioFactory, std::shared_ptr< settings::DeviceSettingsManager > settingsManager)
 
std::function< std::pair< std::unique_ptr< std::istream >, const avsCommon::utils::MediaType >)> getDefaultAudioFactory () const
 
std::function< std::pair< std::unique_ptr< std::istream >, const avsCommon::utils::MediaType >)> getShortAudioFactory () const
 
Alert::ContextInfo getContextInfo () const
 
void onRendererStateChange (renderer::RendererObserverInterface::State state, const std::string &reason) override
 
ParseFromJsonStatus parseFromJson (const rapidjson::Value &payload, std::string *errorMessage)
 
void setRenderer (std::shared_ptr< renderer::RendererInterface > renderer)
 
void setObserver (AlertObserverInterface *observer)
 
void activate ()
 
void deactivate (StopReason reason)
 
bool updateScheduledTime (const std::string &newScheduledTime)
 
bool snooze (const std::string &updatedScheduledTime)
 
void setFocusState (avsCommon::avs::FocusState focusState)
 
bool setStateActive ()
 
void reset ()
 
std::string getToken () const
 
int64_t getScheduledTime_Unix () const
 
std::string getScheduledTime_ISO_8601 () const
 
Alert::State getState () const
 
StopReason getStopReason () const
 
void getAlertData (StaticData *staticData, DynamicData *dynamicData) const
 
bool setAlertData (StaticData *staticData, DynamicData *dynamicData)
 
int getId () const
 
bool isPastDue (int64_t currentUnixTime, std::chrono::seconds timeLimit)
 
int getLoopCount () const
 
std::chrono::milliseconds getLoopPause () const
 
std::string getBackgroundAssetId () const
 
AssetConfiguration getAssetConfiguration () const
 
void printDiagnostic ()
 
- Public Member Functions inherited from alexaClientSDK::capabilityAgents::alerts::renderer::RendererObserverInterface
virtual ~RendererObserverInterface ()=default
 

Static Public Member Functions

static std::string getTypeNameStatic ()
 Static member function to get the string representation of this type. More...
 
- Static Public Member Functions inherited from alexaClientSDK::capabilityAgents::alerts::Alert
static std::string stateToString (Alert::State state)
 
static std::string stopReasonToString (Alert::StopReason stopReason)
 
static std::string parseFromJsonStatusToString (Alert::ParseFromJsonStatus parseFromJsonStatus)
 
- Static Public Member Functions inherited from alexaClientSDK::capabilityAgents::alerts::renderer::RendererObserverInterface
static std::string stateToString (State state)
 

Additional Inherited Members

- Public Types inherited from alexaClientSDK::capabilityAgents::alerts::Alert
enum  State {
  State::UNSET, State::SET, State::READY, State::ACTIVATING,
  State::ACTIVE, State::SNOOZING, State::SNOOZED, State::STOPPING,
  State::STOPPED, State::COMPLETED
}
 
enum  StopReason {
  StopReason::UNSET, StopReason::AVS_STOP, StopReason::LOCAL_STOP, StopReason::SHUTDOWN,
  StopReason::LOG_OUT
}
 
enum  ParseFromJsonStatus { ParseFromJsonStatus::OK, ParseFromJsonStatus::MISSING_REQUIRED_PROPERTY, ParseFromJsonStatus::INVALID_VALUE }
 
- Public Types inherited from alexaClientSDK::capabilityAgents::alerts::renderer::RendererObserverInterface
enum  State {
  State::UNSET, State::STARTED, State::STOPPED, State::COMPLETED,
  State::ERROR
}
 

Detailed Description

A Timer class. This represents an alert which the user wishes to activate at a point in time relative to the current time. This is different from requesting an alert at an absolute point in time.

Timers may be basic, or named. If named, they will use custom assets at the point of activation.

Example of basic timer use: "Alexa, set a timer for 10 seconds." 10 seconds later : device will render a simple audio file, local to the device, to alert the user.

Example of named timer use: "Alexa, set an egg timer for 10 seconds" 10 seconds later : Alexa will say something like "Your egg timer is complete".

Constructor & Destructor Documentation

◆ Timer()

alexaClientSDK::capabilityAgents::alerts::Timer::Timer ( std::function< std::pair< std::unique_ptr< std::istream >, const avsCommon::utils::MediaType >()>  defaultAudioFactory,
std::function< std::pair< std::unique_ptr< std::istream >, const avsCommon::utils::MediaType >()>  shortAudioFactory,
std::shared_ptr< settings::DeviceSettingsManager settingsManager 
)

Member Function Documentation

◆ getTypeName()

std::string alexaClientSDK::capabilityAgents::alerts::Timer::getTypeName ( ) const
overridevirtual

Returns a string to identify the type of the class. Required for persistent storage.

Returns
The type name of the alert.

Implements alexaClientSDK::capabilityAgents::alerts::Alert.

◆ getTypeNameStatic()

static std::string alexaClientSDK::capabilityAgents::alerts::Timer::getTypeNameStatic ( )
inlinestatic

Static member function to get the string representation of this type.


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

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