AWS SDK for C++

AWS SDK for C++ Version 1.11.553

All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Pages
Loading...
Searching...
No Matches
StartChatContactRequest.h
1
6#pragma once
7#include <aws/connect/Connect_EXPORTS.h>
8#include <aws/connect/ConnectRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSMap.h>
11#include <aws/connect/model/ParticipantDetails.h>
12#include <aws/connect/model/ChatMessage.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/connect/model/PersistentChat.h>
15#include <aws/connect/model/SegmentAttributeValue.h>
16#include <utility>
17#include <aws/core/utils/UUID.h>
18
19namespace Aws
20{
21namespace Connect
22{
23namespace Model
24{
25
29 {
30 public:
31 AWS_CONNECT_API StartChatContactRequest() = default;
32
33 // Service request name is the Operation name which will send this request out,
34 // each operation should has unique request name, so that we can get operation's name from this request.
35 // Note: this is not true for response, multiple operations may have the same response name,
36 // so we can not get operation's name from response.
37 inline virtual const char* GetServiceRequestName() const override { return "StartChatContact"; }
38
39 AWS_CONNECT_API Aws::String SerializePayload() const override;
40
41
43
48 inline const Aws::String& GetInstanceId() const { return m_instanceId; }
49 inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; }
50 template<typename InstanceIdT = Aws::String>
51 void SetInstanceId(InstanceIdT&& value) { m_instanceIdHasBeenSet = true; m_instanceId = std::forward<InstanceIdT>(value); }
52 template<typename InstanceIdT = Aws::String>
53 StartChatContactRequest& WithInstanceId(InstanceIdT&& value) { SetInstanceId(std::forward<InstanceIdT>(value)); return *this;}
55
57
66 inline const Aws::String& GetContactFlowId() const { return m_contactFlowId; }
67 inline bool ContactFlowIdHasBeenSet() const { return m_contactFlowIdHasBeenSet; }
68 template<typename ContactFlowIdT = Aws::String>
69 void SetContactFlowId(ContactFlowIdT&& value) { m_contactFlowIdHasBeenSet = true; m_contactFlowId = std::forward<ContactFlowIdT>(value); }
70 template<typename ContactFlowIdT = Aws::String>
71 StartChatContactRequest& WithContactFlowId(ContactFlowIdT&& value) { SetContactFlowId(std::forward<ContactFlowIdT>(value)); return *this;}
73
75
82 inline const Aws::Map<Aws::String, Aws::String>& GetAttributes() const { return m_attributes; }
83 inline bool AttributesHasBeenSet() const { return m_attributesHasBeenSet; }
84 template<typename AttributesT = Aws::Map<Aws::String, Aws::String>>
85 void SetAttributes(AttributesT&& value) { m_attributesHasBeenSet = true; m_attributes = std::forward<AttributesT>(value); }
86 template<typename AttributesT = Aws::Map<Aws::String, Aws::String>>
87 StartChatContactRequest& WithAttributes(AttributesT&& value) { SetAttributes(std::forward<AttributesT>(value)); return *this;}
88 template<typename AttributesKeyT = Aws::String, typename AttributesValueT = Aws::String>
89 StartChatContactRequest& AddAttributes(AttributesKeyT&& key, AttributesValueT&& value) {
90 m_attributesHasBeenSet = true; m_attributes.emplace(std::forward<AttributesKeyT>(key), std::forward<AttributesValueT>(value)); return *this;
91 }
93
95
98 inline const ParticipantDetails& GetParticipantDetails() const { return m_participantDetails; }
99 inline bool ParticipantDetailsHasBeenSet() const { return m_participantDetailsHasBeenSet; }
100 template<typename ParticipantDetailsT = ParticipantDetails>
101 void SetParticipantDetails(ParticipantDetailsT&& value) { m_participantDetailsHasBeenSet = true; m_participantDetails = std::forward<ParticipantDetailsT>(value); }
102 template<typename ParticipantDetailsT = ParticipantDetails>
103 StartChatContactRequest& WithParticipantDetails(ParticipantDetailsT&& value) { SetParticipantDetails(std::forward<ParticipantDetailsT>(value)); return *this;}
105
107
111 inline const ChatMessage& GetInitialMessage() const { return m_initialMessage; }
112 inline bool InitialMessageHasBeenSet() const { return m_initialMessageHasBeenSet; }
113 template<typename InitialMessageT = ChatMessage>
114 void SetInitialMessage(InitialMessageT&& value) { m_initialMessageHasBeenSet = true; m_initialMessage = std::forward<InitialMessageT>(value); }
115 template<typename InitialMessageT = ChatMessage>
116 StartChatContactRequest& WithInitialMessage(InitialMessageT&& value) { SetInitialMessage(std::forward<InitialMessageT>(value)); return *this;}
118
120
127 inline const Aws::String& GetClientToken() const { return m_clientToken; }
128 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
129 template<typename ClientTokenT = Aws::String>
130 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::forward<ClientTokenT>(value); }
131 template<typename ClientTokenT = Aws::String>
132 StartChatContactRequest& WithClientToken(ClientTokenT&& value) { SetClientToken(std::forward<ClientTokenT>(value)); return *this;}
134
136
141 inline int GetChatDurationInMinutes() const { return m_chatDurationInMinutes; }
142 inline bool ChatDurationInMinutesHasBeenSet() const { return m_chatDurationInMinutesHasBeenSet; }
143 inline void SetChatDurationInMinutes(int value) { m_chatDurationInMinutesHasBeenSet = true; m_chatDurationInMinutes = value; }
146
148
166 inline const Aws::Vector<Aws::String>& GetSupportedMessagingContentTypes() const { return m_supportedMessagingContentTypes; }
167 inline bool SupportedMessagingContentTypesHasBeenSet() const { return m_supportedMessagingContentTypesHasBeenSet; }
168 template<typename SupportedMessagingContentTypesT = Aws::Vector<Aws::String>>
169 void SetSupportedMessagingContentTypes(SupportedMessagingContentTypesT&& value) { m_supportedMessagingContentTypesHasBeenSet = true; m_supportedMessagingContentTypes = std::forward<SupportedMessagingContentTypesT>(value); }
170 template<typename SupportedMessagingContentTypesT = Aws::Vector<Aws::String>>
171 StartChatContactRequest& WithSupportedMessagingContentTypes(SupportedMessagingContentTypesT&& value) { SetSupportedMessagingContentTypes(std::forward<SupportedMessagingContentTypesT>(value)); return *this;}
172 template<typename SupportedMessagingContentTypesT = Aws::String>
173 StartChatContactRequest& AddSupportedMessagingContentTypes(SupportedMessagingContentTypesT&& value) { m_supportedMessagingContentTypesHasBeenSet = true; m_supportedMessagingContentTypes.emplace_back(std::forward<SupportedMessagingContentTypesT>(value)); return *this; }
175
177
183 inline const PersistentChat& GetPersistentChat() const { return m_persistentChat; }
184 inline bool PersistentChatHasBeenSet() const { return m_persistentChatHasBeenSet; }
185 template<typename PersistentChatT = PersistentChat>
186 void SetPersistentChat(PersistentChatT&& value) { m_persistentChatHasBeenSet = true; m_persistentChat = std::forward<PersistentChatT>(value); }
187 template<typename PersistentChatT = PersistentChat>
188 StartChatContactRequest& WithPersistentChat(PersistentChatT&& value) { SetPersistentChat(std::forward<PersistentChatT>(value)); return *this;}
190
192
197 inline const Aws::String& GetRelatedContactId() const { return m_relatedContactId; }
198 inline bool RelatedContactIdHasBeenSet() const { return m_relatedContactIdHasBeenSet; }
199 template<typename RelatedContactIdT = Aws::String>
200 void SetRelatedContactId(RelatedContactIdT&& value) { m_relatedContactIdHasBeenSet = true; m_relatedContactId = std::forward<RelatedContactIdT>(value); }
201 template<typename RelatedContactIdT = Aws::String>
202 StartChatContactRequest& WithRelatedContactId(RelatedContactIdT&& value) { SetRelatedContactId(std::forward<RelatedContactIdT>(value)); return *this;}
204
206
218 inline const Aws::Map<Aws::String, SegmentAttributeValue>& GetSegmentAttributes() const { return m_segmentAttributes; }
219 inline bool SegmentAttributesHasBeenSet() const { return m_segmentAttributesHasBeenSet; }
220 template<typename SegmentAttributesT = Aws::Map<Aws::String, SegmentAttributeValue>>
221 void SetSegmentAttributes(SegmentAttributesT&& value) { m_segmentAttributesHasBeenSet = true; m_segmentAttributes = std::forward<SegmentAttributesT>(value); }
222 template<typename SegmentAttributesT = Aws::Map<Aws::String, SegmentAttributeValue>>
223 StartChatContactRequest& WithSegmentAttributes(SegmentAttributesT&& value) { SetSegmentAttributes(std::forward<SegmentAttributesT>(value)); return *this;}
224 template<typename SegmentAttributesKeyT = Aws::String, typename SegmentAttributesValueT = SegmentAttributeValue>
225 StartChatContactRequest& AddSegmentAttributes(SegmentAttributesKeyT&& key, SegmentAttributesValueT&& value) {
226 m_segmentAttributesHasBeenSet = true; m_segmentAttributes.emplace(std::forward<SegmentAttributesKeyT>(key), std::forward<SegmentAttributesValueT>(value)); return *this;
227 }
229
231
235 inline const Aws::String& GetCustomerId() const { return m_customerId; }
236 inline bool CustomerIdHasBeenSet() const { return m_customerIdHasBeenSet; }
237 template<typename CustomerIdT = Aws::String>
238 void SetCustomerId(CustomerIdT&& value) { m_customerIdHasBeenSet = true; m_customerId = std::forward<CustomerIdT>(value); }
239 template<typename CustomerIdT = Aws::String>
240 StartChatContactRequest& WithCustomerId(CustomerIdT&& value) { SetCustomerId(std::forward<CustomerIdT>(value)); return *this;}
242 private:
243
244 Aws::String m_instanceId;
245 bool m_instanceIdHasBeenSet = false;
246
247 Aws::String m_contactFlowId;
248 bool m_contactFlowIdHasBeenSet = false;
249
251 bool m_attributesHasBeenSet = false;
252
253 ParticipantDetails m_participantDetails;
254 bool m_participantDetailsHasBeenSet = false;
255
256 ChatMessage m_initialMessage;
257 bool m_initialMessageHasBeenSet = false;
258
259 Aws::String m_clientToken;
260 bool m_clientTokenHasBeenSet = false;
261
262 int m_chatDurationInMinutes{0};
263 bool m_chatDurationInMinutesHasBeenSet = false;
264
265 Aws::Vector<Aws::String> m_supportedMessagingContentTypes;
266 bool m_supportedMessagingContentTypesHasBeenSet = false;
267
268 PersistentChat m_persistentChat;
269 bool m_persistentChatHasBeenSet = false;
270
271 Aws::String m_relatedContactId;
272 bool m_relatedContactIdHasBeenSet = false;
273
275 bool m_segmentAttributesHasBeenSet = false;
276
277 Aws::String m_customerId;
278 bool m_customerIdHasBeenSet = false;
279 };
280
281} // namespace Model
282} // namespace Connect
283} // namespace Aws
StartChatContactRequest & WithClientToken(ClientTokenT &&value)
virtual const char * GetServiceRequestName() const override
StartChatContactRequest & WithAttributes(AttributesT &&value)
StartChatContactRequest & AddAttributes(AttributesKeyT &&key, AttributesValueT &&value)
StartChatContactRequest & WithSupportedMessagingContentTypes(SupportedMessagingContentTypesT &&value)
StartChatContactRequest & WithPersistentChat(PersistentChatT &&value)
const Aws::Vector< Aws::String > & GetSupportedMessagingContentTypes() const
const ParticipantDetails & GetParticipantDetails() const
AWS_CONNECT_API StartChatContactRequest()=default
StartChatContactRequest & WithInitialMessage(InitialMessageT &&value)
void SetSupportedMessagingContentTypes(SupportedMessagingContentTypesT &&value)
StartChatContactRequest & AddSegmentAttributes(SegmentAttributesKeyT &&key, SegmentAttributesValueT &&value)
StartChatContactRequest & WithChatDurationInMinutes(int value)
void SetSegmentAttributes(SegmentAttributesT &&value)
StartChatContactRequest & WithParticipantDetails(ParticipantDetailsT &&value)
StartChatContactRequest & WithSegmentAttributes(SegmentAttributesT &&value)
AWS_CONNECT_API Aws::String SerializePayload() const override
const Aws::Map< Aws::String, Aws::String > & GetAttributes() const
StartChatContactRequest & AddSupportedMessagingContentTypes(SupportedMessagingContentTypesT &&value)
const Aws::Map< Aws::String, SegmentAttributeValue > & GetSegmentAttributes() const
StartChatContactRequest & WithInstanceId(InstanceIdT &&value)
StartChatContactRequest & WithRelatedContactId(RelatedContactIdT &&value)
StartChatContactRequest & WithContactFlowId(ContactFlowIdT &&value)
StartChatContactRequest & WithCustomerId(CustomerIdT &&value)
void SetParticipantDetails(ParticipantDetailsT &&value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector