AlexaClientSDK  3.0.0
A cross-platform, modular SDK for interacting with the Alexa Voice Service
APLCapabilityAgentInterface.h
Go to the documentation of this file.
1 /*
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License").
5  * You may not use this file except in compliance with the License.
6  * A copy of the License is located at
7  *
8  * http://aws.amazon.com/apache2.0/
9  *
10  * or in the "license" file accompanying this file. This file is distributed
11  * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12  * express or implied. See the License for the specific language governing
13  * permissions and limitations under the License.
14  */
15 #ifndef ACSDK_APLCAPABILITYCOMMONINTERFACES_APLCAPABILITYAGENTINTERFACE_H_
16 #define ACSDK_APLCAPABILITYCOMMONINTERFACES_APLCAPABILITYAGENTINTERFACE_H_
17 
18 #include <chrono>
19 #include <memory>
20 #include <string>
21 
24 
25 #include "PresentationSession.h"
26 #include "APLEventPayload.h"
27 #include "PresentationToken.h"
29 
30 namespace alexaClientSDK {
31 namespace aplCapabilityCommonInterfaces {
36 public:
40  virtual ~APLCapabilityAgentInterface() = default;
41 
48  virtual void onActiveDocumentChanged(const PresentationToken& token, const PresentationSession& session) = 0;
49 
56  virtual void clearExecuteCommands(
57  const PresentationToken& token = std::string(),
58  const bool markAsFailed = true) = 0;
59 
66  virtual void sendUserEvent(const aplEventPayload::UserEvent& payload) = 0;
67 
75 
82  virtual void sendRuntimeErrorEvent(const aplEventPayload::RuntimeError& payload) = 0;
83 
91  virtual void onVisualContextAvailable(
93  const aplEventPayload::VisualContext& visualContext) = 0;
94 
102  virtual void processRenderDocumentResult(
103  const PresentationToken& token,
104  const bool result,
105  const std::string& error) = 0;
106 
114  virtual void processExecuteCommandsResult(
115  const PresentationToken& token,
117  const std::string& error) = 0;
118 
123  virtual void recordRenderComplete(const std::chrono::steady_clock::time_point& timestamp) = 0;
124 
128  virtual void proactiveStateReport() = 0;
129 };
130 } // namespace aplCapabilityCommonInterfaces
131 } // namespace alexaClientSDK
132 #endif // ACSDK_APLCAPABILITYCOMMONINTERFACES_APLCAPABILITYAGENTINTERFACE_H_
virtual void sendDataSourceFetchRequestEvent(const aplEventPayload::DataSourceFetch &payload)=0
virtual void sendUserEvent(const aplEventPayload::UserEvent &payload)=0
virtual void recordRenderComplete(const std::chrono::steady_clock::time_point &timestamp)=0
virtual void processExecuteCommandsResult(const PresentationToken &token, APLCommandExecutionEvent event, const std::string &error)=0
::std::string string
Definition: gtest-port.h:1097
unsigned int ContextRequestToken
Alias for the token used to identify a context request.
Definition: ContextRequestToken.h:23
virtual void sendRuntimeErrorEvent(const aplEventPayload::RuntimeError &payload)=0
std::string PresentationToken
Alias for the token used by APL directives.
Definition: PresentationToken.h:22
virtual void clearExecuteCommands(const PresentationToken &token=std::string(), const bool markAsFailed=true)=0
virtual void onVisualContextAvailable(avsCommon::sdkInterfaces::ContextRequestToken requestToken, const aplEventPayload::VisualContext &visualContext)=0
Whether or not curl logs should be emitted.
Definition: AVSConnectionManager.h:36
virtual void onActiveDocumentChanged(const PresentationToken &token, const PresentationSession &session)=0
APLCommandExecutionEvent
Enumeration of APL Command Execution Events that can be reported to the APL capability agent...
Definition: APLCommandExecutionEvent.h:27
virtual void processRenderDocumentResult(const PresentationToken &token, const bool result, const std::string &error)=0

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