purecloudplatformclientv2 58.0.0 → 58.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -2
  3. data/docs/ConversationCallEventTopicCallMediaParticipant.md +1 -0
  4. data/docs/ConversationCallEventTopicConversationRoutingData.md +17 -0
  5. data/docs/ConversationCallEventTopicScoredAgent.md +14 -0
  6. data/docs/ConversationCallbackEventTopicCallbackMediaParticipant.md +1 -0
  7. data/docs/ConversationCallbackEventTopicConversationRoutingData.md +17 -0
  8. data/docs/ConversationCallbackEventTopicScoredAgent.md +14 -0
  9. data/docs/ConversationChatEventTopicChatMediaParticipant.md +1 -0
  10. data/docs/ConversationChatEventTopicConversationRoutingData.md +17 -0
  11. data/docs/ConversationChatEventTopicScoredAgent.md +14 -0
  12. data/docs/ConversationCobrowseEventTopicCobrowseMediaParticipant.md +1 -0
  13. data/docs/ConversationCobrowseEventTopicConversationRoutingData.md +17 -0
  14. data/docs/ConversationCobrowseEventTopicScoredAgent.md +14 -0
  15. data/docs/ConversationEmailEventTopicConversationRoutingData.md +17 -0
  16. data/docs/ConversationEmailEventTopicEmailMediaParticipant.md +1 -0
  17. data/docs/ConversationEmailEventTopicScoredAgent.md +14 -0
  18. data/docs/ConversationEventTopicConversationRoutingData.md +17 -0
  19. data/docs/ConversationEventTopicParticipant.md +1 -0
  20. data/docs/ConversationEventTopicScoredAgent.md +14 -0
  21. data/docs/ConversationEventTopicUriReference.md +14 -0
  22. data/docs/ConversationMessageEventTopicConversationRoutingData.md +17 -0
  23. data/docs/ConversationMessageEventTopicMessageMediaParticipant.md +1 -0
  24. data/docs/ConversationMessageEventTopicScoredAgent.md +14 -0
  25. data/docs/ConversationScreenShareEventTopicConversationRoutingData.md +17 -0
  26. data/docs/ConversationScreenShareEventTopicScoredAgent.md +14 -0
  27. data/docs/ConversationScreenShareEventTopicScreenShareMediaParticipant.md +1 -0
  28. data/docs/ConversationSocialExpressionEventTopicConversationRoutingData.md +17 -0
  29. data/docs/ConversationSocialExpressionEventTopicScoredAgent.md +14 -0
  30. data/docs/ConversationSocialExpressionEventTopicSocialMediaParticipant.md +1 -0
  31. data/docs/ConversationVideoEventTopicConversationRoutingData.md +17 -0
  32. data/docs/ConversationVideoEventTopicScoredAgent.md +14 -0
  33. data/docs/ConversationVideoEventTopicVideoMediaParticipant.md +1 -0
  34. data/docs/QueueConversationCallEventTopicCallMediaParticipant.md +1 -0
  35. data/docs/QueueConversationCallEventTopicConversationRoutingData.md +17 -0
  36. data/docs/QueueConversationCallEventTopicScoredAgent.md +14 -0
  37. data/docs/QueueConversationCallbackEventTopicCallbackMediaParticipant.md +1 -0
  38. data/docs/QueueConversationCallbackEventTopicConversationRoutingData.md +17 -0
  39. data/docs/QueueConversationCallbackEventTopicScoredAgent.md +14 -0
  40. data/docs/QueueConversationChatEventTopicChatMediaParticipant.md +1 -0
  41. data/docs/QueueConversationChatEventTopicConversationRoutingData.md +17 -0
  42. data/docs/QueueConversationChatEventTopicScoredAgent.md +14 -0
  43. data/docs/QueueConversationCobrowseEventTopicCobrowseMediaParticipant.md +1 -0
  44. data/docs/QueueConversationCobrowseEventTopicConversationRoutingData.md +17 -0
  45. data/docs/QueueConversationCobrowseEventTopicScoredAgent.md +14 -0
  46. data/docs/QueueConversationEmailEventTopicConversationRoutingData.md +17 -0
  47. data/docs/QueueConversationEmailEventTopicEmailMediaParticipant.md +1 -0
  48. data/docs/QueueConversationEmailEventTopicScoredAgent.md +14 -0
  49. data/docs/QueueConversationEventTopicConversationRoutingData.md +17 -0
  50. data/docs/QueueConversationEventTopicParticipant.md +1 -0
  51. data/docs/QueueConversationEventTopicScoredAgent.md +14 -0
  52. data/docs/QueueConversationEventTopicUriReference.md +14 -0
  53. data/docs/QueueConversationMessageEventTopicConversationRoutingData.md +17 -0
  54. data/docs/QueueConversationMessageEventTopicMessageMediaParticipant.md +1 -0
  55. data/docs/QueueConversationMessageEventTopicScoredAgent.md +14 -0
  56. data/docs/QueueConversationScreenShareEventTopicConversationRoutingData.md +17 -0
  57. data/docs/QueueConversationScreenShareEventTopicScoredAgent.md +14 -0
  58. data/docs/QueueConversationScreenShareEventTopicScreenShareMediaParticipant.md +1 -0
  59. data/docs/QueueConversationSocialExpressionEventTopicConversationRoutingData.md +17 -0
  60. data/docs/QueueConversationSocialExpressionEventTopicParticipant.md +1 -0
  61. data/docs/QueueConversationSocialExpressionEventTopicScoredAgent.md +14 -0
  62. data/docs/QueueConversationSocialExpressionEventTopicUriReference.md +14 -0
  63. data/docs/QueueConversationVideoEventTopicConversationRoutingData.md +17 -0
  64. data/docs/QueueConversationVideoEventTopicParticipant.md +1 -0
  65. data/docs/QueueConversationVideoEventTopicScoredAgent.md +14 -0
  66. data/docs/QueueConversationVideoEventTopicUriReference.md +14 -0
  67. data/lib/purecloudplatformclientv2.rb +44 -0
  68. data/lib/purecloudplatformclientv2/api_client.rb +1 -1
  69. data/lib/purecloudplatformclientv2/models/conversation_call_event_topic_call_media_participant.rb +26 -1
  70. data/lib/purecloudplatformclientv2/models/conversation_call_event_topic_conversation_routing_data.rb +305 -0
  71. data/lib/purecloudplatformclientv2/models/conversation_call_event_topic_scored_agent.rb +226 -0
  72. data/lib/purecloudplatformclientv2/models/conversation_callback_event_topic_callback_media_participant.rb +26 -1
  73. data/lib/purecloudplatformclientv2/models/conversation_callback_event_topic_conversation_routing_data.rb +305 -0
  74. data/lib/purecloudplatformclientv2/models/conversation_callback_event_topic_scored_agent.rb +226 -0
  75. data/lib/purecloudplatformclientv2/models/conversation_chat_event_topic_chat_media_participant.rb +26 -1
  76. data/lib/purecloudplatformclientv2/models/conversation_chat_event_topic_conversation_routing_data.rb +305 -0
  77. data/lib/purecloudplatformclientv2/models/conversation_chat_event_topic_scored_agent.rb +226 -0
  78. data/lib/purecloudplatformclientv2/models/conversation_cobrowse_event_topic_cobrowse_media_participant.rb +26 -1
  79. data/lib/purecloudplatformclientv2/models/conversation_cobrowse_event_topic_conversation_routing_data.rb +305 -0
  80. data/lib/purecloudplatformclientv2/models/conversation_cobrowse_event_topic_scored_agent.rb +226 -0
  81. data/lib/purecloudplatformclientv2/models/conversation_email_event_topic_conversation_routing_data.rb +305 -0
  82. data/lib/purecloudplatformclientv2/models/conversation_email_event_topic_email_media_participant.rb +26 -1
  83. data/lib/purecloudplatformclientv2/models/conversation_email_event_topic_scored_agent.rb +226 -0
  84. data/lib/purecloudplatformclientv2/models/conversation_event_topic_conversation_routing_data.rb +305 -0
  85. data/lib/purecloudplatformclientv2/models/conversation_event_topic_participant.rb +26 -1
  86. data/lib/purecloudplatformclientv2/models/conversation_event_topic_scored_agent.rb +226 -0
  87. data/lib/purecloudplatformclientv2/models/conversation_event_topic_uri_reference.rb +226 -0
  88. data/lib/purecloudplatformclientv2/models/conversation_message_event_topic_conversation_routing_data.rb +305 -0
  89. data/lib/purecloudplatformclientv2/models/conversation_message_event_topic_message_media_participant.rb +26 -1
  90. data/lib/purecloudplatformclientv2/models/conversation_message_event_topic_scored_agent.rb +226 -0
  91. data/lib/purecloudplatformclientv2/models/conversation_screen_share_event_topic_conversation_routing_data.rb +305 -0
  92. data/lib/purecloudplatformclientv2/models/conversation_screen_share_event_topic_scored_agent.rb +226 -0
  93. data/lib/purecloudplatformclientv2/models/conversation_screen_share_event_topic_screen_share_media_participant.rb +26 -1
  94. data/lib/purecloudplatformclientv2/models/conversation_social_expression_event_topic_conversation_routing_data.rb +305 -0
  95. data/lib/purecloudplatformclientv2/models/conversation_social_expression_event_topic_scored_agent.rb +226 -0
  96. data/lib/purecloudplatformclientv2/models/conversation_social_expression_event_topic_social_media_participant.rb +26 -1
  97. data/lib/purecloudplatformclientv2/models/conversation_video_event_topic_conversation_routing_data.rb +305 -0
  98. data/lib/purecloudplatformclientv2/models/conversation_video_event_topic_scored_agent.rb +226 -0
  99. data/lib/purecloudplatformclientv2/models/conversation_video_event_topic_video_media_participant.rb +26 -1
  100. data/lib/purecloudplatformclientv2/models/queue_conversation_call_event_topic_call_media_participant.rb +26 -1
  101. data/lib/purecloudplatformclientv2/models/queue_conversation_call_event_topic_conversation_routing_data.rb +305 -0
  102. data/lib/purecloudplatformclientv2/models/queue_conversation_call_event_topic_scored_agent.rb +226 -0
  103. data/lib/purecloudplatformclientv2/models/queue_conversation_callback_event_topic_callback_media_participant.rb +26 -1
  104. data/lib/purecloudplatformclientv2/models/queue_conversation_callback_event_topic_conversation_routing_data.rb +305 -0
  105. data/lib/purecloudplatformclientv2/models/queue_conversation_callback_event_topic_scored_agent.rb +226 -0
  106. data/lib/purecloudplatformclientv2/models/queue_conversation_chat_event_topic_chat_media_participant.rb +26 -1
  107. data/lib/purecloudplatformclientv2/models/queue_conversation_chat_event_topic_conversation_routing_data.rb +305 -0
  108. data/lib/purecloudplatformclientv2/models/queue_conversation_chat_event_topic_scored_agent.rb +226 -0
  109. data/lib/purecloudplatformclientv2/models/queue_conversation_cobrowse_event_topic_cobrowse_media_participant.rb +26 -1
  110. data/lib/purecloudplatformclientv2/models/queue_conversation_cobrowse_event_topic_conversation_routing_data.rb +305 -0
  111. data/lib/purecloudplatformclientv2/models/queue_conversation_cobrowse_event_topic_scored_agent.rb +226 -0
  112. data/lib/purecloudplatformclientv2/models/queue_conversation_email_event_topic_conversation_routing_data.rb +305 -0
  113. data/lib/purecloudplatformclientv2/models/queue_conversation_email_event_topic_email_media_participant.rb +26 -1
  114. data/lib/purecloudplatformclientv2/models/queue_conversation_email_event_topic_scored_agent.rb +226 -0
  115. data/lib/purecloudplatformclientv2/models/queue_conversation_event_topic_conversation_routing_data.rb +305 -0
  116. data/lib/purecloudplatformclientv2/models/queue_conversation_event_topic_participant.rb +26 -1
  117. data/lib/purecloudplatformclientv2/models/queue_conversation_event_topic_scored_agent.rb +226 -0
  118. data/lib/purecloudplatformclientv2/models/queue_conversation_event_topic_uri_reference.rb +226 -0
  119. data/lib/purecloudplatformclientv2/models/queue_conversation_message_event_topic_conversation_routing_data.rb +305 -0
  120. data/lib/purecloudplatformclientv2/models/queue_conversation_message_event_topic_message_media_participant.rb +26 -1
  121. data/lib/purecloudplatformclientv2/models/queue_conversation_message_event_topic_scored_agent.rb +226 -0
  122. data/lib/purecloudplatformclientv2/models/queue_conversation_screen_share_event_topic_conversation_routing_data.rb +305 -0
  123. data/lib/purecloudplatformclientv2/models/queue_conversation_screen_share_event_topic_scored_agent.rb +226 -0
  124. data/lib/purecloudplatformclientv2/models/queue_conversation_screen_share_event_topic_screen_share_media_participant.rb +26 -1
  125. data/lib/purecloudplatformclientv2/models/queue_conversation_social_expression_event_topic_conversation_routing_data.rb +305 -0
  126. data/lib/purecloudplatformclientv2/models/queue_conversation_social_expression_event_topic_participant.rb +26 -1
  127. data/lib/purecloudplatformclientv2/models/queue_conversation_social_expression_event_topic_scored_agent.rb +226 -0
  128. data/lib/purecloudplatformclientv2/models/queue_conversation_social_expression_event_topic_uri_reference.rb +226 -0
  129. data/lib/purecloudplatformclientv2/models/queue_conversation_video_event_topic_conversation_routing_data.rb +305 -0
  130. data/lib/purecloudplatformclientv2/models/queue_conversation_video_event_topic_participant.rb +26 -1
  131. data/lib/purecloudplatformclientv2/models/queue_conversation_video_event_topic_scored_agent.rb +226 -0
  132. data/lib/purecloudplatformclientv2/models/queue_conversation_video_event_topic_uri_reference.rb +226 -0
  133. data/lib/purecloudplatformclientv2/models/reporting_data_export_topic_data_export_notification.rb +2 -2
  134. data/lib/purecloudplatformclientv2/version.rb +1 -1
  135. metadata +90 -2
