/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace IoTAnalytics { namespace Model { /** */ class BatchPutMessageRequest : public IoTAnalyticsRequest { public: AWS_IOTANALYTICS_API BatchPutMessageRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "BatchPutMessage"; } AWS_IOTANALYTICS_API Aws::String SerializePayload() const override; /** *

The name of the channel where the messages are sent.

*/ inline const Aws::String& GetChannelName() const{ return m_channelName; } /** *

The name of the channel where the messages are sent.

*/ inline bool ChannelNameHasBeenSet() const { return m_channelNameHasBeenSet; } /** *

The name of the channel where the messages are sent.

*/ inline void SetChannelName(const Aws::String& value) { m_channelNameHasBeenSet = true; m_channelName = value; } /** *

The name of the channel where the messages are sent.

*/ inline void SetChannelName(Aws::String&& value) { m_channelNameHasBeenSet = true; m_channelName = std::move(value); } /** *

The name of the channel where the messages are sent.

*/ inline void SetChannelName(const char* value) { m_channelNameHasBeenSet = true; m_channelName.assign(value); } /** *

The name of the channel where the messages are sent.

*/ inline BatchPutMessageRequest& WithChannelName(const Aws::String& value) { SetChannelName(value); return *this;} /** *

The name of the channel where the messages are sent.

*/ inline BatchPutMessageRequest& WithChannelName(Aws::String&& value) { SetChannelName(std::move(value)); return *this;} /** *

The name of the channel where the messages are sent.

*/ inline BatchPutMessageRequest& WithChannelName(const char* value) { SetChannelName(value); return *this;} /** *

The list of messages to be sent. Each message has the format: { "messageId": * "string", "payload": "string"}.

The field names of message payloads * (data) that you send to IoT Analytics:

  • Must contain only * alphanumeric characters and undescores (_). No other special characters are * allowed.

  • Must begin with an alphabetic character or single * underscore (_).

  • Cannot contain hyphens (-).

  • *

    In regular expression terms: * "^[A-Za-z_]([A-Za-z0-9]*|[A-Za-z0-9][A-Za-z0-9_]*)$".

  • Cannot * be more than 255 characters.

  • Are case insensitive. (Fields * named foo and FOO in the same payload are considered duplicates.)

  • *

For example, {"temp_01": 29} or {"_temp_01": 29} are valid, but * {"temp-01": 29}, {"01_temp": 29} or {"__temp_01": 29} are invalid in message * payloads.

*/ inline const Aws::Vector& GetMessages() const{ return m_messages; } /** *

The list of messages to be sent. Each message has the format: { "messageId": * "string", "payload": "string"}.

The field names of message payloads * (data) that you send to IoT Analytics:

  • Must contain only * alphanumeric characters and undescores (_). No other special characters are * allowed.

  • Must begin with an alphabetic character or single * underscore (_).

  • Cannot contain hyphens (-).

  • *

    In regular expression terms: * "^[A-Za-z_]([A-Za-z0-9]*|[A-Za-z0-9][A-Za-z0-9_]*)$".

  • Cannot * be more than 255 characters.

  • Are case insensitive. (Fields * named foo and FOO in the same payload are considered duplicates.)

  • *

For example, {"temp_01": 29} or {"_temp_01": 29} are valid, but * {"temp-01": 29}, {"01_temp": 29} or {"__temp_01": 29} are invalid in message * payloads.

*/ inline bool MessagesHasBeenSet() const { return m_messagesHasBeenSet; } /** *

The list of messages to be sent. Each message has the format: { "messageId": * "string", "payload": "string"}.

The field names of message payloads * (data) that you send to IoT Analytics:

  • Must contain only * alphanumeric characters and undescores (_). No other special characters are * allowed.

  • Must begin with an alphabetic character or single * underscore (_).

  • Cannot contain hyphens (-).

  • *

    In regular expression terms: * "^[A-Za-z_]([A-Za-z0-9]*|[A-Za-z0-9][A-Za-z0-9_]*)$".

  • Cannot * be more than 255 characters.

  • Are case insensitive. (Fields * named foo and FOO in the same payload are considered duplicates.)

  • *

For example, {"temp_01": 29} or {"_temp_01": 29} are valid, but * {"temp-01": 29}, {"01_temp": 29} or {"__temp_01": 29} are invalid in message * payloads.

*/ inline void SetMessages(const Aws::Vector& value) { m_messagesHasBeenSet = true; m_messages = value; } /** *

The list of messages to be sent. Each message has the format: { "messageId": * "string", "payload": "string"}.

The field names of message payloads * (data) that you send to IoT Analytics:

  • Must contain only * alphanumeric characters and undescores (_). No other special characters are * allowed.

  • Must begin with an alphabetic character or single * underscore (_).

  • Cannot contain hyphens (-).

  • *

    In regular expression terms: * "^[A-Za-z_]([A-Za-z0-9]*|[A-Za-z0-9][A-Za-z0-9_]*)$".

  • Cannot * be more than 255 characters.

  • Are case insensitive. (Fields * named foo and FOO in the same payload are considered duplicates.)

  • *

For example, {"temp_01": 29} or {"_temp_01": 29} are valid, but * {"temp-01": 29}, {"01_temp": 29} or {"__temp_01": 29} are invalid in message * payloads.

*/ inline void SetMessages(Aws::Vector&& value) { m_messagesHasBeenSet = true; m_messages = std::move(value); } /** *

The list of messages to be sent. Each message has the format: { "messageId": * "string", "payload": "string"}.

The field names of message payloads * (data) that you send to IoT Analytics:

  • Must contain only * alphanumeric characters and undescores (_). No other special characters are * allowed.

  • Must begin with an alphabetic character or single * underscore (_).

  • Cannot contain hyphens (-).

  • *

    In regular expression terms: * "^[A-Za-z_]([A-Za-z0-9]*|[A-Za-z0-9][A-Za-z0-9_]*)$".

  • Cannot * be more than 255 characters.

  • Are case insensitive. (Fields * named foo and FOO in the same payload are considered duplicates.)

  • *

For example, {"temp_01": 29} or {"_temp_01": 29} are valid, but * {"temp-01": 29}, {"01_temp": 29} or {"__temp_01": 29} are invalid in message * payloads.

*/ inline BatchPutMessageRequest& WithMessages(const Aws::Vector& value) { SetMessages(value); return *this;} /** *

The list of messages to be sent. Each message has the format: { "messageId": * "string", "payload": "string"}.

The field names of message payloads * (data) that you send to IoT Analytics:

  • Must contain only * alphanumeric characters and undescores (_). No other special characters are * allowed.

  • Must begin with an alphabetic character or single * underscore (_).

  • Cannot contain hyphens (-).

  • *

    In regular expression terms: * "^[A-Za-z_]([A-Za-z0-9]*|[A-Za-z0-9][A-Za-z0-9_]*)$".

  • Cannot * be more than 255 characters.

  • Are case insensitive. (Fields * named foo and FOO in the same payload are considered duplicates.)

  • *

For example, {"temp_01": 29} or {"_temp_01": 29} are valid, but * {"temp-01": 29}, {"01_temp": 29} or {"__temp_01": 29} are invalid in message * payloads.

*/ inline BatchPutMessageRequest& WithMessages(Aws::Vector&& value) { SetMessages(std::move(value)); return *this;} /** *

The list of messages to be sent. Each message has the format: { "messageId": * "string", "payload": "string"}.

The field names of message payloads * (data) that you send to IoT Analytics:

  • Must contain only * alphanumeric characters and undescores (_). No other special characters are * allowed.

  • Must begin with an alphabetic character or single * underscore (_).

  • Cannot contain hyphens (-).

  • *

    In regular expression terms: * "^[A-Za-z_]([A-Za-z0-9]*|[A-Za-z0-9][A-Za-z0-9_]*)$".

  • Cannot * be more than 255 characters.

  • Are case insensitive. (Fields * named foo and FOO in the same payload are considered duplicates.)

  • *

For example, {"temp_01": 29} or {"_temp_01": 29} are valid, but * {"temp-01": 29}, {"01_temp": 29} or {"__temp_01": 29} are invalid in message * payloads.

*/ inline BatchPutMessageRequest& AddMessages(const Message& value) { m_messagesHasBeenSet = true; m_messages.push_back(value); return *this; } /** *

The list of messages to be sent. Each message has the format: { "messageId": * "string", "payload": "string"}.

The field names of message payloads * (data) that you send to IoT Analytics:

  • Must contain only * alphanumeric characters and undescores (_). No other special characters are * allowed.

  • Must begin with an alphabetic character or single * underscore (_).

  • Cannot contain hyphens (-).

  • *

    In regular expression terms: * "^[A-Za-z_]([A-Za-z0-9]*|[A-Za-z0-9][A-Za-z0-9_]*)$".

  • Cannot * be more than 255 characters.

  • Are case insensitive. (Fields * named foo and FOO in the same payload are considered duplicates.)

  • *

For example, {"temp_01": 29} or {"_temp_01": 29} are valid, but * {"temp-01": 29}, {"01_temp": 29} or {"__temp_01": 29} are invalid in message * payloads.

*/ inline BatchPutMessageRequest& AddMessages(Message&& value) { m_messagesHasBeenSet = true; m_messages.push_back(std::move(value)); return *this; } private: Aws::String m_channelName; bool m_channelNameHasBeenSet = false; Aws::Vector m_messages; bool m_messagesHasBeenSet = false; }; } // namespace Model } // namespace IoTAnalytics } // namespace Aws