AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
CreateContactRequest.h
1
6#pragma once
7#include <aws/connect/ConnectRequest.h>
8#include <aws/connect/Connect_EXPORTS.h>
9#include <aws/connect/model/Channel.h>
10#include <aws/connect/model/ContactInitiationMethod.h>
11#include <aws/connect/model/InitiateAs.h>
12#include <aws/connect/model/Reference.h>
13#include <aws/connect/model/SegmentAttributeValue.h>
14#include <aws/connect/model/UserInfo.h>
15#include <aws/core/utils/UUID.h>
16#include <aws/core/utils/memory/stl/AWSMap.h>
17#include <aws/core/utils/memory/stl/AWSString.h>
18
19#include <utility>
20
21namespace Aws {
22namespace Connect {
23namespace Model {
24
28 public:
29 AWS_CONNECT_API CreateContactRequest() = default;
30
31 // Service request name is the Operation name which will send this request out,
32 // each operation should has unique request name, so that we can get operation's name from this request.
33 // Note: this is not true for response, multiple operations may have the same response name,
34 // so we can not get operation's name from response.
35 inline virtual const char* GetServiceRequestName() const override { return "CreateContact"; }
36
37 AWS_CONNECT_API Aws::String SerializePayload() const override;
38
40
45 inline const Aws::String& GetInstanceId() const { return m_instanceId; }
46 inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; }
47 template <typename InstanceIdT = Aws::String>
48 void SetInstanceId(InstanceIdT&& value) {
49 m_instanceIdHasBeenSet = true;
50 m_instanceId = std::forward<InstanceIdT>(value);
51 }
52 template <typename InstanceIdT = Aws::String>
53 CreateContactRequest& WithInstanceId(InstanceIdT&& value) {
54 SetInstanceId(std::forward<InstanceIdT>(value));
55 return *this;
56 }
58
60
67 inline const Aws::String& GetClientToken() const { return m_clientToken; }
68 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
69 template <typename ClientTokenT = Aws::String>
70 void SetClientToken(ClientTokenT&& value) {
71 m_clientTokenHasBeenSet = true;
72 m_clientToken = std::forward<ClientTokenT>(value);
73 }
74 template <typename ClientTokenT = Aws::String>
75 CreateContactRequest& WithClientToken(ClientTokenT&& value) {
76 SetClientToken(std::forward<ClientTokenT>(value));
77 return *this;
78 }
80
82
85 inline const Aws::String& GetRelatedContactId() const { return m_relatedContactId; }
86 inline bool RelatedContactIdHasBeenSet() const { return m_relatedContactIdHasBeenSet; }
87 template <typename RelatedContactIdT = Aws::String>
88 void SetRelatedContactId(RelatedContactIdT&& value) {
89 m_relatedContactIdHasBeenSet = true;
90 m_relatedContactId = std::forward<RelatedContactIdT>(value);
91 }
92 template <typename RelatedContactIdT = Aws::String>
93 CreateContactRequest& WithRelatedContactId(RelatedContactIdT&& value) {
94 SetRelatedContactId(std::forward<RelatedContactIdT>(value));
95 return *this;
96 }
98
100
107 inline const Aws::Map<Aws::String, Aws::String>& GetAttributes() const { return m_attributes; }
108 inline bool AttributesHasBeenSet() const { return m_attributesHasBeenSet; }
109 template <typename AttributesT = Aws::Map<Aws::String, Aws::String>>
110 void SetAttributes(AttributesT&& value) {
111 m_attributesHasBeenSet = true;
112 m_attributes = std::forward<AttributesT>(value);
113 }
114 template <typename AttributesT = Aws::Map<Aws::String, Aws::String>>
115 CreateContactRequest& WithAttributes(AttributesT&& value) {
116 SetAttributes(std::forward<AttributesT>(value));
117 return *this;
118 }
119 template <typename AttributesKeyT = Aws::String, typename AttributesValueT = Aws::String>
120 CreateContactRequest& AddAttributes(AttributesKeyT&& key, AttributesValueT&& value) {
121 m_attributesHasBeenSet = true;
122 m_attributes.emplace(std::forward<AttributesKeyT>(key), std::forward<AttributesValueT>(value));
123 return *this;
124 }
126
128
134 inline const Aws::Map<Aws::String, Reference>& GetReferences() const { return m_references; }
135 inline bool ReferencesHasBeenSet() const { return m_referencesHasBeenSet; }
136 template <typename ReferencesT = Aws::Map<Aws::String, Reference>>
137 void SetReferences(ReferencesT&& value) {
138 m_referencesHasBeenSet = true;
139 m_references = std::forward<ReferencesT>(value);
140 }
141 template <typename ReferencesT = Aws::Map<Aws::String, Reference>>
142 CreateContactRequest& WithReferences(ReferencesT&& value) {
143 SetReferences(std::forward<ReferencesT>(value));
144 return *this;
145 }
146 template <typename ReferencesKeyT = Aws::String, typename ReferencesValueT = Reference>
147 CreateContactRequest& AddReferences(ReferencesKeyT&& key, ReferencesValueT&& value) {
148 m_referencesHasBeenSet = true;
149 m_references.emplace(std::forward<ReferencesKeyT>(key), std::forward<ReferencesValueT>(value));
150 return *this;
151 }
153
155
160 inline Channel GetChannel() const { return m_channel; }
161 inline bool ChannelHasBeenSet() const { return m_channelHasBeenSet; }
162 inline void SetChannel(Channel value) {
163 m_channelHasBeenSet = true;
164 m_channel = value;
165 }
167 SetChannel(value);
168 return *this;
169 }
171
173
182 inline ContactInitiationMethod GetInitiationMethod() const { return m_initiationMethod; }
183 inline bool InitiationMethodHasBeenSet() const { return m_initiationMethodHasBeenSet; }
185 m_initiationMethodHasBeenSet = true;
186 m_initiationMethod = value;
187 }
189 SetInitiationMethod(value);
190 return *this;
191 }
193
195
198 inline int GetExpiryDurationInMinutes() const { return m_expiryDurationInMinutes; }
199 inline bool ExpiryDurationInMinutesHasBeenSet() const { return m_expiryDurationInMinutesHasBeenSet; }
200 inline void SetExpiryDurationInMinutes(int value) {
201 m_expiryDurationInMinutesHasBeenSet = true;
202 m_expiryDurationInMinutes = value;
203 }
206 return *this;
207 }
209
211
216 inline const UserInfo& GetUserInfo() const { return m_userInfo; }
217 inline bool UserInfoHasBeenSet() const { return m_userInfoHasBeenSet; }
218 template <typename UserInfoT = UserInfo>
219 void SetUserInfo(UserInfoT&& value) {
220 m_userInfoHasBeenSet = true;
221 m_userInfo = std::forward<UserInfoT>(value);
222 }
223 template <typename UserInfoT = UserInfo>
224 CreateContactRequest& WithUserInfo(UserInfoT&& value) {
225 SetUserInfo(std::forward<UserInfoT>(value));
226 return *this;
227 }
229
231
235 inline InitiateAs GetInitiateAs() const { return m_initiateAs; }
236 inline bool InitiateAsHasBeenSet() const { return m_initiateAsHasBeenSet; }
237 inline void SetInitiateAs(InitiateAs value) {
238 m_initiateAsHasBeenSet = true;
239 m_initiateAs = value;
240 }
242 SetInitiateAs(value);
243 return *this;
244 }
246
248
251 inline const Aws::String& GetName() const { return m_name; }
252 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
253 template <typename NameT = Aws::String>
254 void SetName(NameT&& value) {
255 m_nameHasBeenSet = true;
256 m_name = std::forward<NameT>(value);
257 }
258 template <typename NameT = Aws::String>
260 SetName(std::forward<NameT>(value));
261 return *this;
262 }
264
266
269 inline const Aws::String& GetDescription() const { return m_description; }
270 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
271 template <typename DescriptionT = Aws::String>
272 void SetDescription(DescriptionT&& value) {
273 m_descriptionHasBeenSet = true;
274 m_description = std::forward<DescriptionT>(value);
275 }
276 template <typename DescriptionT = Aws::String>
277 CreateContactRequest& WithDescription(DescriptionT&& value) {
278 SetDescription(std::forward<DescriptionT>(value));
279 return *this;
280 }
282
284
295 inline const Aws::Map<Aws::String, SegmentAttributeValue>& GetSegmentAttributes() const { return m_segmentAttributes; }
296 inline bool SegmentAttributesHasBeenSet() const { return m_segmentAttributesHasBeenSet; }
297 template <typename SegmentAttributesT = Aws::Map<Aws::String, SegmentAttributeValue>>
298 void SetSegmentAttributes(SegmentAttributesT&& value) {
299 m_segmentAttributesHasBeenSet = true;
300 m_segmentAttributes = std::forward<SegmentAttributesT>(value);
301 }
302 template <typename SegmentAttributesT = Aws::Map<Aws::String, SegmentAttributeValue>>
303 CreateContactRequest& WithSegmentAttributes(SegmentAttributesT&& value) {
304 SetSegmentAttributes(std::forward<SegmentAttributesT>(value));
305 return *this;
306 }
307 template <typename SegmentAttributesKeyT = Aws::String, typename SegmentAttributesValueT = SegmentAttributeValue>
308 CreateContactRequest& AddSegmentAttributes(SegmentAttributesKeyT&& key, SegmentAttributesValueT&& value) {
309 m_segmentAttributesHasBeenSet = true;
310 m_segmentAttributes.emplace(std::forward<SegmentAttributesKeyT>(key), std::forward<SegmentAttributesValueT>(value));
311 return *this;
312 }
314
316
323 inline const Aws::String& GetPreviousContactId() const { return m_previousContactId; }
324 inline bool PreviousContactIdHasBeenSet() const { return m_previousContactIdHasBeenSet; }
325 template <typename PreviousContactIdT = Aws::String>
326 void SetPreviousContactId(PreviousContactIdT&& value) {
327 m_previousContactIdHasBeenSet = true;
328 m_previousContactId = std::forward<PreviousContactIdT>(value);
329 }
330 template <typename PreviousContactIdT = Aws::String>
331 CreateContactRequest& WithPreviousContactId(PreviousContactIdT&& value) {
332 SetPreviousContactId(std::forward<PreviousContactIdT>(value));
333 return *this;
334 }
336 private:
337 Aws::String m_instanceId;
338
340
341 Aws::String m_relatedContactId;
342
344
346
347 Channel m_channel{Channel::NOT_SET};
348
350
351 int m_expiryDurationInMinutes{0};
352
353 UserInfo m_userInfo;
354
355 InitiateAs m_initiateAs{InitiateAs::NOT_SET};
356
357 Aws::String m_name;
358
359 Aws::String m_description;
360
362
363 Aws::String m_previousContactId;
364 bool m_instanceIdHasBeenSet = false;
365 bool m_clientTokenHasBeenSet = true;
366 bool m_relatedContactIdHasBeenSet = false;
367 bool m_attributesHasBeenSet = false;
368 bool m_referencesHasBeenSet = false;
369 bool m_channelHasBeenSet = false;
370 bool m_initiationMethodHasBeenSet = false;
371 bool m_expiryDurationInMinutesHasBeenSet = false;
372 bool m_userInfoHasBeenSet = false;
373 bool m_initiateAsHasBeenSet = false;
374 bool m_nameHasBeenSet = false;
375 bool m_descriptionHasBeenSet = false;
376 bool m_segmentAttributesHasBeenSet = false;
377 bool m_previousContactIdHasBeenSet = false;
378};
379
380} // namespace Model
381} // namespace Connect
382} // namespace Aws
CreateContactRequest & WithInitiationMethod(ContactInitiationMethod value)
CreateContactRequest & WithExpiryDurationInMinutes(int value)
virtual const char * GetServiceRequestName() const override
CreateContactRequest & WithPreviousContactId(PreviousContactIdT &&value)
const Aws::Map< Aws::String, Reference > & GetReferences() const
CreateContactRequest & WithUserInfo(UserInfoT &&value)
CreateContactRequest & AddSegmentAttributes(SegmentAttributesKeyT &&key, SegmentAttributesValueT &&value)
CreateContactRequest & WithAttributes(AttributesT &&value)
void SetRelatedContactId(RelatedContactIdT &&value)
CreateContactRequest & WithSegmentAttributes(SegmentAttributesT &&value)
void SetSegmentAttributes(SegmentAttributesT &&value)
CreateContactRequest & WithChannel(Channel value)
CreateContactRequest & WithClientToken(ClientTokenT &&value)
CreateContactRequest & WithInitiateAs(InitiateAs value)
CreateContactRequest & WithRelatedContactId(RelatedContactIdT &&value)
ContactInitiationMethod GetInitiationMethod() const
const Aws::Map< Aws::String, Aws::String > & GetAttributes() const
CreateContactRequest & WithDescription(DescriptionT &&value)
CreateContactRequest & AddAttributes(AttributesKeyT &&key, AttributesValueT &&value)
AWS_CONNECT_API CreateContactRequest()=default
CreateContactRequest & AddReferences(ReferencesKeyT &&key, ReferencesValueT &&value)
AWS_CONNECT_API Aws::String SerializePayload() const override
CreateContactRequest & WithInstanceId(InstanceIdT &&value)
CreateContactRequest & WithName(NameT &&value)
const Aws::Map< Aws::String, SegmentAttributeValue > & GetSegmentAttributes() const
const Aws::String & GetRelatedContactId() const
void SetInitiationMethod(ContactInitiationMethod value)
void SetPreviousContactId(PreviousContactIdT &&value)
CreateContactRequest & WithReferences(ReferencesT &&value)
static Aws::Utils::UUID PseudoRandomUUID()
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