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

#include <APLRuntimeInterface.h>

Inheritance diagram for alexaClientSDK::aplCapabilityCommonInterfaces::APLRuntimeInterface:
Inheritance graph
[legend]

Public Member Functions

virtual ~APLRuntimeInterface ()=default
 
virtual void renderDocument (const std::string &document, const std::string &data, const PresentationSession &presentationSession, const PresentationOptions &presentationOptions, std::shared_ptr< APLDocumentObserverInterface > observer)=0
 
virtual std::string getMaxAPLVersion () const =0
 

Detailed Description

A APLRuntimeInterface allows for rendering and controlling APL content. A APLRuntimeInterface implementation may handle rendering multiple documents concurrently or sequentially with each document being uniquely identified by a presentation token in the presentationOptions struct.

Document lifecycle events can be tracked by a APLDocumentObserverInterface observer provided in the renderDocument API call. Only events for the document the caller provided will be driven to the observer. To see descriptions of these document events, please refer to the documentation of each method on the observer.

The onAPLDocumentSessionAvailable() method in the observer can be used to capture a APLDocumentSessionInterface. This session object can be used to control the document (i.e. executeCommands(), clearDocument() ). Status responses for session control calls are provided in APLDocumentObserverInterface methods.

Note
An APLRuntimeInterface implementation must be able to support the various capabilities listed at: https://developer.amazon.com/en-US/docs/alexa/alexa-voice-service/presentation-apl.html.

Constructor & Destructor Documentation

◆ ~APLRuntimeInterface()

virtual alexaClientSDK::aplCapabilityCommonInterfaces::APLRuntimeInterface::~APLRuntimeInterface ( )
virtualdefault

Destructor.

Member Function Documentation

◆ getMaxAPLVersion()

virtual std::string alexaClientSDK::aplCapabilityCommonInterfaces::APLRuntimeInterface::getMaxAPLVersion ( ) const
pure virtual

Get the maximum APL Version currently supported on this device. See the following for descriptions of the various APL Version Specifications: https://developer.amazon.com/en-US/docs/alexa/alexa-presentation-language/apl-latest-version.html

Returns
string representation of APL Specification Version

Implemented in alexaClientSDK::sampleApplications::ipcServerSampleApp::APLRuntimeInterfaceImpl.

◆ renderDocument()

virtual void alexaClientSDK::aplCapabilityCommonInterfaces::APLRuntimeInterface::renderDocument ( const std::string &  document,
const std::string &  data,
const PresentationSession presentationSession,
const PresentationOptions presentationOptions,
std::shared_ptr< APLDocumentObserverInterface observer 
)
pure virtual

Render an APL document with associated metdata. Payloads must comply with the latest APL spec supported on the platform the caller is using. See getMaxAPLVersion() method for querying support on the platform.

Parameters
documentJSON string containing APL document
dataJSON string containing data payload associated with APL document
presentationSessionConfiguration for presentation session displaying document
presentationOptionsConfiguration for presentation displaying document
observerAPLDocumentObserverInterface observer for monitoring document lifecycle events

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

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