@@ -0,0 +1,305 @@
1
+ =begin
2
+ PureCloud Platform API
3
+
4
+ With the PureCloud Platform API, you can control all aspects of your PureCloud environment. With the APIs you can access the system configuration, manage conversations and more.
5
+
6
+ OpenAPI spec version: v2
7
+ Contact: DeveloperEvangelists@genesys.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+
10
+ License: UNLICENSED
11
+ https://help.mypurecloud.com/articles/terms-and-conditions/
12
+
13
+ Terms of Service: https://help.mypurecloud.com/articles/terms-and-conditions/
14
+
15
+ =end
16
+
17
+ require 'date'
18
+
19
+ module PureCloud
20
+ class ConversationMessageEventTopicConversationRoutingData
21
+ attr_accessor :queue
22
+
23
+ attr_accessor :language
24
+
25
+ attr_accessor :priority
26
+
27
+ attr_accessor :skills
28
+
29
+ attr_accessor :scored_agents
30
+
31
+ # Attribute mapping from ruby-style variable name to JSON key.
32
+ def self.attribute_map
33
+ {
34
+
35
+ :'queue' => :'queue',
36
+
37
+ :'language' => :'language',
38
+
39
+ :'priority' => :'priority',
40
+
41
+ :'skills' => :'skills',
42
+
43
+ :'scored_agents' => :'scoredAgents'
44
+
45
+ }
46
+ end
47
+
48
+ # Attribute type mapping.
49
+ def self.swagger_types
50
+ {
51
+
52
+ :'queue' => :'ConversationMessageEventTopicUriReference',
53
+
54
+ :'language' => :'ConversationMessageEventTopicUriReference',
55
+
56
+ :'priority' => :'Integer',
57
+
58
+ :'skills' => :'Array<ConversationMessageEventTopicUriReference>',
59
+
60
+ :'scored_agents' => :'Array<ConversationMessageEventTopicScoredAgent>'
61
+
62
+ }
63
+ end
64
+
65
+ # Initializes the object
66
+ # @param [Hash] attributes Model attributes in the form of hash
67
+ def initialize(attributes = {})
68
+ return unless attributes.is_a?(Hash)
69
+
70
+ # convert string to symbol for hash key
71
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
72
+
73
+
74
+ if attributes.has_key?(:'queue')
75
+
76
+
77
+ self.queue = attributes[:'queue']
78
+
79
+
80
+ end
81
+
82
+
83
+ if attributes.has_key?(:'language')
84
+
85
+
86
+ self.language = attributes[:'language']
87
+
88
+
89
+ end
90
+
91
+
92
+ if attributes.has_key?(:'priority')
93
+
94
+
95
+ self.priority = attributes[:'priority']
96
+
97
+
98
+ end
99
+
100
+
101
+ if attributes.has_key?(:'skills')
102
+
103
+ if (value = attributes[:'skills']).is_a?(Array)
104
+ self.skills = value
105
+ end
106
+
107
+
108
+
109
+ end
110
+
111
+
112
+ if attributes.has_key?(:'scoredAgents')
113
+
114
+ if (value = attributes[:'scoredAgents']).is_a?(Array)
115
+ self.scored_agents = value
116
+ end
117
+
118
+
119
+
120
+ end
121
+
122
+
123
+ end
124
+
125
+ # Show invalid properties with the reasons. Usually used together with valid?
126
+ # @return Array for valid properies with the reasons
127
+ def list_invalid_properties
128
+ invalid_properties = Array.new
129
+
130
+
131
+ return invalid_properties
132
+ end
133
+
134
+ # Check to see if the all the properties in the model are valid
135
+ # @return true if the model is valid
136
+ def valid?
137
+
138
+
139
+
140
+
141
+
142
+
143
+
144
+
145
+
146
+
147
+
148
+
149
+
150
+
151
+
152
+
153
+
154
+
155
+
156
+
157
+
158
+ end
159
+
160
+
161
+
162
+
163
+
164
+
165
+
166
+
167
+
168
+
169
+
170
+
171
+
172
+
173
+
174
+
175
+
176
+
177
+
178
+
179
+
180
+
181
+
182
+
183
+
184
+
185
+
186
+ # Checks equality by comparing each attribute.
187
+ # @param [Object] Object to be compared
188
+ def ==(o)
189
+ return true if self.equal?(o)
190
+ self.class == o.class &&
191
+ queue == o.queue &&
192
+ language == o.language &&
193
+ priority == o.priority &&
194
+ skills == o.skills &&
195
+ scored_agents == o.scored_agents
196
+ end
197
+
198
+ # @see the `==` method
199
+ # @param [Object] Object to be compared
200
+ def eql?(o)
201
+ self == o
202
+ end
203
+
204
+ # Calculates hash code according to all attributes.
205
+ # @return [Fixnum] Hash code
206
+ def hash
207
+ [queue, language, priority, skills, scored_agents].hash
208
+ end
209
+
210
+ # build the object from hash
211
+ def build_from_hash(attributes)
212
+ return nil unless attributes.is_a?(Hash)
213
+ self.class.swagger_types.each_pair do |key, type|
214
+ if type =~ /^Array<(.*)>/i
215
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
216
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
217
+ else
218
+ #TODO show warning in debug mode
219
+ end
220
+ elsif !attributes[self.class.attribute_map[key]].nil?
221
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
222
+ else
223
+ # data not found in attributes(hash), not an issue as the data can be optional
224
+ end
225
+ end
226
+
227
+ self
228
+ end
229
+
230
+ def _deserialize(type, value)
231
+ case type.to_sym
232
+ when :DateTime
233
+ DateTime.parse(value)
234
+ when :Date
235
+ Date.parse(value)
236
+ when :String
237
+ value.to_s
238
+ when :Integer
239
+ value.to_i
240
+ when :Float
241
+ value.to_f
242
+ when :BOOLEAN
243
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
244
+ true
245
+ else
246
+ false
247
+ end
248
+ when :Object
249
+ # generic object (usually a Hash), return directly
250
+ value
251
+ when /\AArray<(?<inner_type>.+)>\z/
252
+ inner_type = Regexp.last_match[:inner_type]
253
+ value.map { |v| _deserialize(inner_type, v) }
254
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
255
+ k_type = Regexp.last_match[:k_type]
256
+ v_type = Regexp.last_match[:v_type]
257
+ {}.tap do |hash|
258
+ value.each do |k, v|
259
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
260
+ end
261
+ end
262
+ else # model
263
+ _model = Object.const_get("PureCloud").const_get(type).new
264
+ _model.build_from_hash(value)
265
+ end
266
+ end
267
+
268
+ def to_s
269
+ to_hash.to_s
270
+ end
271
+
272
+ # to_body is an alias to to_body (backward compatibility))
273
+ def to_body
274
+ to_hash
275
+ end
276
+
277
+ # return the object in the form of hash
278
+ def to_hash
279
+ hash = {}
280
+ self.class.attribute_map.each_pair do |attr, param|
281
+ value = self.send(attr)
282
+ next if value.nil?
283
+ hash[param] = _to_hash(value)
284
+ end
285
+ hash
286
+ end
287
+
288
+ # Method to output non-array value in the form of hash
289
+ # For object, use to_hash. Otherwise, just return the value
290
+ def _to_hash(value)
291
+ if value.is_a?(Array)
292
+ value.compact.map{ |v| _to_hash(v) }
293
+ elsif value.is_a?(Hash)
294
+ {}.tap do |hash|
295
+ value.each { |k, v| hash[k] = _to_hash(v) }
296
+ end
297
+ elsif value.respond_to? :to_hash
298
+ value.to_hash
299
+ else
300
+ value
301
+ end
302
+ end
303
+
304
+ end
305
+ end
@@ -70,6 +70,8 @@ module PureCloud
70
70
 
