purecloudplatformclientv2 86.0.0 → 87.0.0

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 (125) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -2
  3. data/docs/AnalyticsEvaluation.md +1 -1
  4. data/docs/CoachingAnnotation.md +21 -0
  5. data/docs/CoachingAnnotationCreateRequest.md +14 -0
  6. data/docs/CoachingAnnotationList.md +22 -0
  7. data/docs/CoachingApi.md +1132 -0
  8. data/docs/CoachingAppointmentReference.md +14 -0
  9. data/docs/CoachingAppointmentResponse.md +27 -0
  10. data/docs/CoachingAppointmentResponseList.md +22 -0
  11. data/docs/CoachingAppointmentStatusDto.md +16 -0
  12. data/docs/CoachingAppointmentStatusDtoList.md +17 -0
  13. data/docs/CoachingNotification.md +23 -0
  14. data/docs/CoachingNotificationList.md +22 -0
  15. data/docs/ConversationEventTopicCall.md +1 -0
  16. data/docs/ConversationEventTopicCallback.md +1 -0
  17. data/docs/ConversationEventTopicChat.md +1 -0
  18. data/docs/ConversationEventTopicCobrowse.md +1 -0
  19. data/docs/ConversationEventTopicEmail.md +1 -0
  20. data/docs/ConversationEventTopicMessage.md +1 -0
  21. data/docs/ConversationEventTopicScreenshare.md +1 -0
  22. data/docs/ConversationEventTopicSocialExpression.md +1 -0
  23. data/docs/ConversationEventTopicVideo.md +1 -0
  24. data/docs/ConversationReference.md +14 -0
  25. data/docs/CreateCoachingAppointmentRequest.md +20 -0
  26. data/docs/DocumentReference.md +14 -0
  27. data/docs/EntityListing.md +5 -1
  28. data/docs/QueueConversationEventTopicCall.md +1 -0
  29. data/docs/QueueConversationEventTopicCallback.md +1 -0
  30. data/docs/QueueConversationEventTopicChat.md +1 -0
  31. data/docs/QueueConversationEventTopicCobrowse.md +1 -0
  32. data/docs/QueueConversationEventTopicEmail.md +1 -0
  33. data/docs/QueueConversationEventTopicMessage.md +1 -0
  34. data/docs/QueueConversationEventTopicScreenshare.md +1 -0
  35. data/docs/QueueConversationEventTopicSocialExpression.md +1 -0
  36. data/docs/QueueConversationEventTopicVideo.md +1 -0
  37. data/docs/QueueConversationSocialExpressionEventTopicCall.md +1 -0
  38. data/docs/QueueConversationSocialExpressionEventTopicCallback.md +1 -0
  39. data/docs/QueueConversationSocialExpressionEventTopicChat.md +1 -0
  40. data/docs/QueueConversationSocialExpressionEventTopicCobrowse.md +1 -0
  41. data/docs/QueueConversationSocialExpressionEventTopicEmail.md +1 -0
  42. data/docs/QueueConversationSocialExpressionEventTopicMessage.md +1 -0
  43. data/docs/QueueConversationSocialExpressionEventTopicScreenshare.md +1 -0
  44. data/docs/QueueConversationSocialExpressionEventTopicSocialExpression.md +1 -0
  45. data/docs/QueueConversationSocialExpressionEventTopicVideo.md +1 -0
  46. data/docs/QueueConversationVideoEventTopicCall.md +1 -0
  47. data/docs/QueueConversationVideoEventTopicCallback.md +1 -0
  48. data/docs/QueueConversationVideoEventTopicChat.md +1 -0
  49. data/docs/QueueConversationVideoEventTopicCobrowse.md +1 -0
  50. data/docs/QueueConversationVideoEventTopicEmail.md +1 -0
  51. data/docs/QueueConversationVideoEventTopicMessage.md +1 -0
  52. data/docs/QueueConversationVideoEventTopicScreenshare.md +1 -0
  53. data/docs/QueueConversationVideoEventTopicSocialExpression.md +1 -0
  54. data/docs/QueueConversationVideoEventTopicVideo.md +1 -0
  55. data/docs/UpdateCoachingAppointmentRequest.md +18 -0
  56. data/docs/WemLearningAssignmentRuleRunTopicLearningAssignmentRuleRunNotification.md +14 -0
  57. data/docs/WemLearningAssignmentRuleRunTopicLearningModuleReference.md +14 -0
  58. data/docs/WemLearningAssignmentRuleRunTopicWemLearningAssignmentsCreated.md +13 -0
  59. data/docs/WemLearningAssignmentTopicLearningAssignmentNotification.md +22 -0
  60. data/docs/WemLearningAssignmentTopicLearningModuleReference.md +14 -0
  61. data/docs/WemLearningAssignmentTopicUserReference.md +13 -0
  62. data/lib/purecloudplatformclientv2.rb +21 -0
  63. data/lib/purecloudplatformclientv2/api/coaching_api.rb +1296 -0
  64. data/lib/purecloudplatformclientv2/api_client.rb +1 -1
  65. data/lib/purecloudplatformclientv2/models/analytics_evaluation.rb +13 -13
  66. data/lib/purecloudplatformclientv2/models/coaching_annotation.rb +429 -0
  67. data/lib/purecloudplatformclientv2/models/coaching_annotation_create_request.rb +252 -0
  68. data/lib/purecloudplatformclientv2/models/coaching_annotation_list.rb +428 -0
  69. data/lib/purecloudplatformclientv2/models/coaching_appointment_reference.rb +228 -0
  70. data/lib/purecloudplatformclientv2/models/coaching_appointment_response.rb +587 -0
  71. data/lib/purecloudplatformclientv2/models/coaching_appointment_response_list.rb +428 -0
  72. data/lib/purecloudplatformclientv2/models/coaching_appointment_status_dto.rb +299 -0
  73. data/lib/purecloudplatformclientv2/models/coaching_appointment_status_dto_list.rb +303 -0
  74. data/lib/purecloudplatformclientv2/models/coaching_notification.rb +504 -0
  75. data/lib/purecloudplatformclientv2/models/coaching_notification_list.rb +428 -0
  76. data/lib/purecloudplatformclientv2/models/conversation_chat.rb +2 -2
  77. data/lib/purecloudplatformclientv2/models/conversation_event_topic_call.rb +26 -1
  78. data/lib/purecloudplatformclientv2/models/conversation_event_topic_callback.rb +26 -1
  79. data/lib/purecloudplatformclientv2/models/conversation_event_topic_chat.rb +26 -1
  80. data/lib/purecloudplatformclientv2/models/conversation_event_topic_cobrowse.rb +26 -1
  81. data/lib/purecloudplatformclientv2/models/conversation_event_topic_email.rb +26 -1
  82. data/lib/purecloudplatformclientv2/models/conversation_event_topic_message.rb +26 -1
  83. data/lib/purecloudplatformclientv2/models/conversation_event_topic_screenshare.rb +26 -1
  84. data/lib/purecloudplatformclientv2/models/conversation_event_topic_social_expression.rb +26 -1
  85. data/lib/purecloudplatformclientv2/models/conversation_event_topic_video.rb +26 -1
  86. data/lib/purecloudplatformclientv2/models/conversation_reference.rb +228 -0
  87. data/lib/purecloudplatformclientv2/models/create_coaching_appointment_request.rb +426 -0
  88. data/lib/purecloudplatformclientv2/models/document_reference.rb +228 -0
  89. data/lib/purecloudplatformclientv2/models/entity_listing.rb +104 -4
  90. data/lib/purecloudplatformclientv2/models/queue_conversation_event_topic_call.rb +26 -1
  91. data/lib/purecloudplatformclientv2/models/queue_conversation_event_topic_callback.rb +26 -1
  92. data/lib/purecloudplatformclientv2/models/queue_conversation_event_topic_chat.rb +26 -1
  93. data/lib/purecloudplatformclientv2/models/queue_conversation_event_topic_cobrowse.rb +26 -1
  94. data/lib/purecloudplatformclientv2/models/queue_conversation_event_topic_email.rb +26 -1
  95. data/lib/purecloudplatformclientv2/models/queue_conversation_event_topic_message.rb +26 -1
  96. data/lib/purecloudplatformclientv2/models/queue_conversation_event_topic_screenshare.rb +26 -1
  97. data/lib/purecloudplatformclientv2/models/queue_conversation_event_topic_social_expression.rb +26 -1
  98. data/lib/purecloudplatformclientv2/models/queue_conversation_event_topic_video.rb +26 -1
  99. data/lib/purecloudplatformclientv2/models/queue_conversation_social_expression_event_topic_call.rb +26 -1
  100. data/lib/purecloudplatformclientv2/models/queue_conversation_social_expression_event_topic_callback.rb +26 -1
  101. data/lib/purecloudplatformclientv2/models/queue_conversation_social_expression_event_topic_chat.rb +26 -1
  102. data/lib/purecloudplatformclientv2/models/queue_conversation_social_expression_event_topic_cobrowse.rb +26 -1
  103. data/lib/purecloudplatformclientv2/models/queue_conversation_social_expression_event_topic_email.rb +26 -1
  104. data/lib/purecloudplatformclientv2/models/queue_conversation_social_expression_event_topic_message.rb +26 -1
  105. data/lib/purecloudplatformclientv2/models/queue_conversation_social_expression_event_topic_screenshare.rb +26 -1
  106. data/lib/purecloudplatformclientv2/models/queue_conversation_social_expression_event_topic_social_expression.rb +26 -1
  107. data/lib/purecloudplatformclientv2/models/queue_conversation_social_expression_event_topic_video.rb +26 -1
  108. data/lib/purecloudplatformclientv2/models/queue_conversation_video_event_topic_call.rb +26 -1
  109. data/lib/purecloudplatformclientv2/models/queue_conversation_video_event_topic_callback.rb +26 -1
  110. data/lib/purecloudplatformclientv2/models/queue_conversation_video_event_topic_chat.rb +26 -1
  111. data/lib/purecloudplatformclientv2/models/queue_conversation_video_event_topic_cobrowse.rb +26 -1
  112. data/lib/purecloudplatformclientv2/models/queue_conversation_video_event_topic_email.rb +26 -1
  113. data/lib/purecloudplatformclientv2/models/queue_conversation_video_event_topic_message.rb +26 -1
  114. data/lib/purecloudplatformclientv2/models/queue_conversation_video_event_topic_screenshare.rb +26 -1
  115. data/lib/purecloudplatformclientv2/models/queue_conversation_video_event_topic_social_expression.rb +26 -1
  116. data/lib/purecloudplatformclientv2/models/queue_conversation_video_event_topic_video.rb +26 -1
  117. data/lib/purecloudplatformclientv2/models/update_coaching_appointment_request.rb +337 -0
  118. data/lib/purecloudplatformclientv2/models/wem_learning_assignment_rule_run_topic_learning_assignment_rule_run_notification.rb +228 -0
  119. data/lib/purecloudplatformclientv2/models/wem_learning_assignment_rule_run_topic_learning_module_reference.rb +226 -0
  120. data/lib/purecloudplatformclientv2/models/wem_learning_assignment_rule_run_topic_wem_learning_assignments_created.rb +201 -0
  121. data/lib/purecloudplatformclientv2/models/wem_learning_assignment_topic_learning_assignment_notification.rb +440 -0
  122. data/lib/purecloudplatformclientv2/models/wem_learning_assignment_topic_learning_module_reference.rb +226 -0
  123. data/lib/purecloudplatformclientv2/models/wem_learning_assignment_topic_user_reference.rb +201 -0
  124. data/lib/purecloudplatformclientv2/version.rb +1 -1
  125. metadata +44 -2
