purecloud 0.54.1 → 0.55.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 (286) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -3
  3. data/config-ruby.json +1 -1
  4. data/doc_out/ADFS.html.md +1 -1
  5. data/doc_out/AgentActivityEntityListing.html.md +2 -2
  6. data/doc_out/AggregationQuery.html.md +1 -0
  7. data/doc_out/AnalyticsParticipant.html.md +2 -0
  8. data/doc_out/AnalyticsQueryClause.html.md +2 -2
  9. data/doc_out/AnalyticsQueryFilter.html.md +1 -1
  10. data/doc_out/AttemptLimitsEntityListing.html.md +2 -2
  11. data/doc_out/AttributeEntityListing.html.md +2 -2
  12. data/doc_out/AuthorizationApi.html.md +2 -2
  13. data/doc_out/CalibrationEntityListing.html.md +2 -2
  14. data/doc_out/CallConversationEntityListing.html.md +2 -2
  15. data/doc_out/CallableTimeSetEntityListing.html.md +2 -2
  16. data/doc_out/CallbackConversationEntityListing.html.md +2 -2
  17. data/doc_out/CampaignEntityListing.html.md +2 -2
  18. data/doc_out/CampaignSequenceEntityListing.html.md +2 -2
  19. data/doc_out/CertificateAuthorityEntityListing.html.md +2 -2
  20. data/doc_out/ChannelEntityListing.html.md +2 -2
  21. data/doc_out/ChatConversationEntityListing.html.md +2 -2
  22. data/doc_out/CobrowseConversationEntityListing.html.md +2 -2
  23. data/doc_out/CommandStatusEntityListing.html.md +2 -2
  24. data/doc_out/ContactListEntityListing.html.md +2 -2
  25. data/doc_out/ConversationEntityListing.html.md +2 -2
  26. data/doc_out/ConversationsApi.html.md +65 -0
  27. data/doc_out/CustomerInteractionCenter.html.md +1 -1
  28. data/doc_out/DIDEntityListing.html.md +2 -2
  29. data/doc_out/DIDPoolEntityListing.html.md +2 -2
  30. data/doc_out/DncListEntityListing.html.md +2 -2
  31. data/doc_out/DocumentAuditEntityListing.html.md +2 -2
  32. data/doc_out/DocumentEntityListing.html.md +2 -2
  33. data/doc_out/DomainEdgeSoftwareVersionDtoEntityListing.html.md +2 -2
  34. data/doc_out/DomainEntityListing.html.md +2 -2
  35. data/doc_out/DomainEntityListingEvaluationForm.html.md +2 -2
  36. data/doc_out/DomainEntityListingQueryResult.html.md +2 -2
  37. data/doc_out/DomainOrganizationRole.html.md +2 -2
  38. data/doc_out/DomainOrganizationRoleCreate.html.md +2 -2
  39. data/doc_out/DomainOrganizationRoleUpdate.html.md +23 -0
  40. data/doc_out/EdgeEntityListing.html.md +2 -2
  41. data/doc_out/EdgeGroupEntityListing.html.md +2 -2
  42. data/doc_out/EdgeLineEntityListing.html.md +2 -2
  43. data/doc_out/EmailConversationEntityListing.html.md +2 -2
  44. data/doc_out/EmailMessageListing.html.md +2 -2
  45. data/doc_out/EncryptionKeyEntityListing.html.md +2 -2
  46. data/doc_out/EndpointEntityListing.html.md +2 -2
  47. data/doc_out/EvaluationEntityListing.html.md +2 -2
  48. data/doc_out/EvaluationFormEntityListing.html.md +2 -2
  49. data/doc_out/EvaluatorActivityEntityListing.html.md +2 -2
  50. data/doc_out/ExtensionEntityListing.html.md +2 -2
  51. data/doc_out/ExtensionPoolEntityListing.html.md +2 -2
  52. data/doc_out/FaxDocumentEntityListing.html.md +2 -2
  53. data/doc_out/FieldConfig.html.md +20 -0
  54. data/doc_out/FieldList.html.md +21 -0
  55. data/doc_out/Forecast.html.md +16 -0
  56. data/doc_out/ForecastCreation.html.md +17 -0
  57. data/doc_out/ForecastCreationCompletion.html.md +14 -0
  58. data/doc_out/ForecastDimensions.html.md +15 -0
  59. data/doc_out/ForecastEntry.html.md +15 -0
  60. data/doc_out/ForecastFilterAttributes.html.md +15 -0
  61. data/doc_out/ForecastMetadata.html.md +22 -0
  62. data/doc_out/ForecastMetadataEntityListing.html.md +22 -0
  63. data/doc_out/ForecastModification.html.md +27 -0
  64. data/doc_out/ForecastModificationCreation.html.md +25 -0
  65. data/doc_out/ForecastSearchCriteria.html.md +20 -0
  66. data/doc_out/ForecastSearchRequest.html.md +20 -0
  67. data/doc_out/GroupEntityListing.html.md +2 -2
  68. data/doc_out/GroupsApi.html.md +57 -0
  69. data/doc_out/HeartBeatAlertContainer.html.md +2 -2
  70. data/doc_out/HeartBeatRuleContainer.html.md +2 -2
  71. data/doc_out/InboundDomainEntityListing.html.md +2 -2
  72. data/doc_out/InboundRouteEntityListing.html.md +2 -2
  73. data/doc_out/InteractionStatsAlertContainer.html.md +2 -2
  74. data/doc_out/InteractionStatsRuleContainer.html.md +2 -2
  75. data/doc_out/JsonNode.html.md +4 -4
  76. data/doc_out/KeywordSetEntityListing.html.md +2 -2
  77. data/doc_out/LanguageEntityListing.html.md +2 -2
  78. data/doc_out/LibraryEntityListing.html.md +2 -2
  79. data/doc_out/LineBaseEntityListing.html.md +2 -2
  80. data/doc_out/LineEntityListing.html.md +2 -2
  81. data/doc_out/LogicalInterfaceEntityListing.html.md +2 -2
  82. data/doc_out/OAuthClientEntityListing.html.md +2 -2
  83. data/doc_out/OAuthProviderEntityListing.html.md +2 -2
  84. data/doc_out/ObservationQuery.html.md +1 -1
  85. data/doc_out/Okta.html.md +1 -1
  86. data/doc_out/OneLogin.html.md +1 -1
  87. data/doc_out/OrganizationApi.html.md +57 -0
  88. data/doc_out/OrganizationPresenceEntityListing.html.md +2 -2
  89. data/doc_out/OrganizationRoleEntityListing.html.md +2 -2
  90. data/doc_out/OrphanRecordingListing.html.md +2 -2
  91. data/doc_out/OutboundRouteEntityListing.html.md +2 -2
  92. data/doc_out/PagingSpec.html.md +2 -2
  93. data/doc_out/PermissionCollectionEntityListing.html.md +2 -2
  94. data/doc_out/Phone.html.md +1 -0
  95. data/doc_out/PhoneBaseEntityListing.html.md +2 -2
  96. data/doc_out/PhoneEntityListing.html.md +2 -2
  97. data/doc_out/PhoneMetaBaseEntityListing.html.md +2 -2
  98. data/doc_out/PhoneStatus.html.md +1 -0
  99. data/doc_out/PhysicalInterfaceEntityListing.html.md +2 -2
  100. data/doc_out/PolicyEntityListing.html.md +2 -2
  101. data/doc_out/PropertyIndexRequest.html.md +2 -2
  102. data/doc_out/QualityAuditPage.html.md +2 -2
  103. data/doc_out/QueueEntityListing.html.md +2 -2
  104. data/doc_out/QueueMemberEntityListing.html.md +2 -2
  105. data/doc_out/ReportMetaDataEntityListing.html.md +2 -2
  106. data/doc_out/ReportRunEntryEntityDomainListing.html.md +2 -2
  107. data/doc_out/ReportScheduleEntityListing.html.md +2 -2
  108. data/doc_out/ResponseEntityList.html.md +2 -2
  109. data/doc_out/ResponseEntityListing.html.md +2 -2
  110. data/doc_out/ResponseSetEntityListing.html.md +2 -2
  111. data/doc_out/RuleSetEntityListing.html.md +2 -2
  112. data/doc_out/Salesforce.html.md +1 -1
  113. data/doc_out/SchemaCategoryEntityListing.html.md +2 -2
  114. data/doc_out/SchemaReferenceEntityListing.html.md +2 -2
  115. data/doc_out/ScreenRecordingSessionListing.html.md +2 -2
  116. data/doc_out/Section.html.md +16 -0
  117. data/doc_out/SecurityProfileEntityListing.html.md +2 -2
  118. data/doc_out/ShareEntityListing.html.md +2 -2
  119. data/doc_out/SiteEntityListing.html.md +2 -2
  120. data/doc_out/SkillEntityListing.html.md +2 -2
  121. data/doc_out/SocialExpression.html.md +1 -1
  122. data/doc_out/StationEntityListing.html.md +2 -2
  123. data/doc_out/TagValueEntityListing.html.md +2 -2
  124. data/doc_out/TelephonyProvidersEdgeApi.html.md +2 -2
  125. data/doc_out/TimeZoneEntityListing.html.md +2 -2
  126. data/doc_out/TrunkBaseEntityListing.html.md +22 -0
  127. data/doc_out/TrunkEntityListing.html.md +2 -2
  128. data/doc_out/TrunkMetabaseEntityListing.html.md +2 -2
  129. data/doc_out/UserAgentInfo.html.md +15 -0
  130. data/doc_out/UserEntityListing.html.md +2 -2
  131. data/doc_out/UserQueueEntityListing.html.md +2 -2
  132. data/doc_out/UserRecordingEntityListing.html.md +2 -2
  133. data/doc_out/UserSkillEntityListing.html.md +2 -2
  134. data/doc_out/UsersApi.html.md +57 -0
  135. data/doc_out/UsersEntityListing.html.md +2 -2
  136. data/doc_out/WorkforceManagementApi.html.md +463 -0
  137. data/doc_out/Workspace.html.md +1 -1
  138. data/doc_out/WorkspaceEntityListing.html.md +2 -2
  139. data/doc_out/WorkspaceMember.html.md +1 -1
  140. data/doc_out/WorkspaceMemberEntityListing.html.md +2 -2
  141. data/doc_out/WrapupCodeEntityListing.html.md +2 -2
  142. data/doc_out/index.html.md +3 -3
  143. data/lib/purecloud.rb +18 -0
  144. data/lib/purecloud/api/conversations_api.rb +74 -0
  145. data/lib/purecloud/api/groups_api.rb +64 -0
  146. data/lib/purecloud/api/organization_api.rb +64 -0
  147. data/lib/purecloud/api/telephony_providers_edge_api.rb +3 -3
  148. data/lib/purecloud/api/users_api.rb +64 -0
  149. data/lib/purecloud/api/workforce_management_api.rb +493 -0
  150. data/lib/purecloud/api_client.rb +1 -1
  151. data/lib/purecloud/models/adfs.rb +11 -11
  152. data/lib/purecloud/models/agent_activity_entity_listing.rb +21 -21
  153. data/lib/purecloud/models/aggregation_query.rb +12 -1
  154. data/lib/purecloud/models/analytics_participant.rb +21 -1
  155. data/lib/purecloud/models/analytics_query_clause.rb +1 -0
  156. data/lib/purecloud/models/analytics_query_filter.rb +1 -0
  157. data/lib/purecloud/models/analytics_query_predicate.rb +1 -1
  158. data/lib/purecloud/models/analytics_session.rb +1 -1
  159. data/lib/purecloud/models/attempt_limits_entity_listing.rb +21 -21
  160. data/lib/purecloud/models/attribute_entity_listing.rb +21 -21
  161. data/lib/purecloud/models/calibration_entity_listing.rb +21 -21
  162. data/lib/purecloud/models/call_conversation_entity_listing.rb +21 -21
  163. data/lib/purecloud/models/callable_time_set_entity_listing.rb +21 -21
  164. data/lib/purecloud/models/callback_conversation_entity_listing.rb +21 -21
  165. data/lib/purecloud/models/campaign_entity_listing.rb +21 -21
  166. data/lib/purecloud/models/campaign_sequence_entity_listing.rb +21 -21
  167. data/lib/purecloud/models/certificate_authority_entity_listing.rb +21 -21
  168. data/lib/purecloud/models/channel_entity_listing.rb +21 -21
  169. data/lib/purecloud/models/chat_conversation_entity_listing.rb +21 -21
  170. data/lib/purecloud/models/cobrowse_conversation_entity_listing.rb +21 -21
  171. data/lib/purecloud/models/command_status_entity_listing.rb +21 -21
  172. data/lib/purecloud/models/contact_list_entity_listing.rb +21 -21
  173. data/lib/purecloud/models/conversation_entity_listing.rb +21 -21
  174. data/lib/purecloud/models/customer_interaction_center.rb +11 -11
  175. data/lib/purecloud/models/did_entity_listing.rb +21 -21
  176. data/lib/purecloud/models/did_pool_entity_listing.rb +21 -21
  177. data/lib/purecloud/models/dnc_list_entity_listing.rb +21 -21
  178. data/lib/purecloud/models/document_audit_entity_listing.rb +21 -21
  179. data/lib/purecloud/models/document_entity_listing.rb +21 -21
  180. data/lib/purecloud/models/domain_edge_software_version_dto_entity_listing.rb +21 -21
  181. data/lib/purecloud/models/domain_entity_listing.rb +21 -21
  182. data/lib/purecloud/models/domain_entity_listing_evaluation_form.rb +21 -21
  183. data/lib/purecloud/models/domain_entity_listing_query_result.rb +21 -21
  184. data/lib/purecloud/models/domain_organization_role.rb +14 -13
  185. data/lib/purecloud/models/domain_organization_role_create.rb +14 -13
  186. data/lib/purecloud/models/domain_organization_role_update.rb +279 -0
  187. data/lib/purecloud/models/edge_entity_listing.rb +21 -21
  188. data/lib/purecloud/models/edge_group_entity_listing.rb +21 -21
  189. data/lib/purecloud/models/edge_line_entity_listing.rb +21 -21
  190. data/lib/purecloud/models/email_conversation_entity_listing.rb +21 -21
  191. data/lib/purecloud/models/email_message_listing.rb +21 -21
  192. data/lib/purecloud/models/encryption_key_entity_listing.rb +21 -21
  193. data/lib/purecloud/models/endpoint_entity_listing.rb +21 -21
  194. data/lib/purecloud/models/evaluation_entity_listing.rb +21 -21
  195. data/lib/purecloud/models/evaluation_form_entity_listing.rb +21 -21
  196. data/lib/purecloud/models/evaluator_activity_entity_listing.rb +21 -21
  197. data/lib/purecloud/models/extension_entity_listing.rb +21 -21
  198. data/lib/purecloud/models/extension_pool_entity_listing.rb +21 -21
  199. data/lib/purecloud/models/fax_document_entity_listing.rb +21 -21
  200. data/lib/purecloud/models/field_config.rb +248 -0
  201. data/lib/purecloud/models/field_list.rb +255 -0
  202. data/lib/purecloud/models/forecast.rb +201 -0
  203. data/lib/purecloud/models/forecast_creation.rb +221 -0
  204. data/lib/purecloud/models/forecast_creation_completion.rb +186 -0
  205. data/lib/purecloud/models/forecast_dimensions.rb +197 -0
  206. data/lib/purecloud/models/forecast_entry.rb +199 -0
  207. data/lib/purecloud/models/forecast_filter_attributes.rb +191 -0
  208. data/lib/purecloud/models/forecast_metadata.rb +284 -0
  209. data/lib/purecloud/models/forecast_metadata_entity_listing.rb +257 -0
  210. data/lib/purecloud/models/forecast_modification.rb +339 -0
  211. data/lib/purecloud/models/forecast_modification_creation.rb +317 -0
  212. data/lib/purecloud/models/forecast_search_criteria.rb +267 -0
  213. data/lib/purecloud/models/forecast_search_request.rb +259 -0
  214. data/lib/purecloud/models/group_entity_listing.rb +21 -21
  215. data/lib/purecloud/models/heart_beat_alert_container.rb +21 -21
  216. data/lib/purecloud/models/heart_beat_rule_container.rb +21 -21
  217. data/lib/purecloud/models/inbound_domain_entity_listing.rb +21 -21
  218. data/lib/purecloud/models/inbound_route_entity_listing.rb +21 -21
  219. data/lib/purecloud/models/interaction_stats_alert_container.rb +21 -21
  220. data/lib/purecloud/models/interaction_stats_rule_container.rb +21 -21
  221. data/lib/purecloud/models/json_node.rb +44 -44
  222. data/lib/purecloud/models/keyword_set_entity_listing.rb +21 -21
  223. data/lib/purecloud/models/language_entity_listing.rb +21 -21
  224. data/lib/purecloud/models/library_entity_listing.rb +21 -21
  225. data/lib/purecloud/models/line_base_entity_listing.rb +21 -21
  226. data/lib/purecloud/models/line_entity_listing.rb +21 -21
  227. data/lib/purecloud/models/logical_interface_entity_listing.rb +21 -21
  228. data/lib/purecloud/models/o_auth_client_entity_listing.rb +21 -21
  229. data/lib/purecloud/models/o_auth_provider_entity_listing.rb +21 -21
  230. data/lib/purecloud/models/okta.rb +11 -11
  231. data/lib/purecloud/models/one_login.rb +11 -11
  232. data/lib/purecloud/models/organization_presence_entity_listing.rb +21 -21
  233. data/lib/purecloud/models/organization_role_entity_listing.rb +21 -21
  234. data/lib/purecloud/models/orphan_recording_listing.rb +21 -21
  235. data/lib/purecloud/models/outbound_route_entity_listing.rb +21 -21
  236. data/lib/purecloud/models/permission_collection_entity_listing.rb +21 -21
  237. data/lib/purecloud/models/phone.rb +12 -1
  238. data/lib/purecloud/models/phone_base_entity_listing.rb +21 -21
  239. data/lib/purecloud/models/phone_entity_listing.rb +21 -21
  240. data/lib/purecloud/models/phone_meta_base_entity_listing.rb +21 -21
  241. data/lib/purecloud/models/phone_status.rb +12 -1
  242. data/lib/purecloud/models/physical_interface_entity_listing.rb +21 -21
  243. data/lib/purecloud/models/policy_entity_listing.rb +21 -21
  244. data/lib/purecloud/models/property_index_request.rb +9 -9
  245. data/lib/purecloud/models/quality_audit_page.rb +21 -21
  246. data/lib/purecloud/models/queue_entity_listing.rb +21 -21
  247. data/lib/purecloud/models/queue_member_entity_listing.rb +21 -21
  248. data/lib/purecloud/models/report_meta_data_entity_listing.rb +21 -21
  249. data/lib/purecloud/models/report_run_entry_entity_domain_listing.rb +21 -21
  250. data/lib/purecloud/models/report_schedule_entity_listing.rb +21 -21
  251. data/lib/purecloud/models/response_entity_list.rb +21 -21
  252. data/lib/purecloud/models/response_entity_listing.rb +21 -21
  253. data/lib/purecloud/models/response_set_entity_listing.rb +21 -21
  254. data/lib/purecloud/models/rule_set_entity_listing.rb +21 -21
  255. data/lib/purecloud/models/salesforce.rb +11 -11
  256. data/lib/purecloud/models/schema_category_entity_listing.rb +21 -21
  257. data/lib/purecloud/models/schema_reference_entity_listing.rb +21 -21
  258. data/lib/purecloud/models/screen_recording_session_listing.rb +21 -21
  259. data/lib/purecloud/models/section.rb +197 -0
  260. data/lib/purecloud/models/security_profile_entity_listing.rb +21 -21
  261. data/lib/purecloud/models/share_entity_listing.rb +21 -21
  262. data/lib/purecloud/models/site_entity_listing.rb +21 -21
  263. data/lib/purecloud/models/skill_entity_listing.rb +21 -21
  264. data/lib/purecloud/models/social_expression.rb +1 -1
  265. data/lib/purecloud/models/station_entity_listing.rb +21 -21
  266. data/lib/purecloud/models/tag_value_entity_listing.rb +21 -21
  267. data/lib/purecloud/models/time_zone_entity_listing.rb +21 -21
  268. data/lib/purecloud/models/trunk_base_entity_listing.rb +257 -0
  269. data/lib/purecloud/models/trunk_entity_listing.rb +21 -21
  270. data/lib/purecloud/models/trunk_metabase_entity_listing.rb +21 -21
  271. data/lib/purecloud/models/user_agent_info.rb +188 -0
  272. data/lib/purecloud/models/user_entity_listing.rb +21 -21
  273. data/lib/purecloud/models/user_queue_entity_listing.rb +21 -21
  274. data/lib/purecloud/models/user_recording_entity_listing.rb +21 -21
  275. data/lib/purecloud/models/user_skill_entity_listing.rb +21 -21
  276. data/lib/purecloud/models/users_entity_listing.rb +21 -21
  277. data/lib/purecloud/models/workspace.rb +1 -0
  278. data/lib/purecloud/models/workspace_entity_listing.rb +21 -21
  279. data/lib/purecloud/models/workspace_member.rb +1 -0
  280. data/lib/purecloud/models/workspace_member_entity_listing.rb +21 -21
  281. data/lib/purecloud/models/wrapup_code_entity_listing.rb +21 -21
  282. data/lib/purecloud/version.rb +1 -1
  283. data/newVersion.md +1 -1
  284. data/swagger.json +1 -1
  285. data/version.json +1 -1
  286. metadata +38 -2
