/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The input for the Publish operation.See Also:
AWS
* API Reference
The name of the MQTT topic.
*/ inline const Aws::String& GetTopic() const{ return m_topic; } /** *The name of the MQTT topic.
*/ inline bool TopicHasBeenSet() const { return m_topicHasBeenSet; } /** *The name of the MQTT topic.
*/ inline void SetTopic(const Aws::String& value) { m_topicHasBeenSet = true; m_topic = value; } /** *The name of the MQTT topic.
*/ inline void SetTopic(Aws::String&& value) { m_topicHasBeenSet = true; m_topic = std::move(value); } /** *The name of the MQTT topic.
*/ inline void SetTopic(const char* value) { m_topicHasBeenSet = true; m_topic.assign(value); } /** *The name of the MQTT topic.
*/ inline PublishRequest& WithTopic(const Aws::String& value) { SetTopic(value); return *this;} /** *The name of the MQTT topic.
*/ inline PublishRequest& WithTopic(Aws::String&& value) { SetTopic(std::move(value)); return *this;} /** *The name of the MQTT topic.
*/ inline PublishRequest& WithTopic(const char* value) { SetTopic(value); return *this;} /** *The Quality of Service (QoS) level. The default QoS level is 0.
*/ inline int GetQos() const{ return m_qos; } /** *The Quality of Service (QoS) level. The default QoS level is 0.
*/ inline bool QosHasBeenSet() const { return m_qosHasBeenSet; } /** *The Quality of Service (QoS) level. The default QoS level is 0.
*/ inline void SetQos(int value) { m_qosHasBeenSet = true; m_qos = value; } /** *The Quality of Service (QoS) level. The default QoS level is 0.
*/ inline PublishRequest& WithQos(int value) { SetQos(value); return *this;} /** *A Boolean value that determines whether to set the RETAIN flag when the * message is published.
Setting the RETAIN flag causes the message to be * retained and sent to new subscribers to the topic.
Valid values:
* true
| false
Default value: false
*
A Boolean value that determines whether to set the RETAIN flag when the * message is published.
Setting the RETAIN flag causes the message to be * retained and sent to new subscribers to the topic.
Valid values:
* true
| false
Default value: false
*
A Boolean value that determines whether to set the RETAIN flag when the * message is published.
Setting the RETAIN flag causes the message to be * retained and sent to new subscribers to the topic.
Valid values:
* true
| false
Default value: false
*
A Boolean value that determines whether to set the RETAIN flag when the * message is published.
Setting the RETAIN flag causes the message to be * retained and sent to new subscribers to the topic.
Valid values:
* true
| false
Default value: false
*
A JSON string that contains an array of JSON objects. If you don’t use Amazon
* Web Services SDK or CLI, you must encode the JSON string to base64 format before
* adding it to the HTTP header. userProperties
is an HTTP header
* value in the API.
The following example userProperties
* parameter is a JSON string which represents two User Properties. Note that it
* needs to be base64-encoded:
[{"deviceName": "alpha"},
* {"deviceCnt": "45"}]
A JSON string that contains an array of JSON objects. If you don’t use Amazon
* Web Services SDK or CLI, you must encode the JSON string to base64 format before
* adding it to the HTTP header. userProperties
is an HTTP header
* value in the API.
The following example userProperties
* parameter is a JSON string which represents two User Properties. Note that it
* needs to be base64-encoded:
[{"deviceName": "alpha"},
* {"deviceCnt": "45"}]
A JSON string that contains an array of JSON objects. If you don’t use Amazon
* Web Services SDK or CLI, you must encode the JSON string to base64 format before
* adding it to the HTTP header. userProperties
is an HTTP header
* value in the API.
The following example userProperties
* parameter is a JSON string which represents two User Properties. Note that it
* needs to be base64-encoded:
[{"deviceName": "alpha"},
* {"deviceCnt": "45"}]
A JSON string that contains an array of JSON objects. If you don’t use Amazon
* Web Services SDK or CLI, you must encode the JSON string to base64 format before
* adding it to the HTTP header. userProperties
is an HTTP header
* value in the API.
The following example userProperties
* parameter is a JSON string which represents two User Properties. Note that it
* needs to be base64-encoded:
[{"deviceName": "alpha"},
* {"deviceCnt": "45"}]
A JSON string that contains an array of JSON objects. If you don’t use Amazon
* Web Services SDK or CLI, you must encode the JSON string to base64 format before
* adding it to the HTTP header. userProperties
is an HTTP header
* value in the API.
The following example userProperties
* parameter is a JSON string which represents two User Properties. Note that it
* needs to be base64-encoded:
[{"deviceName": "alpha"},
* {"deviceCnt": "45"}]
A JSON string that contains an array of JSON objects. If you don’t use Amazon
* Web Services SDK or CLI, you must encode the JSON string to base64 format before
* adding it to the HTTP header. userProperties
is an HTTP header
* value in the API.
The following example userProperties
* parameter is a JSON string which represents two User Properties. Note that it
* needs to be base64-encoded:
[{"deviceName": "alpha"},
* {"deviceCnt": "45"}]
A JSON string that contains an array of JSON objects. If you don’t use Amazon
* Web Services SDK or CLI, you must encode the JSON string to base64 format before
* adding it to the HTTP header. userProperties
is an HTTP header
* value in the API.
The following example userProperties
* parameter is a JSON string which represents two User Properties. Note that it
* needs to be base64-encoded:
[{"deviceName": "alpha"},
* {"deviceCnt": "45"}]
A JSON string that contains an array of JSON objects. If you don’t use Amazon
* Web Services SDK or CLI, you must encode the JSON string to base64 format before
* adding it to the HTTP header. userProperties
is an HTTP header
* value in the API.
The following example userProperties
* parameter is a JSON string which represents two User Properties. Note that it
* needs to be base64-encoded:
[{"deviceName": "alpha"},
* {"deviceCnt": "45"}]
An Enum
string value that indicates whether the payload is
* formatted as UTF-8. payloadFormatIndicator
is an HTTP header value
* in the API.
An Enum
string value that indicates whether the payload is
* formatted as UTF-8. payloadFormatIndicator
is an HTTP header value
* in the API.
An Enum
string value that indicates whether the payload is
* formatted as UTF-8. payloadFormatIndicator
is an HTTP header value
* in the API.
An Enum
string value that indicates whether the payload is
* formatted as UTF-8. payloadFormatIndicator
is an HTTP header value
* in the API.
An Enum
string value that indicates whether the payload is
* formatted as UTF-8. payloadFormatIndicator
is an HTTP header value
* in the API.
An Enum
string value that indicates whether the payload is
* formatted as UTF-8. payloadFormatIndicator
is an HTTP header value
* in the API.
A UTF-8 encoded string that's used as the topic name for a response message. * The response topic is used to describe the topic which the receiver should * publish to as part of the request-response flow. The topic must not contain * wildcard characters.
*/ inline const Aws::String& GetResponseTopic() const{ return m_responseTopic; } /** *A UTF-8 encoded string that's used as the topic name for a response message. * The response topic is used to describe the topic which the receiver should * publish to as part of the request-response flow. The topic must not contain * wildcard characters.
*/ inline bool ResponseTopicHasBeenSet() const { return m_responseTopicHasBeenSet; } /** *A UTF-8 encoded string that's used as the topic name for a response message. * The response topic is used to describe the topic which the receiver should * publish to as part of the request-response flow. The topic must not contain * wildcard characters.
*/ inline void SetResponseTopic(const Aws::String& value) { m_responseTopicHasBeenSet = true; m_responseTopic = value; } /** *A UTF-8 encoded string that's used as the topic name for a response message. * The response topic is used to describe the topic which the receiver should * publish to as part of the request-response flow. The topic must not contain * wildcard characters.
*/ inline void SetResponseTopic(Aws::String&& value) { m_responseTopicHasBeenSet = true; m_responseTopic = std::move(value); } /** *A UTF-8 encoded string that's used as the topic name for a response message. * The response topic is used to describe the topic which the receiver should * publish to as part of the request-response flow. The topic must not contain * wildcard characters.
*/ inline void SetResponseTopic(const char* value) { m_responseTopicHasBeenSet = true; m_responseTopic.assign(value); } /** *A UTF-8 encoded string that's used as the topic name for a response message. * The response topic is used to describe the topic which the receiver should * publish to as part of the request-response flow. The topic must not contain * wildcard characters.
*/ inline PublishRequest& WithResponseTopic(const Aws::String& value) { SetResponseTopic(value); return *this;} /** *A UTF-8 encoded string that's used as the topic name for a response message. * The response topic is used to describe the topic which the receiver should * publish to as part of the request-response flow. The topic must not contain * wildcard characters.
*/ inline PublishRequest& WithResponseTopic(Aws::String&& value) { SetResponseTopic(std::move(value)); return *this;} /** *A UTF-8 encoded string that's used as the topic name for a response message. * The response topic is used to describe the topic which the receiver should * publish to as part of the request-response flow. The topic must not contain * wildcard characters.
*/ inline PublishRequest& WithResponseTopic(const char* value) { SetResponseTopic(value); return *this;} /** *The base64-encoded binary data used by the sender of the request message to
* identify which request the response message is for when it's received.
* correlationData
is an HTTP header value in the API.
The base64-encoded binary data used by the sender of the request message to
* identify which request the response message is for when it's received.
* correlationData
is an HTTP header value in the API.
The base64-encoded binary data used by the sender of the request message to
* identify which request the response message is for when it's received.
* correlationData
is an HTTP header value in the API.
The base64-encoded binary data used by the sender of the request message to
* identify which request the response message is for when it's received.
* correlationData
is an HTTP header value in the API.
The base64-encoded binary data used by the sender of the request message to
* identify which request the response message is for when it's received.
* correlationData
is an HTTP header value in the API.
The base64-encoded binary data used by the sender of the request message to
* identify which request the response message is for when it's received.
* correlationData
is an HTTP header value in the API.
The base64-encoded binary data used by the sender of the request message to
* identify which request the response message is for when it's received.
* correlationData
is an HTTP header value in the API.
The base64-encoded binary data used by the sender of the request message to
* identify which request the response message is for when it's received.
* correlationData
is an HTTP header value in the API.
A user-defined integer value that represents the message expiry interval in
* seconds. If absent, the message doesn't expire. For more information about the
* limits of messageExpiry
, see Amazon
* Web Services IoT Core message broker and protocol limits and quotas from
* the Amazon Web Services Reference Guide.
A user-defined integer value that represents the message expiry interval in
* seconds. If absent, the message doesn't expire. For more information about the
* limits of messageExpiry
, see Amazon
* Web Services IoT Core message broker and protocol limits and quotas from
* the Amazon Web Services Reference Guide.
A user-defined integer value that represents the message expiry interval in
* seconds. If absent, the message doesn't expire. For more information about the
* limits of messageExpiry
, see Amazon
* Web Services IoT Core message broker and protocol limits and quotas from
* the Amazon Web Services Reference Guide.
A user-defined integer value that represents the message expiry interval in
* seconds. If absent, the message doesn't expire. For more information about the
* limits of messageExpiry
, see Amazon
* Web Services IoT Core message broker and protocol limits and quotas from
* the Amazon Web Services Reference Guide.