71
71
  attr_accessor :wrapup
72
72
 
73
+ attr_accessor :conversation_routing_data
74
+
73
75
  attr_accessor :peer
74
76
 
75
77
  attr_accessor :screen_recording_state
@@ -142,6 +144,8 @@ module PureCloud
142
144
 
143
145
  :'wrapup' => :'wrapup',
144
146
 
147
+ :'conversation_routing_data' => :'conversationRoutingData',
148
+
145
149
  :'peer' => :'peer',
146
150
 
147
151
  :'screen_recording_state' => :'screenRecordingState',
@@ -217,6 +221,8 @@ module PureCloud
217
221
 
218
222
  :'wrapup' => :'ConversationMessageEventTopicWrapup',
219
223
 
224
+ :'conversation_routing_data' => :'ConversationMessageEventTopicConversationRoutingData',
225
+
220
226
  :'peer' => :'String',
221
227
 
222
228
  :'screen_recording_state' => :'String',
@@ -481,6 +487,15 @@ module PureCloud
481
487
  end
482
488
 
483
489
 
490
+ if attributes.has_key?(:'conversationRoutingData')
491
+
492
+
493
+ self.conversation_routing_data = attributes[:'conversationRoutingData']
494
+
495
+
496
+ end
497
+
498
+
484
499
  if attributes.has_key?(:'peer')
