AlexaClientSDK  1.26.0
A cross-platform, modular SDK for interacting with the Alexa Voice Service
Namespaces | Macros | Functions | Variables
MessageRequestHandler.cpp File Reference
#include <algorithm>
#include <functional>
#include <unordered_map>
#include <AVSCommon/Utils/HTTP/HttpResponseCode.h>
#include <AVSCommon/Utils/HTTP2/HTTP2MimeRequestEncoder.h>
#include <AVSCommon/Utils/HTTP2/HTTP2MimeResponseDecoder.h>
#include <AVSCommon/Utils/Logger/Logger.h>
#include <AVSCommon/Utils/Metrics/DataPointCounterBuilder.h>
#include <AVSCommon/Utils/Metrics/DataPointStringBuilder.h>
#include <AVSCommon/Utils/Metrics/MetricEventBuilder.h>
#include "ACL/Transport/HTTP2Transport.h"
#include "ACL/Transport/MimeResponseSink.h"
#include "ACL/Transport/MessageRequestHandler.h"
Include dependency graph for MessageRequestHandler.cpp:

Namespaces

 alexaClientSDK
 Whether or not curl logs should be emitted.
 
 alexaClientSDK::acl
 

Macros

#define LX(event)   alexaClientSDK::avsCommon::utils::logger::LogEntry(TAG, event)
 

Functions

static const std::string alexaClientSDK::acl::TAG ("MessageRequestHandler")
 String to identify log entries originating from this file. More...
 
static void alexaClientSDK::acl::collectSendDataResultMetric (const std::shared_ptr< MetricRecorderInterface > &metricRecorder, int count, const std::string &readStatus)
 
static void alexaClientSDK::acl::submitMessageSendErrorMetric (const std::shared_ptr< MetricRecorderInterface > &metricRecorder, MessageRequestObserverInterface::Status status)
 

Variables

const static std::string alexaClientSDK::acl::AVS_EVENT_URL_PATH_EXTENSION = "/v20160207/events"
 URL to send events to. More...
 
const static std::string alexaClientSDK::acl::MIME_BOUNDARY = "WhooHooZeerOoonie="
 Boundary for mime encoded requests. More...
 
static const std::chrono::seconds alexaClientSDK::acl::STREAM_PROGRESS_TIMEOUT = std::chrono::seconds(15)
 Timeout for transmission of data on a given stream. More...
 
static const std::vector< std::string > alexaClientSDK::acl::JSON_MIME_PART_HEADER_LINES
 Mime header strings for mime parts containing json payloads. More...
 
static const std::string alexaClientSDK::acl::CONTENT_DISPOSITION_PREFIX = "Content-Disposition: form-data; name=\""
 Mime Content-Disposition line before name. More...
 
static const std::string alexaClientSDK::acl::CONTENT_DISPOSITION_SUFFIX = "\""
 Mime Content-Disposition line after name. More...
 
static const std::string alexaClientSDK::acl::ATTACHMENT_CONTENT_TYPE = "Content-Type: application/octet-stream"
 Mime Content-Type for attchments. More...
 
static const std::string alexaClientSDK::acl::MESSAGEREQUEST_ID_PREFIX = "AVSEvent-"
 Prefix for the ID of message requests. More...
 
static const std::string alexaClientSDK::acl::ACL_METRIC_SOURCE_PREFIX = "ACL-"
 Prefix used to identify metrics published by this module. More...
 
static const std::string alexaClientSDK::acl::SEND_DATA_ERROR = "ERROR.SEND_DATA_ERROR"
 Metric identifier for send mime data error. More...
 
static const std::string alexaClientSDK::acl::START_EVENT_SENT_TO_CLOUD = "START_EVENT_SENT_TO_CLOUD"
 Metric identifier for start of Mime data event being sent to the cloud. More...
 
static const std::string alexaClientSDK::acl::READ_STATUS_TAG = "READ_STATUS"
 Read status tag. More...
 
static const std::string alexaClientSDK::acl::ERROR_READ_OVERRUN = "READ_OVERRUN"
 Read overrun error. More...
 
static const std::string alexaClientSDK::acl::ERROR_INTERNAL = "INTERNAL_ERROR"
 Internal error. More...
 
static const std::string alexaClientSDK::acl::SEND_COMPLETED = "SEND_COMPLETED"
 Send completed. More...
 
static const std::string alexaClientSDK::acl::MESSAGE_SEND_ERROR = "ERROR.MESSAGE_SEND_FAILED"
 Metric identifier for message send error. More...
 
static const std::string alexaClientSDK::acl::HTTP_KEY_VALUE_SEPARATOR = ": "
 

Macro Definition Documentation

◆ LX

#define LX (   event)    alexaClientSDK::avsCommon::utils::logger::LogEntry(TAG, event)

Create a LogEntry using this file's TAG and the specified event string.

Parameters
eventThe event string for this LogEntry.

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