@@ -0,0 +1,228 @@
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 CoachingAppointmentReference
21
+ # The globally unique identifier for the object.
22
+ attr_accessor :id
23
+
24
+ # The URI for this object
25
+ attr_accessor :self_uri
26
+
27
+ # Attribute mapping from ruby-style variable name to JSON key.
28
+ def self.attribute_map
29
+ {
30
+
31
+ :'id' => :'id',
32
+
33
+ :'self_uri' => :'selfUri'
34
+
35
+ }
36
+ end
37
+
38
+ # Attribute type mapping.
39
+ def self.swagger_types
40
+ {
41
+
42
+ :'id' => :'String',
43
+
44
+ :'self_uri' => :'String'
45
+
46
+ }
47
+ end
48
+
49
+ # Initializes the object
50
+ # @param [Hash] attributes Model attributes in the form of hash
51
+ def initialize(attributes = {})
52
+ return unless attributes.is_a?(Hash)
53
+
54
+ # convert string to symbol for hash key
55
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
56
+
57
+
58
+ if attributes.has_key?(:'id')
59
+
60
+
61
+ self.id = attributes[:'id']
62
+
63
+
64
+ end
65
+
66
+
67
+ if attributes.has_key?(:'selfUri')
68
+
69
+
70
+ self.self_uri = attributes[:'selfUri']
71
+
72
+
73
+ end
74
+
75
+
76
+ end
77
+
78
+ # Show invalid properties with the reasons. Usually used together with valid?
79
+ # @return Array for valid properies with the reasons
80
+ def list_invalid_properties
81
+ invalid_properties = Array.new
82
+
83
+
84
+ return invalid_properties
85
+ end
86
+
87
+ # Check to see if the all the properties in the model are valid
88
+ # @return true if the model is valid
89
+ def valid?
90
+
91
+
92
+
93
+
94
+
95
+
96
+
97
+
98
+
99
+ end
100
+
101
+
102
+
103
+
104
+
105
+
106
+
107
+
108
+
109
+
110
+
111
+
112
+ # Checks equality by comparing each attribute.
113
+ # @param [Object] Object to be compared
114
+ def ==(o)
115
+ return true if self.equal?(o)
116
+ self.class == o.class &&
117
+ id == o.id &&
118
+ self_uri == o.self_uri
119
+ end
120
+
121
+ # @see the `==` method
122
+ # @param [Object] Object to be compared
123
+ def eql?(o)
124
+ self == o
125
+ end
126
+
127
+ # Calculates hash code according to all attributes.
128
+ # @return [Fixnum] Hash code
129
+ def hash
130
+ [id, self_uri].hash
131
+ end
132
+
133
+ # build the object from hash
134
+ def build_from_hash(attributes)
135
+ return nil unless attributes.is_a?(Hash)
136
+ self.class.swagger_types.each_pair do |key, type|
137
+ if type =~ /^Array<(.*)>/i
138
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
139
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
140
+ else
141
+ #TODO show warning in debug mode
142
+ end
143
+ elsif !attributes[self.class.attribute_map[key]].nil?
144
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
145
+ else
146
+ # data not found in attributes(hash), not an issue as the data can be optional
147
+ end
148
+ end
149
+
150
+ self
151
+ end
152
+
153
+ def _deserialize(type, value)
154
+ case type.to_sym
155
+ when :DateTime
156
+ DateTime.parse(value)
157
+ when :Date
158
+ Date.parse(value)
159
+ when :String
160
+ value.to_s
161
+ when :Integer
162
+ value.to_i
163
+ when :Float
164
+ value.to_f
165
+ when :BOOLEAN
166
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
167
+ true
168
+ else
169
+ false
170
+ end
171
+ when :Object
172
+ # generic object (usually a Hash), return directly
173
+ value
174
+ when /\AArray<(?<inner_type>.+)>\z/
175
+ inner_type = Regexp.last_match[:inner_type]
176
+ value.map { |v| _deserialize(inner_type, v) }
177
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
178
+ k_type = Regexp.last_match[:k_type]
179
+ v_type = Regexp.last_match[:v_type]
180
+ {}.tap do |hash|
181
+ value.each do |k, v|
182
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
183
+ end
184
+ end
185
+ else # model
186
+ _model = Object.const_get("PureCloud").const_get(type).new
187
+ _model.build_from_hash(value)
188
+ end
189
+ end
190
+
191
+ def to_s
192
+ to_hash.to_s
193
+ end
194
+
195
+ # to_body is an alias to to_body (backward compatibility))
196
+ def to_body
197
+ to_hash
198
+ end
199
+
200
+ # return the object in the form of hash
201
+ def to_hash
202
+ hash = {}
203
+ self.class.attribute_map.each_pair do |attr, param|
204
+ value = self.send(attr)
205
+ next if value.nil?
206
+ hash[param] = _to_hash(value)
207
+ end
208
+ hash
209
+ end
210
+
211
+ # Method to output non-array value in the form of hash
212
+ # For object, use to_hash. Otherwise, just return the value
213
+ def _to_hash(value)
214
+ if value.is_a?(Array)
215
+ value.compact.map{ |v| _to_hash(v) }
216
+ elsif value.is_a?(Hash)
217
+ {}.tap do |hash|
218
+ value.each { |k, v| hash[k] = _to_hash(v) }
219
+ end
220
+ elsif value.respond_to? :to_hash
221
+ value.to_hash
222
+ else
223
+ value
224
+ end
225
+ end
226
+
227
+ end
228
+ end
@@ -0,0 +1,587 @@
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
+ # Coaching appointment response
21
+ class CoachingAppointmentResponse
22
+ # The globally unique identifier for the object.
23
+ attr_accessor :id
24
+
25
+ # The name of coaching appointment
26
+ attr_accessor :name
27
+
28
+ # The description of coaching appointment
29
+ attr_accessor :description
30
+
31
+ # The date/time the coaching appointment starts. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
32
+ attr_accessor :date_start
33
+
34
+ # The duration of coaching appointment in minutes
35
+ attr_accessor :length_in_minutes
36
+
37
+ # The status of coaching appointment
38
+ attr_accessor :status
39
+
40
+ # The facilitator of coaching appointment
41
+ attr_accessor :facilitator
42
+
43
+ # The list of attendees attending the coaching
44
+ attr_accessor :attendees
45
+
46
+ # The user who created the coaching appointment
47
+ attr_accessor :created_by
48
+
49
+ # The date/time the coaching appointment was created. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
50
+ attr_accessor :date_created
51
+
52
+ # The last user to modify the coaching appointment
53
+ attr_accessor :modified_by
54
+
55
+ # The date/time the coaching appointment was last modified. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
56
+ attr_accessor :date_modified
57
+
58
+ # The list of conversations associated with coaching appointment.
59
+ attr_accessor :conversations
60
+
61
+ # The list of documents associated with coaching appointment.
62
+ attr_accessor :documents
63
+
64
+ # The URI for this object
65
+ attr_accessor :self_uri
66
+
67
+ # Attribute mapping from ruby-style variable name to JSON key.
68
+ def self.attribute_map
69
+ {
70
+
71
+ :'id' => :'id',
72
+
73
+ :'name' => :'name',
74
+
75
+ :'description' => :'description',
76
+
77
+ :'date_start' => :'dateStart',
78
+
79
+ :'length_in_minutes' => :'lengthInMinutes',
80
+
81
+ :'status' => :'status',
82
+
83
+ :'facilitator' => :'facilitator',
84
+
85
+ :'attendees' => :'attendees',
86
+
87
+ :'created_by' => :'createdBy',
88
+
89
+ :'date_created' => :'dateCreated',
90
+
91
+ :'modified_by' => :'modifiedBy',
92
+
93
+ :'date_modified' => :'dateModified',
94
+
95
+ :'conversations' => :'conversations',
96
+
97
+ :'documents' => :'documents',
98
+
99
+ :'self_uri' => :'selfUri'
100
+
101
+ }
102
+ end
103
+
104
+ # Attribute type mapping.
105
+ def self.swagger_types
106
+ {
107
+
108
+ :'id' => :'String',
109
+
110
+ :'name' => :'String',
111
+
112
+ :'description' => :'String',
113
+
114
+ :'date_start' => :'DateTime',
115
+
116
+ :'length_in_minutes' => :'Integer',
117
+
118
+ :'status' => :'String',
119
+
120
+ :'facilitator' => :'UserReference',
121
+
122
+ :'attendees' => :'Array<UserReference>',
123
+
124
+ :'created_by' => :'UserReference',
125
+
126
+ :'date_created' => :'DateTime',
127
+
128
+ :'modified_by' => :'UserReference',
129
+
130
+ :'date_modified' => :'DateTime',
131
+
132
+ :'conversations' => :'Array<ConversationReference>',
133
+
134
+ :'documents' => :'Array<DocumentReference>',
135
+
136
+ :'self_uri' => :'String'
137
+
138
+ }
139
+ end
140
+
141
+ # Initializes the object
142
+ # @param [Hash] attributes Model attributes in the form of hash
143
+ def initialize(attributes = {})
144
+ return unless attributes.is_a?(Hash)
145
+
146
+ # convert string to symbol for hash key
147
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
148
+
149
+
150
+ if attributes.has_key?(:'id')
151
+
152
+
153
+ self.id = attributes[:'id']
154
+
155
+
156
+ end
157
+
158
+
159
+ if attributes.has_key?(:'name')
160
+
161
+
162
+ self.name = attributes[:'name']
163
+
164
+
165
+ end
166
+
167
+
168
+ if attributes.has_key?(:'description')
169
+
170
+
171
+ self.description = attributes[:'description']
172
+
173
+
174
+ end
175
+
176
+
177
+ if attributes.has_key?(:'dateStart')
178
+
179
+
180
+ self.date_start = attributes[:'dateStart']
181
+
182
+
183
+ end
184
+
185
+
186
+ if attributes.has_key?(:'lengthInMinutes')
187
+
188
+
189
+ self.length_in_minutes = attributes[:'lengthInMinutes']
190
+
191
+
192
+ end
193
+
194
+
195
+ if attributes.has_key?(:'status')
196
+
197
+
198
+ self.status = attributes[:'status']
199
+
200
+
201
+ end
202
+
203
+
204
+ if attributes.has_key?(:'facilitator')
205
+
206
+
207
+ self.facilitator = attributes[:'facilitator']
208
+
209
+
210
+ end
211
+
212
+
213
+ if attributes.has_key?(:'attendees')
214
+
215
+ if (value = attributes[:'attendees']).is_a?(Array)
216
+ self.attendees = value
217
+ end
218
+
219
+
220
+
221
+ end
222
+
223
+
224
+ if attributes.has_key?(:'createdBy')
225
+
226
+
227
+ self.created_by = attributes[:'createdBy']
228
+
229
+
230
+ end
231
+
232
+
233
+ if attributes.has_key?(:'dateCreated')
234
+
235
+
236
+ self.date_created = attributes[:'dateCreated']
237
+
238
+
239
+ end
240
+
241
+
242
+ if attributes.has_key?(:'modifiedBy')
243
+
244
+
245
+ self.modified_by = attributes[:'modifiedBy']
246
+
247
+
248
+ end
249
+
250
+
251
+ if attributes.has_key?(:'dateModified')
252
+
253
+
254
+ self.date_modified = attributes[:'dateModified']
255
+
256
+
257
+ end
258
+
259
+
260
+ if attributes.has_key?(:'conversations')
261
+
262
+ if (value = attributes[:'conversations']).is_a?(Array)
263
+ self.conversations = value
264
+ end
265
+
266
+
267
+
268
+ end
269
+
270
+
271
+ if attributes.has_key?(:'documents')
272
+
273
+ if (value = attributes[:'documents']).is_a?(Array)
274
+ self.documents = value
275
+ end
276
+
277
+
278
+
279
+ end
280
+
281
+
282
+ if attributes.has_key?(:'selfUri')
283
+
284
+
285
+ self.self_uri = attributes[:'selfUri']
286
+
287
+
288
+ end
289
+
290
+
291
+ end
292
+
293
+ # Show invalid properties with the reasons. Usually used together with valid?
294
+ # @return Array for valid properies with the reasons
295
+ def list_invalid_properties
296
+ invalid_properties = Array.new
297
+
298
+
299
+ return invalid_properties
300
+ end
301
+
302
+ # Check to see if the all the properties in the model are valid
303
+ # @return true if the model is valid
304
+ def valid?
305
+
306
+
307
+
308
+
309
+
310
+
311
+
312
+
313
+
314
+
315
+
316
+
317
+
318
+
319
+
320
+
321
+
322
+
323
+
324
+
325
+
326
+
327
+
328
+ allowed_values = ["Scheduled", "InProgress", "Completed"]
329
+ if @status && !allowed_values.include?(@status)
330
+ return false
331
+ end
332
+
333
+
334
+
335
+
336
+
337
+
338
+
339
+
340
+
341
+
342
+
343
+
344
+
345
+
346
+
347
+
348
+
349
+
350
+
351
+
352
+
353
+
354
+
355
+
356
+
357
+
358
+
359
+
360
+
361
+
362
+
363
+
364
+
365
+
366
+
367
+
368
+
369
+
370
+
371
+ end
372
+
373
+
374
+
375
+
376
+
377
+
378
+
379
+
380
+
381
+
382
+
383
+
384
+
385
+
386
+
387
+
388
+
389
+
390
+
391
+
392
+
393
+
394
+
395
+
396
+
397
+
398
+
399
+
400
+ # Custom attribute writer method checking allowed values (enum).
401
+ # @param [Object] status Object to be assigned
402
+ def status=(status)
403
+ allowed_values = ["Scheduled", "InProgress", "Completed"]
404
+ if status && !allowed_values.include?(status)
405
+ fail ArgumentError, "invalid value for 'status', must be one of #{allowed_values}."
406
+ end
407
+ @status = status
408
+ end
409
+
410
+
411
+
412
+
413
+
414
+
415
+
416
+
417
+
418
+
419
+
420
+
421
+
422
+
423
+
424
+
425
+
426
+
427
+
428
+
429
+
430
+
431
+
432
+
433
+
434
+
435
+
436
+
437
+
438
+
439
+
440
+
441
+
442
+
443
+
444
+
445
+
446
+
447
+
448
+
449
+
450
+
451
+
452
+
453
+
454
+
455
+
456
+
457
+
458
+ # Checks equality by comparing each attribute.
459
+ # @param [Object] Object to be compared
460
+ def ==(o)
461
+ return true if self.equal?(o)
462
+ self.class == o.class &&
463
+ id == o.id &&
464
+ name == o.name &&
465
+ description == o.description &&
466
+ date_start == o.date_start &&
467
+ length_in_minutes == o.length_in_minutes &&
468
+ status == o.status &&
469
+ facilitator == o.facilitator &&
470
+ attendees == o.attendees &&
471
+ created_by == o.created_by &&
472
+ date_created == o.date_created &&
473
+ modified_by == o.modified_by &&
474
+ date_modified == o.date_modified &&
475
+ conversations == o.conversations &&
476
+ documents == o.documents &&
477
+ self_uri == o.self_uri
478
+ end
479
+
480
+ # @see the `==` method
481
+ # @param [Object] Object to be compared
482
+ def eql?(o)
483
+ self == o
484
+ end
485
+
486
+ # Calculates hash code according to all attributes.
487
+ # @return [Fixnum] Hash code
488
+ def hash
489
+ [id, name, description, date_start, length_in_minutes, status, facilitator, attendees, created_by, date_created, modified_by, date_modified, conversations, documents, self_uri].hash
490
+ end
491
+
492
+ # build the object from hash
493
+ def build_from_hash(attributes)
494
+ return nil unless attributes.is_a?(Hash)
495
+ self.class.swagger_types.each_pair do |key, type|
496
+ if type =~ /^Array<(.*)>/i
497
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
498
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
499
+ else
500
+ #TODO show warning in debug mode
501
+ end
502
+ elsif !attributes[self.class.attribute_map[key]].nil?
503
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
504
+ else
505
+ # data not found in attributes(hash), not an issue as the data can be optional
506
+ end
507
+ end
508
+
509
+ self
510
+ end
511
+
512
+ def _deserialize(type, value)
513
+ case type.to_sym
514
+ when :DateTime
515
+ DateTime.parse(value)
516
+ when :Date
517
+ Date.parse(value)
518
+ when :String
519
+ value.to_s
520
+ when :Integer
521
+ value.to_i
522
+ when :Float
523
+ value.to_f
524
+ when :BOOLEAN
525
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
526
+ true
527
+ else
528
+ false
529
+ end
530
+ when :Object
531
+ # generic object (usually a Hash), return directly
532
+ value
533
+ when /\AArray<(?<inner_type>.+)>\z/
534
+ inner_type = Regexp.last_match[:inner_type]
535
+ value.map { |v| _deserialize(inner_type, v) }
536
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
537
+ k_type = Regexp.last_match[:k_type]
538
+ v_type = Regexp.last_match[:v_type]
539
+ {}.tap do |hash|
540
+ value.each do |k, v|
541
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
542
+ end
543
+ end
544
+ else # model
545
+ _model = Object.const_get("PureCloud").const_get(type).new
546
+ _model.build_from_hash(value)
547
+ end
548
+ end
549
+
550
+ def to_s
551
+ to_hash.to_s
552
+ end
553
+
554
+ # to_body is an alias to to_body (backward compatibility))
555
+ def to_body
556
+ to_hash
557
+ end
558
+
559
+ # return the object in the form of hash
560
+ def to_hash
561
+ hash = {}
562
+ self.class.attribute_map.each_pair do |attr, param|
563
+ value = self.send(attr)
564
+ next if value.nil?
565
+ hash[param] = _to_hash(value)
566
+ end
567
+ hash
568
+ end
569
+
570
+ # Method to output non-array value in the form of hash
571
+ # For object, use to_hash. Otherwise, just return the value
572
+ def _to_hash(value)
573
+ if value.is_a?(Array)
574
+ value.compact.map{ |v| _to_hash(v) }
575
+ elsif value.is_a?(Hash)
576
+ {}.tap do |hash|
577
+ value.each { |k, v| hash[k] = _to_hash(v) }
578
+ end
579
+ elsif value.respond_to? :to_hash
580
+ value.to_hash
581
+ else
582
+ value
583
+ end
584
+ end
585
+
586
+ end
587
+ end