485
500
 
486
501
 
@@ -694,6 +709,10 @@ module PureCloud
694
709
 
695
710
 
696
711
 
712
+
713
+
714
+
715
+
697
716
 
698
717
 
699
718
 
@@ -896,6 +915,11 @@ module PureCloud
896
915
 
897
916
 
898
917
 
918
+
919
+
920
+
921
+
922
+
899
923
 
900
924
 
901
925
 
@@ -980,6 +1004,7 @@ module PureCloud
980
1004
  external_contact == o.external_contact &&
981
1005
  external_organization == o.external_organization &&
982
1006
  wrapup == o.wrapup &&
1007
+ conversation_routing_data == o.conversation_routing_data &&
983
1008
  peer == o.peer &&
984
1009
  screen_recording_state == o.screen_recording_state &&
985
1010
  flagged_reason == o.flagged_reason &&
@@ -999,7 +1024,7 @@ module PureCloud
999
1024
  # Calculates hash code according to all attributes.
1000
1025
  # @return [Fixnum] Hash code
1001
1026
  def hash
1002
- [id, name, address, start_time, connected_time, end_time, start_hold_time, purpose, state, direction, disconnect_type, held, wrapup_required, wrapup_prompt, user, queue, attributes, error_info, script, wrapup_timeout_ms, wrapup_skipped, alerting_timeout_ms, provider, external_contact, external_organization, wrapup, peer, screen_recording_state, flagged_reason, journey_context, messages, type, recipient_country, recipient_type].hash
1027
+ [id, name, address, start_time, connected_time, end_time, start_hold_time, purpose, state, direction, disconnect_type, held, wrapup_required, wrapup_prompt, user, queue, attributes, error_info, script, wrapup_timeout_ms, wrapup_skipped, alerting_timeout_ms, provider, external_contact, external_organization, wrapup, conversation_routing_data, peer, screen_recording_state, flagged_reason, journey_context, messages, type, recipient_country, recipient_type].hash
1003
1028
  end
1004
1029
 
1005
1030
  # build the object from hash
@@ -0,0 +1,226 @@
1
+ =begin
2
+ PureCloud Platform API
3
+
4
+ With the PureCloud Platform API, you can control all aspects of your PureCloud environment. With the APIs you can access the system configuration, manage conversations and more.
5
+
6
+ OpenAPI spec version: v2
7
+ Contact: DeveloperEvangelists@genesys.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+
10
+ License: UNLICENSED
11
+ https://help.mypurecloud.com/articles/terms-and-conditions/
12
+
13
+ Terms of Service: https://help.mypurecloud.com/articles/terms-and-conditions/
14
+
15
+ =end
16
+
17
+ require 'date'
18
+
19
+ module PureCloud
20
+ class ConversationMessageEventTopicScoredAgent
21
+ attr_accessor :agent
22
+
23
+ attr_accessor :score
24
+
25
+ # Attribute mapping from ruby-style variable name to JSON key.
26
+ def self.attribute_map
27
+ {
28
+
29
+ :'agent' => :'agent',
30
+
31
+ :'score' => :'score'
32
+
33
+ }
34
+ end
35
+
36
+ # Attribute type mapping.
37
+ def self.swagger_types
38
+ {
39
+
40
+ :'agent' => :'ConversationMessageEventTopicUriReference',
41
+
42
+ :'score' => :'Integer'
43
+
44
+ }
45
+ end
46
+
47
+ # Initializes the object
48
+ # @param [Hash] attributes Model attributes in the form of hash
49
+ def initialize(attributes = {})
50
+ return unless attributes.is_a?(Hash)
51
+
52
+ # convert string to symbol for hash key
53
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
54
+
55
+
56
+ if attributes.has_key?(:'agent')
57
+
58
+
59
+ self.agent = attributes[:'agent']
60
+
61
+
62
+ end
63
+
64
+
65
+ if attributes.has_key?(:'score')
66
+
67
+
68
+ self.score = attributes[:'score']
69
+
70
+
71
+ end
72
+
73
+
74
+ end
75
+
76
+ # Show invalid properties with the reasons. Usually used together with valid?
77
+ # @return Array for valid properies with the reasons
78
+ def list_invalid_properties
79
+ invalid_properties = Array.new
80
+
81
+
82
+ return invalid_properties
83
+ end
84
+
85
+ # Check to see if the all the properties in the model are valid
86
+ # @return true if the model is valid
87
+ def valid?
88
+
89
+
90
+
91
+
92
+
93
+
94
+
95
+
96
+
97
+ end
98
+
99
+
100
+
101
+
102
+
103
+
104
+
105
+
106
+
107
+
108
+
109
+
110
+ # Checks equality by comparing each attribute.
111
+ # @param [Object] Object to be compared
112
+ def ==(o)
113
+ return true if self.equal?(o)
114
+ self.class == o.class &&
115
+ agent == o.agent &&
116
+ score == o.score
117
+ end
118
+
119
+ # @see the `==` method
120
+ # @param [Object] Object to be compared
121
+ def eql?(o)
122
+ self == o
123
+ end
124
+
125
+ # Calculates hash code according to all attributes.
126
+ # @return [Fixnum] Hash code
127
+ def hash
128
+ [agent, score].hash
129
+ end
130
+
131
+ # build the object from hash
132
+ def build_from_hash(attributes)
133
+ return nil unless attributes.is_a?(Hash)
134
+ self.class.swagger_types.each_pair do |key, type|
135
+ if type =~ /^Array<(.*)>/i
136
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
137
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
138
+ else
139
+ #TODO show warning in debug mode
140
+ end
141
+ elsif !attributes[self.class.attribute_map[key]].nil?
142
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
143
+ else
144
+ # data not found in attributes(hash), not an issue as the data can be optional
145
+ end
146
+ end
147
+
148
+ self
149
+ end
150
+
151
+ def _deserialize(type, value)
152
+ case type.to_sym
153
+ when :DateTime
154
+ DateTime.parse(value)
155
+ when :Date
156
+ Date.parse(value)
157
+ when :String
158
+ value.to_s
159
+ when :Integer
160
+ value.to_i
161
+ when :Float
162
+ value.to_f
163
+ when :BOOLEAN
164
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
165
+ true
166
+ else
167
+ false
168
+ end
169
+ when :Object
170
+ # generic object (usually a Hash), return directly
171
+ value
172
+ when /\AArray<(?<inner_type>.+)>\z/
173
+ inner_type = Regexp.last_match[:inner_type]
174
+ value.map { |v| _deserialize(inner_type, v) }
175
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
176
+ k_type = Regexp.last_match[:k_type]
177
+ v_type = Regexp.last_match[:v_type]
178
+ {}.tap do |hash|
179
+ value.each do |k, v|
180
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
181
+ end
182
+ end
183
+ else # model
184
+ _model = Object.const_get("PureCloud").const_get(type).new
185
+ _model.build_from_hash(value)
186
+ end
187
+ end
188
+
189
+ def to_s
190
+ to_hash.to_s
191
+ end
192
+
193
+ # to_body is an alias to to_body (backward compatibility))
194
+ def to_body
195
+ to_hash
196
+ end
197
+
198
+ # return the object in the form of hash
199
+ def to_hash
200
+ hash = {}
201
+ self.class.attribute_map.each_pair do |attr, param|
202
+ value = self.send(attr)
203
+ next if value.nil?
204
+ hash[param] = _to_hash(value)
205
+ end
206
+ hash
207
+ end
208
+
209
+ # Method to output non-array value in the form of hash
210
+ # For object, use to_hash. Otherwise, just return the value
211
+ def _to_hash(value)
212
+ if value.is_a?(Array)
213
+ value.compact.map{ |v| _to_hash(v) }
214
+ elsif value.is_a?(Hash)
215
+ {}.tap do |hash|
216
+ value.each { |k, v| hash[k] = _to_hash(v) }
217
+ end
218
+ elsif value.respond_to? :to_hash
219
+ value.to_hash
220
+ else
221
+ value
222
+ end
223
+ end
224
+
225
+ end
226
+ end