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,221 @@
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 ForecastCreation
21
+ # The number of periods to be forecasted for
22
+ attr_accessor :number_of_periods
23
+
24
+ # The frequency of the period
25
+ attr_accessor :period_frequency
26
+
27
+ # The description of the forecast to be created
28
+ attr_accessor :description
29
+
30
+ # The metrics the forecast is for
31
+ attr_accessor :metrics
32
+
33
+ # The id of the management unit to which the new forecast belongs
34
+ attr_accessor :management_unit_id
35
+
36
+ # Attribute mapping from ruby-style variable name to JSON key.
37
+ def self.attribute_map
38
+ {
39
+
40
+ :'number_of_periods' => :'numberOfPeriods',
41
+
42
+ :'period_frequency' => :'periodFrequency',
43
+
44
+ :'description' => :'description',
45
+
46
+ :'metrics' => :'metrics',
47
+
48
+ :'management_unit_id' => :'managementUnitId'
49
+
50
+ }
51
+ end
52
+
53
+ # Attribute type mapping.
54
+ def self.swagger_types
55
+ {
56
+ :'number_of_periods' => :'Integer',
57
+ :'period_frequency' => :'String',
58
+ :'description' => :'String',
59
+ :'metrics' => :'Array<String>',
60
+ :'management_unit_id' => :'String'
61
+
62
+ }
63
+ end
64
+
65
+ def initialize(attributes = {})
66
+ return unless attributes.is_a?(Hash)
67
+
68
+ # convert string to symbol for hash key
69
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
70
+
71
+
72
+ if attributes[:'numberOfPeriods']
73
+ self.number_of_periods = attributes[:'numberOfPeriods']
74
+ end
75
+
76
+ if attributes[:'periodFrequency']
77
+ self.period_frequency = attributes[:'periodFrequency']
78
+ end
79
+
80
+ if attributes[:'description']
81
+ self.description = attributes[:'description']
82
+ end
83
+
84
+ if attributes[:'metrics']
85
+ if (value = attributes[:'metrics']).is_a?(Array)
86
+ self.metrics = value
87
+ end
88
+ end
89
+
90
+ if attributes[:'managementUnitId']
91
+ self.management_unit_id = attributes[:'managementUnitId']
92
+ end
93
+
94
+ end
95
+
96
+ # Custom attribute writer method checking allowed values (enum).
97
+ def period_frequency=(period_frequency)
98
+ allowed_values = ["WEEK"]
99
+ if period_frequency && !allowed_values.include?(period_frequency)
100
+ fail "invalid value for 'period_frequency', must be one of #{allowed_values}"
101
+ end
102
+ @period_frequency = period_frequency
103
+ end
104
+
105
+ # Check equality by comparing each attribute.
106
+ def ==(o)
107
+ return true if self.equal?(o)
108
+ self.class == o.class &&
109
+ number_of_periods == o.number_of_periods &&
110
+ period_frequency == o.period_frequency &&
111
+ description == o.description &&
112
+ metrics == o.metrics &&
113
+ management_unit_id == o.management_unit_id
114
+ end
115
+
116
+ # @see the `==` method
117
+ def eql?(o)
118
+ self == o
119
+ end
120
+
121
+ # Calculate hash code according to all attributes.
122
+ def hash
123
+ [number_of_periods, period_frequency, description, metrics, management_unit_id].hash
124
+ end
125
+
126
+ # build the object from hash
127
+ def build_from_hash(attributes)
128
+ return nil unless attributes.is_a?(Hash)
129
+ self.class.swagger_types.each_pair do |key, type|
130
+ if type =~ /^Array<(.*)>/i
131
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
132
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
133
+ else
134
+ #TODO show warning in debug mode
135
+ end
136
+ elsif !attributes[self.class.attribute_map[key]].nil?
137
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
138
+ else
139
+ # data not found in attributes(hash), not an issue as the data can be optional
140
+ end
141
+ end
142
+
143
+ self
144
+ end
145
+
146
+ def _deserialize(type, value)
147
+ case type.to_sym
148
+ when :DateTime
149
+ DateTime.parse(value)
150
+ when :Date
151
+ Date.parse(value)
152
+ when :String
153
+ value.to_s
154
+ when :Integer
155
+ value.to_i
156
+ when :Float
157
+ value.to_f
158
+ when :BOOLEAN
159
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
160
+ true
161
+ else
162
+ false
163
+ end
164
+ when :Object
165
+ # generic object (usually a Hash), return directly
166
+ value
167
+ when /\AArray<(?<inner_type>.+)>\z/
168
+ inner_type = Regexp.last_match[:inner_type]
169
+ value.map { |v| _deserialize(inner_type, v) }
170
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
171
+ k_type = Regexp.last_match[:k_type]
172
+ v_type = Regexp.last_match[:v_type]
173
+ {}.tap do |hash|
174
+ value.each do |k, v|
175
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
176
+ end
177
+ end
178
+ else # model
179
+ _model = Object.const_get("PureCloud").const_get(type).new
180
+ _model.build_from_hash(value)
181
+ end
182
+ end
183
+
184
+ def to_s
185
+ to_hash.to_s
186
+ end
187
+
188
+ # to_body is an alias to to_body (backward compatibility))
189
+ def to_body
190
+ to_hash
191
+ end
192
+
193
+ # return the object in the form of hash
194
+ def to_hash
195
+ hash = {}
196
+ self.class.attribute_map.each_pair do |attr, param|
197
+ value = self.send(attr)
198
+ next if value.nil?
199
+ hash[param] = _to_hash(value)
200
+ end
201
+ hash
202
+ end
203
+
204
+ # Method to output non-array value in the form of hash
205
+ # For object, use to_hash. Otherwise, just return the value
206
+ def _to_hash(value)
207
+ if value.is_a?(Array)
208
+ value.compact.map{ |v| _to_hash(v) }
209
+ elsif value.is_a?(Hash)
210
+ {}.tap do |hash|
211
+ value.each { |k, v| hash[k] = _to_hash(v) }
212
+ end
213
+ elsif value.respond_to? :to_hash
214
+ value.to_hash
215
+ else
216
+ value
217
+ end
218
+ end
219
+
220
+ end
221
+ end
@@ -0,0 +1,186 @@
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 ForecastCreationCompletion
21
+ # The id of the forecast
22
+ attr_accessor :forecast_id
23
+
24
+ # The status of the creation of the forecast
25
+ attr_accessor :status
26
+
27
+ # Attribute mapping from ruby-style variable name to JSON key.
28
+ def self.attribute_map
29
+ {
30
+
31
+ :'forecast_id' => :'forecastId',
32
+
33
+ :'status' => :'status'
34
+
35
+ }
36
+ end
37
+
38
+ # Attribute type mapping.
39
+ def self.swagger_types
40
+ {
41
+ :'forecast_id' => :'String',
42
+ :'status' => :'String'
43
+
44
+ }
45
+ end
46
+
47
+ def initialize(attributes = {})
48
+ return unless attributes.is_a?(Hash)
49
+
50
+ # convert string to symbol for hash key
51
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
52
+
53
+
54
+ if attributes[:'forecastId']
55
+ self.forecast_id = attributes[:'forecastId']
56
+ end
57
+
58
+ if attributes[:'status']
59
+ self.status = attributes[:'status']
60
+ end
61
+
62
+ end
63
+
64
+ # Custom attribute writer method checking allowed values (enum).
65
+ def status=(status)
66
+ allowed_values = ["SUCCESS", "FAILED"]
67
+ if status && !allowed_values.include?(status)
68
+ fail "invalid value for 'status', must be one of #{allowed_values}"
69
+ end
70
+ @status = status
71
+ end
72
+
73
+ # Check equality by comparing each attribute.
74
+ def ==(o)
75
+ return true if self.equal?(o)
76
+ self.class == o.class &&
77
+ forecast_id == o.forecast_id &&
78
+ status == o.status
79
+ end
80
+
81
+ # @see the `==` method
82
+ def eql?(o)
83
+ self == o
84
+ end
85
+
86
+ # Calculate hash code according to all attributes.
87
+ def hash
88
+ [forecast_id, status].hash
89
+ end
90
+
91
+ # build the object from hash
92
+ def build_from_hash(attributes)
93
+ return nil unless attributes.is_a?(Hash)
94
+ self.class.swagger_types.each_pair do |key, type|
95
+ if type =~ /^Array<(.*)>/i
96
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
97
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
98
+ else
99
+ #TODO show warning in debug mode
100
+ end
101
+ elsif !attributes[self.class.attribute_map[key]].nil?
102
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
103
+ else
104
+ # data not found in attributes(hash), not an issue as the data can be optional
105
+ end
106
+ end
107
+
108
+ self
109
+ end
110
+
111
+ def _deserialize(type, value)
112
+ case type.to_sym
113
+ when :DateTime
114
+ DateTime.parse(value)
115
+ when :Date
116
+ Date.parse(value)
117
+ when :String
118
+ value.to_s
119
+ when :Integer
120
+ value.to_i
121
+ when :Float
122
+ value.to_f
123
+ when :BOOLEAN
124
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
125
+ true
126
+ else
127
+ false
128
+ end
129
+ when :Object
130
+ # generic object (usually a Hash), return directly
131
+ value
132
+ when /\AArray<(?<inner_type>.+)>\z/
133
+ inner_type = Regexp.last_match[:inner_type]
134
+ value.map { |v| _deserialize(inner_type, v) }
135
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
136
+ k_type = Regexp.last_match[:k_type]
137
+ v_type = Regexp.last_match[:v_type]
138
+ {}.tap do |hash|
139
+ value.each do |k, v|
140
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
141
+ end
142
+ end
143
+ else # model
144
+ _model = Object.const_get("PureCloud").const_get(type).new
145
+ _model.build_from_hash(value)
146
+ end
147
+ end
148
+
149
+ def to_s
150
+ to_hash.to_s
151
+ end
152
+
153
+ # to_body is an alias to to_body (backward compatibility))
154
+ def to_body
155
+ to_hash
156
+ end
157
+
158
+ # return the object in the form of hash
159
+ def to_hash
160
+ hash = {}
161
+ self.class.attribute_map.each_pair do |attr, param|
162
+ value = self.send(attr)
163
+ next if value.nil?
164
+ hash[param] = _to_hash(value)
165
+ end
166
+ hash
167
+ end
168
+
169
+ # Method to output non-array value in the form of hash
170
+ # For object, use to_hash. Otherwise, just return the value
171
+ def _to_hash(value)
172
+ if value.is_a?(Array)
173
+ value.compact.map{ |v| _to_hash(v) }
174
+ elsif value.is_a?(Hash)
175
+ {}.tap do |hash|
176
+ value.each { |k, v| hash[k] = _to_hash(v) }
177
+ end
178
+ elsif value.respond_to? :to_hash
179
+ value.to_hash
180
+ else
181
+ value
182
+ end
183
+ end
184
+
185
+ end
186
+ end
@@ -0,0 +1,197 @@
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 ForecastDimensions
21
+ # The language of the forecast
22
+ attr_accessor :language
23
+
24
+ # The media of the forecast
25
+ attr_accessor :media
26
+
27
+ # The queue of the forecast
28
+ attr_accessor :queue
29
+
30
+ # Attribute mapping from ruby-style variable name to JSON key.
31
+ def self.attribute_map
32
+ {
33
+
34
+ :'language' => :'language',
35
+
36
+ :'media' => :'media',
37
+
38
+ :'queue' => :'queue'
39
+
40
+ }
41
+ end
42
+
43
+ # Attribute type mapping.
44
+ def self.swagger_types
45
+ {
46
+ :'language' => :'Language',
47
+ :'media' => :'String',
48
+ :'queue' => :'Queue'
49
+
50
+ }
51
+ end
52
+
53
+ def initialize(attributes = {})
54
+ return unless attributes.is_a?(Hash)
55
+
56
+ # convert string to symbol for hash key
57
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
58
+
59
+
60
+ if attributes[:'language']
61
+ self.language = attributes[:'language']
62
+ end
63
+
64
+ if attributes[:'media']
65
+ self.media = attributes[:'media']
66
+ end
67
+
68
+ if attributes[:'queue']
69
+ self.queue = attributes[:'queue']
70
+ end
71
+
72
+ end
73
+
74
+ # Custom attribute writer method checking allowed values (enum).
75
+ def media=(media)
76
+ allowed_values = ["VOICE", "CHAT", "EMAIL"]
77
+ if media && !allowed_values.include?(media)
78
+ fail "invalid value for 'media', must be one of #{allowed_values}"
79
+ end
80
+ @media = media
81
+ end
82
+
83
+ # Check equality by comparing each attribute.
84
+ def ==(o)
85
+ return true if self.equal?(o)
86
+ self.class == o.class &&
87
+ language == o.language &&
88
+ media == o.media &&
89
+ queue == o.queue
90
+ end
91
+
92
+ # @see the `==` method
93
+ def eql?(o)
94
+ self == o
95
+ end
96
+
97
+ # Calculate hash code according to all attributes.
98
+ def hash
99
+ [language, media, queue].hash
100
+ end
101
+
102
+ # build the object from hash
103
+ def build_from_hash(attributes)
104
+ return nil unless attributes.is_a?(Hash)
105
+ self.class.swagger_types.each_pair do |key, type|
106
+ if type =~ /^Array<(.*)>/i
107
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
108
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
109
+ else
110
+ #TODO show warning in debug mode
111
+ end
112
+ elsif !attributes[self.class.attribute_map[key]].nil?
113
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
114
+ else
115
+ # data not found in attributes(hash), not an issue as the data can be optional
116
+ end
117
+ end
118
+
119
+ self
120
+ end
121
+
122
+ def _deserialize(type, value)
123
+ case type.to_sym
124
+ when :DateTime
125
+ DateTime.parse(value)
126
+ when :Date
127
+ Date.parse(value)
128
+ when :String
129
+ value.to_s
130
+ when :Integer
131
+ value.to_i
132
+ when :Float
133
+ value.to_f
134
+ when :BOOLEAN
135
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
136
+ true
137
+ else
138
+ false
139
+ end
140
+ when :Object
141
+ # generic object (usually a Hash), return directly
142
+ value
143
+ when /\AArray<(?<inner_type>.+)>\z/
144
+ inner_type = Regexp.last_match[:inner_type]
145
+ value.map { |v| _deserialize(inner_type, v) }
146
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
147
+ k_type = Regexp.last_match[:k_type]
148
+ v_type = Regexp.last_match[:v_type]
149
+ {}.tap do |hash|
150
+ value.each do |k, v|
151
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
152
+ end
153
+ end
154
+ else # model
155
+ _model = Object.const_get("PureCloud").const_get(type).new
156
+ _model.build_from_hash(value)
157
+ end
158
+ end
159
+
160
+ def to_s
161
+ to_hash.to_s
162
+ end
163
+
164
+ # to_body is an alias to to_body (backward compatibility))
165
+ def to_body
166
+ to_hash
167
+ end
168
+
169
+ # return the object in the form of hash
170
+ def to_hash
171
+ hash = {}
172
+ self.class.attribute_map.each_pair do |attr, param|
173
+ value = self.send(attr)
174
+ next if value.nil?
175
+ hash[param] = _to_hash(value)
176
+ end
177
+ hash
178
+ end
179
+
180
+ # Method to output non-array value in the form of hash
181
+ # For object, use to_hash. Otherwise, just return the value
182
+ def _to_hash(value)
183
+ if value.is_a?(Array)
184
+ value.compact.map{ |v| _to_hash(v) }
185
+ elsif value.is_a?(Hash)
186
+ {}.tap do |hash|
187
+ value.each { |k, v| hash[k] = _to_hash(v) }
188
+ end
189
+ elsif value.respond_to? :to_hash
190
+ value.to_hash
191
+ else
192
+ value
193
+ end
194
+ end
195
+
196
+ end
197
+ end