@@ -0,0 +1,255 @@
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@inin.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+
10
+ License: ININ
11
+ http://www.inin.com
12
+
13
+ Terms of Service: https://developer.mypurecloud.com/tos
14
+
15
+ =end
16
+
17
+ require 'date'
18
+
19
+ module PureCloud
20
+ class FieldList
21
+ attr_accessor :custom_labels
22
+
23
+ attr_accessor :instruction_text
24
+
25
+ attr_accessor :key
26
+
27
+ attr_accessor :label_keys
28
+
29
+ attr_accessor :params
30
+
31
+ attr_accessor :repeatable
32
+
33
+ attr_accessor :state
34
+
35
+ attr_accessor :type
36
+
37
+ attr_accessor :required
38
+
39
+ # Attribute mapping from ruby-style variable name to JSON key.
40
+ def self.attribute_map
41
+ {
42
+
43
+ :'custom_labels' => :'customLabels',
44
+
45
+ :'instruction_text' => :'instructionText',
46
+
47
+ :'key' => :'key',
48
+
49
+ :'label_keys' => :'labelKeys',
50
+
51
+ :'params' => :'params',
52
+
53
+ :'repeatable' => :'repeatable',
54
+
55
+ :'state' => :'state',
56
+
57
+ :'type' => :'type',
58
+
59
+ :'required' => :'required'
60
+
61
+ }
62
+ end
63
+
64
+ # Attribute type mapping.
65
+ def self.swagger_types
66
+ {
67
+ :'custom_labels' => :'BOOLEAN',
68
+ :'instruction_text' => :'String',
69
+ :'key' => :'String',
70
+ :'label_keys' => :'Array<String>',
71
+ :'params' => :'Hash<String, Object>',
72
+ :'repeatable' => :'BOOLEAN',
73
+ :'state' => :'String',
74
+ :'type' => :'String',
75
+ :'required' => :'BOOLEAN'
76
+
77
+ }
78
+ end
79
+
80
+ def initialize(attributes = {})
81
+ return unless attributes.is_a?(Hash)
82
+
83
+ # convert string to symbol for hash key
84
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
85
+
86
+
87
+ if attributes[:'customLabels']
88
+ self.custom_labels = attributes[:'customLabels']
89
+ else
90
+ self.custom_labels = false
91
+ end
92
+
93
+ if attributes[:'instructionText']
94
+ self.instruction_text = attributes[:'instructionText']
95
+ end
96
+
97
+ if attributes[:'key']
98
+ self.key = attributes[:'key']
99
+ end
100
+
101
+ if attributes[:'labelKeys']
102
+ if (value = attributes[:'labelKeys']).is_a?(Array)
103
+ self.label_keys = value
104
+ end
105
+ end
106
+
107
+ if attributes[:'params']
108
+ if (value = attributes[:'params']).is_a?(Array)
109
+ self.params = value
110
+ end
111
+ end
112
+
113
+ if attributes[:'repeatable']
114
+ self.repeatable = attributes[:'repeatable']
115
+ else
116
+ self.repeatable = false
117
+ end
118
+
119
+ if attributes[:'state']
120
+ self.state = attributes[:'state']
121
+ end
122
+
123
+ if attributes[:'type']
124
+ self.type = attributes[:'type']
125
+ end
126
+
127
+ if attributes[:'required']
128
+ self.required = attributes[:'required']
129
+ else
130
+ self.required = false
131
+ end
132
+
133
+ end
134
+
135
+ # Check equality by comparing each attribute.
136
+ def ==(o)
137
+ return true if self.equal?(o)
138
+ self.class == o.class &&
139
+ custom_labels == o.custom_labels &&
140
+ instruction_text == o.instruction_text &&
141
+ key == o.key &&
142
+ label_keys == o.label_keys &&
143
+ params == o.params &&
144
+ repeatable == o.repeatable &&
145
+ state == o.state &&
146
+ type == o.type &&
147
+ required == o.required
148
+ end
149
+
150
+ # @see the `==` method
151
+ def eql?(o)
152
+ self == o
153
+ end
154
+
155
+ # Calculate hash code according to all attributes.
156
+ def hash
157
+ [custom_labels, instruction_text, key, label_keys, params, repeatable, state, type, required].hash
158
+ end
159
+
160
+ # build the object from hash
161
+ def build_from_hash(attributes)
162
+ return nil unless attributes.is_a?(Hash)
163
+ self.class.swagger_types.each_pair do |key, type|
164
+ if type =~ /^Array<(.*)>/i
165
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
166
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
167
+ else
168
+ #TODO show warning in debug mode
169
+ end
170
+ elsif !attributes[self.class.attribute_map[key]].nil?
171
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
172
+ else
173
+ # data not found in attributes(hash), not an issue as the data can be optional
174
+ end
175
+ end
176
+
177
+ self
178
+ end
179
+
180
+ def _deserialize(type, value)
181
+ case type.to_sym
182
+ when :DateTime
183
+ DateTime.parse(value)
184
+ when :Date
185
+ Date.parse(value)
186
+ when :String
187
+ value.to_s
188
+ when :Integer
189
+ value.to_i
190
+ when :Float
191
+ value.to_f
192
+ when :BOOLEAN
193
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
194
+ true
195
+ else
196
+ false
197
+ end
198
+ when :Object
199
+ # generic object (usually a Hash), return directly
200
+ value
201
+ when /\AArray<(?<inner_type>.+)>\z/
202
+ inner_type = Regexp.last_match[:inner_type]
203
+ value.map { |v| _deserialize(inner_type, v) }
204
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
205
+ k_type = Regexp.last_match[:k_type]
206
+ v_type = Regexp.last_match[:v_type]
207
+ {}.tap do |hash|
208
+ value.each do |k, v|
209
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
210
+ end
211
+ end
212
+ else # model
213
+ _model = Object.const_get("PureCloud").const_get(type).new
214
+ _model.build_from_hash(value)
215
+ end
216
+ end
217
+
218
+ def to_s
219
+ to_hash.to_s
220
+ end
221
+
222
+ # to_body is an alias to to_body (backward compatibility))
223
+ def to_body
224
+ to_hash
225
+ end
226
+
227
+ # return the object in the form of hash
228
+ def to_hash
229
+ hash = {}
230
+ self.class.attribute_map.each_pair do |attr, param|
231
+ value = self.send(attr)
232
+ next if value.nil?
233
+ hash[param] = _to_hash(value)
234
+ end
235
+ hash
236
+ end
237
+
238
+ # Method to output non-array value in the form of hash
239
+ # For object, use to_hash. Otherwise, just return the value
240
+ def _to_hash(value)
241
+ if value.is_a?(Array)
242
+ value.compact.map{ |v| _to_hash(v) }
243
+ elsif value.is_a?(Hash)
244
+ {}.tap do |hash|
245
+ value.each { |k, v| hash[k] = _to_hash(v) }
246
+ end
247
+ elsif value.respond_to? :to_hash
248
+ value.to_hash
249
+ else
250
+ value
251
+ end
252
+ end
253
+
254
+ end
255
+ end
@@ -0,0 +1,201 @@
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@inin.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+
10
+ License: ININ
11
+ http://www.inin.com
12
+
13
+ Terms of Service: https://developer.mypurecloud.com/tos
14
+
15
+ =end
16
+
17
+ require 'date'
18
+
19
+ module PureCloud
20
+ class Forecast
21
+ # The metadata of the forecast
22
+ attr_accessor :metadata
23
+
24
+ # The start date time of the forecast. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
25
+ attr_accessor :start_date
26
+
27
+ # The entries of forecasted values and their dimensions
28
+ attr_accessor :forecast_entries
29
+
30
+ # The error happening when producing the forecasts
31
+ attr_accessor :error_message
32
+
33
+ # Attribute mapping from ruby-style variable name to JSON key.
34
+ def self.attribute_map
35
+ {
36
+
37
+ :'metadata' => :'metadata',
38
+
39
+ :'start_date' => :'startDate',
40
+
41
+ :'forecast_entries' => :'forecastEntries',
42
+
43
+ :'error_message' => :'errorMessage'
44
+
45
+ }
46
+ end
47
+
48
+ # Attribute type mapping.
49
+ def self.swagger_types
50
+ {
51
+ :'metadata' => :'ForecastMetadata',
52
+ :'start_date' => :'DateTime',
53
+ :'forecast_entries' => :'Array<ForecastEntry>',
54
+ :'error_message' => :'String'
55
+
56
+ }
57
+ end
58
+
59
+ def initialize(attributes = {})
60
+ return unless attributes.is_a?(Hash)
61
+
62
+ # convert string to symbol for hash key
63
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
64
+
65
+
66
+ if attributes[:'metadata']
67
+ self.metadata = attributes[:'metadata']
68
+ end
69
+
70
+ if attributes[:'startDate']
71
+ self.start_date = attributes[:'startDate']
72
+ end
73
+
74
+ if attributes[:'forecastEntries']
75
+ if (value = attributes[:'forecastEntries']).is_a?(Array)
76
+ self.forecast_entries = value
77
+ end
78
+ end
79
+
80
+ if attributes[:'errorMessage']
81
+ self.error_message = attributes[:'errorMessage']
82
+ end
83
+
84
+ end
85
+
86
+ # Check equality by comparing each attribute.
87
+ def ==(o)
88
+ return true if self.equal?(o)
89
+ self.class == o.class &&
90
+ metadata == o.metadata &&
91
+ start_date == o.start_date &&
92
+ forecast_entries == o.forecast_entries &&
93
+ error_message == o.error_message
94
+ end
95
+
96
+ # @see the `==` method
97
+ def eql?(o)
98
+ self == o
99
+ end
100
+
101
+ # Calculate hash code according to all attributes.
102
+ def hash
103
+ [metadata, start_date, forecast_entries, error_message].hash
104
+ end
105
+
106
+ # build the object from hash
107
+ def build_from_hash(attributes)
108
+ return nil unless attributes.is_a?(Hash)
109
+ self.class.swagger_types.each_pair do |key, type|
110
+ if type =~ /^Array<(.*)>/i
111
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
112
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
113
+ else
114
+ #TODO show warning in debug mode
115
+ end
116
+ elsif !attributes[self.class.attribute_map[key]].nil?
117
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
118
+ else
119
+ # data not found in attributes(hash), not an issue as the data can be optional
120
+ end
121
+ end
122
+
123
+ self
124
+ end
125
+
126
+ def _deserialize(type, value)
127
+ case type.to_sym
128
+ when :DateTime
129
+ DateTime.parse(value)
130
+ when :Date
131
+ Date.parse(value)
132
+ when :String
133
+ value.to_s
134
+ when :Integer
135
+ value.to_i
136
+ when :Float
137
+ value.to_f
138
+ when :BOOLEAN
139
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
140
+ true
141
+ else
142
+ false
143
+ end
144
+ when :Object
145
+ # generic object (usually a Hash), return directly
146
+ value
147
+ when /\AArray<(?<inner_type>.+)>\z/
148
+ inner_type = Regexp.last_match[:inner_type]
149
+ value.map { |v| _deserialize(inner_type, v) }
150
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
151
+ k_type = Regexp.last_match[:k_type]
152
+ v_type = Regexp.last_match[:v_type]
153
+ {}.tap do |hash|
154
+ value.each do |k, v|
155
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
156
+ end
157
+ end
158
+ else # model
159
+ _model = Object.const_get("PureCloud").const_get(type).new
160
+ _model.build_from_hash(value)
161
+ end
162
+ end
163
+
164
+ def to_s
165
+ to_hash.to_s
166
+ end
167
+
168
+ # to_body is an alias to to_body (backward compatibility))
169
+ def to_body
170
+ to_hash
171
+ end
172
+
173
+ # return the object in the form of hash
174
+ def to_hash
175
+ hash = {}
176
+ self.class.attribute_map.each_pair do |attr, param|
177
+ value = self.send(attr)
178
+ next if value.nil?
179
+ hash[param] = _to_hash(value)
180
+ end
181
+ hash
182
+ end
183
+
184
+ # Method to output non-array value in the form of hash
185
+ # For object, use to_hash. Otherwise, just return the value
186
+ def _to_hash(value)
187
+ if value.is_a?(Array)
188
+ value.compact.map{ |v| _to_hash(v) }
189
+ elsif value.is_a?(Hash)
190
+ {}.tap do |hash|
191
+ value.each { |k, v| hash[k] = _to_hash(v) }
192
+ end
193
+ elsif value.respond_to? :to_hash
194
+ value.to_hash
195
+ else
196
+ value
197
+ end
198
+ end
199
+
200
+ end
201
+ end