AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
AgentContactReference.h
1
6#pragma once
7#include <aws/connect/Connect_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/connect/model/Channel.h>
10#include <aws/connect/model/ContactInitiationMethod.h>
11#include <aws/connect/model/ContactState.h>
12#include <aws/core/utils/DateTime.h>
13#include <aws/connect/model/QueueReference.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Json
21{
22 class JsonValue;
23 class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace Connect
27{
28namespace Model
29{
30
39 {
40 public:
41 AWS_CONNECT_API AgentContactReference() = default;
44 AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
45
46
48
51 inline const Aws::String& GetContactId() const { return m_contactId; }
52 inline bool ContactIdHasBeenSet() const { return m_contactIdHasBeenSet; }
53 template<typename ContactIdT = Aws::String>
54 void SetContactId(ContactIdT&& value) { m_contactIdHasBeenSet = true; m_contactId = std::forward<ContactIdT>(value); }
55 template<typename ContactIdT = Aws::String>
56 AgentContactReference& WithContactId(ContactIdT&& value) { SetContactId(std::forward<ContactIdT>(value)); return *this;}
58
60
63 inline Channel GetChannel() const { return m_channel; }
64 inline bool ChannelHasBeenSet() const { return m_channelHasBeenSet; }
65 inline void SetChannel(Channel value) { m_channelHasBeenSet = true; m_channel = value; }
66 inline AgentContactReference& WithChannel(Channel value) { SetChannel(value); return *this;}
68
70
73 inline ContactInitiationMethod GetInitiationMethod() const { return m_initiationMethod; }
74 inline bool InitiationMethodHasBeenSet() const { return m_initiationMethodHasBeenSet; }
75 inline void SetInitiationMethod(ContactInitiationMethod value) { m_initiationMethodHasBeenSet = true; m_initiationMethod = value; }
78
80
88 inline ContactState GetAgentContactState() const { return m_agentContactState; }
89 inline bool AgentContactStateHasBeenSet() const { return m_agentContactStateHasBeenSet; }
90 inline void SetAgentContactState(ContactState value) { m_agentContactStateHasBeenSet = true; m_agentContactState = value; }
93
95
98 inline const Aws::Utils::DateTime& GetStateStartTimestamp() const { return m_stateStartTimestamp; }
99 inline bool StateStartTimestampHasBeenSet() const { return m_stateStartTimestampHasBeenSet; }
100 template<typename StateStartTimestampT = Aws::Utils::DateTime>
101 void SetStateStartTimestamp(StateStartTimestampT&& value) { m_stateStartTimestampHasBeenSet = true; m_stateStartTimestamp = std::forward<StateStartTimestampT>(value); }
102 template<typename StateStartTimestampT = Aws::Utils::DateTime>
103 AgentContactReference& WithStateStartTimestamp(StateStartTimestampT&& value) { SetStateStartTimestamp(std::forward<StateStartTimestampT>(value)); return *this;}
105
107
110 inline const Aws::Utils::DateTime& GetConnectedToAgentTimestamp() const { return m_connectedToAgentTimestamp; }
111 inline bool ConnectedToAgentTimestampHasBeenSet() const { return m_connectedToAgentTimestampHasBeenSet; }
112 template<typename ConnectedToAgentTimestampT = Aws::Utils::DateTime>
113 void SetConnectedToAgentTimestamp(ConnectedToAgentTimestampT&& value) { m_connectedToAgentTimestampHasBeenSet = true; m_connectedToAgentTimestamp = std::forward<ConnectedToAgentTimestampT>(value); }
114 template<typename ConnectedToAgentTimestampT = Aws::Utils::DateTime>
115 AgentContactReference& WithConnectedToAgentTimestamp(ConnectedToAgentTimestampT&& value) { SetConnectedToAgentTimestamp(std::forward<ConnectedToAgentTimestampT>(value)); return *this;}
117
119
120 inline const QueueReference& GetQueue() const { return m_queue; }
121 inline bool QueueHasBeenSet() const { return m_queueHasBeenSet; }
122 template<typename QueueT = QueueReference>
123 void SetQueue(QueueT&& value) { m_queueHasBeenSet = true; m_queue = std::forward<QueueT>(value); }
124 template<typename QueueT = QueueReference>
125 AgentContactReference& WithQueue(QueueT&& value) { SetQueue(std::forward<QueueT>(value)); return *this;}
127 private:
128
129 Aws::String m_contactId;
130 bool m_contactIdHasBeenSet = false;
131
132 Channel m_channel{Channel::NOT_SET};
133 bool m_channelHasBeenSet = false;
134
136 bool m_initiationMethodHasBeenSet = false;
137
138 ContactState m_agentContactState{ContactState::NOT_SET};
139 bool m_agentContactStateHasBeenSet = false;
140
141 Aws::Utils::DateTime m_stateStartTimestamp{};
142 bool m_stateStartTimestampHasBeenSet = false;
143
144 Aws::Utils::DateTime m_connectedToAgentTimestamp{};
145 bool m_connectedToAgentTimestampHasBeenSet = false;
146
147 QueueReference m_queue;
148 bool m_queueHasBeenSet = false;
149 };
150
151} // namespace Model
152} // namespace Connect
153} // namespace Aws
const Aws::Utils::DateTime & GetConnectedToAgentTimestamp() const
void SetInitiationMethod(ContactInitiationMethod value)
AgentContactReference & WithChannel(Channel value)
void SetConnectedToAgentTimestamp(ConnectedToAgentTimestampT &&value)
AWS_CONNECT_API AgentContactReference & operator=(Aws::Utils::Json::JsonView jsonValue)
ContactInitiationMethod GetInitiationMethod() const
AgentContactReference & WithQueue(QueueT &&value)
AgentContactReference & WithInitiationMethod(ContactInitiationMethod value)
AgentContactReference & WithStateStartTimestamp(StateStartTimestampT &&value)
AWS_CONNECT_API AgentContactReference(Aws::Utils::Json::JsonView jsonValue)
AgentContactReference & WithConnectedToAgentTimestamp(ConnectedToAgentTimestampT &&value)
const Aws::Utils::DateTime & GetStateStartTimestamp() const
AgentContactReference & WithAgentContactState(ContactState value)
AWS_CONNECT_API AgentContactReference()=default
void SetStateStartTimestamp(StateStartTimestampT &&value)
AgentContactReference & WithContactId(ContactIdT &&value)
AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue