purecloud 0.38.1 → 0.39.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (147) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -3
  3. data/config-ruby.json +1 -1
  4. data/doc_out/AuthorizationApi.html.md +0 -57
  5. data/doc_out/AvailableLanguageList.html.md +13 -0
  6. data/doc_out/BillingContact.html.md +20 -0
  7. data/doc_out/{FlowHistoryResultItemEntityListing.html.md → BillingContactListing.html.md} +3 -3
  8. data/doc_out/CallRecord.html.md +2 -2
  9. data/doc_out/CallableContactsDiagnostic.html.md +3 -3
  10. data/doc_out/CallableTimeSet.html.md +3 -3
  11. data/doc_out/Campaign.html.md +3 -3
  12. data/doc_out/CampaignDiagnostics.html.md +3 -3
  13. data/doc_out/CampaignSchedule.html.md +6 -6
  14. data/doc_out/CampaignSequence.html.md +8 -8
  15. data/doc_out/CampaignStats.html.md +4 -4
  16. data/doc_out/Condition.html.md +7 -7
  17. data/doc_out/ConnectRate.html.md +3 -3
  18. data/doc_out/ContactCallbackRequest.html.md +5 -5
  19. data/doc_out/ContactList.html.md +9 -9
  20. data/doc_out/ContactPhoneNumberColumn.html.md +3 -3
  21. data/doc_out/CreateCallbackCommand.html.md +1 -0
  22. data/doc_out/CreateUser.html.md +1 -1
  23. data/doc_out/CustomerInteractionCenter.html.md +18 -0
  24. data/doc_out/DialerAction.html.md +4 -4
  25. data/doc_out/DialerContact.html.md +5 -5
  26. data/doc_out/DialerRule.html.md +6 -6
  27. data/doc_out/DncList.html.md +6 -7
  28. data/doc_out/ExternalContact.html.md +1 -0
  29. data/doc_out/ExternalDataSource.html.md +14 -0
  30. data/doc_out/ExternalOrganization.html.md +1 -0
  31. data/doc_out/IdentityProviderApi.html.md +1011 -0
  32. data/doc_out/ImportStatus.html.md +5 -5
  33. data/doc_out/InitiateScreenRecording.html.md +15 -0
  34. data/doc_out/JsonNode.html.md +3 -3
  35. data/doc_out/Keyword.html.md +19 -0
  36. data/doc_out/KeywordSet.html.md +21 -0
  37. data/doc_out/KeywordSetEntityListing.html.md +22 -0
  38. data/doc_out/OAuthApi.html.md +45 -886
  39. data/doc_out/OAuthClient.html.md +2 -2
  40. data/doc_out/Okta.html.md +1 -1
  41. data/doc_out/OneLogin.html.md +1 -1
  42. data/doc_out/OrgMediaUtilization.html.md +1 -0
  43. data/doc_out/OutboundApi.html.md +3 -3
  44. data/doc_out/PaymentMethod.html.md +3 -0
  45. data/doc_out/PhoneNumberStatus.html.md +1 -1
  46. data/doc_out/PolicyActions.html.md +1 -0
  47. data/doc_out/PresenceApi.html.md +68 -17
  48. data/doc_out/QualityApi.html.md +361 -0
  49. data/doc_out/QueueUtilizationDiagnostic.html.md +8 -8
  50. data/doc_out/ResponseSet.html.md +3 -3
  51. data/doc_out/RoutingApi.html.md +15 -12
  52. data/doc_out/RoutingSkill.html.md +1 -2
  53. data/doc_out/RuleSet.html.md +6 -6
  54. data/doc_out/Salesforce.html.md +1 -1
  55. data/doc_out/ScheduleInterval.html.md +14 -0
  56. data/doc_out/SequenceSchedule.html.md +6 -6
  57. data/doc_out/Station.html.md +1 -0
  58. data/doc_out/StationsApi.html.md +3 -1
  59. data/doc_out/SupportCredit.html.md +16 -0
  60. data/doc_out/SupportCreditListing.html.md +22 -0
  61. data/doc_out/SystemPresence.html.md +15 -0
  62. data/doc_out/TelephonyProvidersEdgeApi.html.md +112 -1
  63. data/doc_out/TrunkRecordingEnabledCount.html.md +14 -0
  64. data/doc_out/UserImage.html.md +1 -1
  65. data/doc_out/UserMe.html.md +5 -1
  66. data/doc_out/UserRoutingSkill.html.md +2 -2
  67. data/doc_out/UsersApi.html.md +182 -0
  68. data/doc_out/WrapUpCodeMapping.html.md +5 -5
  69. data/doc_out/index.html.md +3 -3
  70. data/lib/purecloud.rb +15 -3
  71. data/lib/purecloud/api/authorization_api.rb +0 -60
  72. data/lib/purecloud/api/identity_provider_api.rb +1072 -0
  73. data/lib/purecloud/api/o_auth_api.rb +26 -906
  74. data/lib/purecloud/api/outbound_api.rb +2 -2
  75. data/lib/purecloud/api/presence_api.rb +67 -12
  76. data/lib/purecloud/api/quality_api.rb +378 -0
  77. data/lib/purecloud/api/routing_api.rb +21 -16
  78. data/lib/purecloud/api/stations_api.rb +3 -0
  79. data/lib/purecloud/api/telephony_providers_edge_api.rb +120 -0
  80. data/lib/purecloud/api/users_api.rb +189 -0
  81. data/lib/purecloud/api_client.rb +1 -1
  82. data/lib/purecloud/models/analytics_session.rb +1 -1
  83. data/lib/purecloud/models/available_language_list.rb +167 -0
  84. data/lib/purecloud/models/billing_contact.rb +237 -0
  85. data/lib/purecloud/models/{flow_history_result_item_entity_listing.rb → billing_contact_listing.rb} +2 -2
  86. data/lib/purecloud/models/call_record.rb +2 -1
  87. data/lib/purecloud/models/callable_contacts_diagnostic.rb +3 -0
  88. data/lib/purecloud/models/callable_time_set.rb +3 -3
  89. data/lib/purecloud/models/campaign.rb +3 -3
  90. data/lib/purecloud/models/campaign_diagnostics.rb +3 -0
  91. data/lib/purecloud/models/campaign_schedule.rb +7 -4
  92. data/lib/purecloud/models/campaign_sequence.rb +8 -3
  93. data/lib/purecloud/models/campaign_stats.rb +4 -0
  94. data/lib/purecloud/models/condition.rb +16 -0
  95. data/lib/purecloud/models/connect_rate.rb +3 -0
  96. data/lib/purecloud/models/contact_callback_request.rb +5 -0
  97. data/lib/purecloud/models/contact_list.rb +9 -3
  98. data/lib/purecloud/models/contact_phone_number_column.rb +3 -0
  99. data/lib/purecloud/models/create_callback_command.rb +12 -1
  100. data/lib/purecloud/models/create_user.rb +1 -0
  101. data/lib/purecloud/models/customer_interaction_center.rb +217 -0
  102. data/lib/purecloud/models/dialer_action.rb +31 -0
  103. data/lib/purecloud/models/dialer_contact.rb +5 -0
  104. data/lib/purecloud/models/dialer_rule.rb +15 -0
  105. data/lib/purecloud/models/dnc_list.rb +7 -14
  106. data/lib/purecloud/models/external_contact.rb +14 -1
  107. data/lib/purecloud/models/external_data_source.rb +176 -0
  108. data/lib/purecloud/models/external_organization.rb +14 -1
  109. data/lib/purecloud/models/import_status.rb +5 -0
  110. data/lib/purecloud/models/initiate_screen_recording.rb +187 -0
  111. data/lib/purecloud/models/json_node.rb +37 -37
  112. data/lib/purecloud/models/keyword.rb +227 -0
  113. data/lib/purecloud/models/keyword_set.rb +253 -0
  114. data/lib/purecloud/models/keyword_set_entity_listing.rb +257 -0
  115. data/lib/purecloud/models/o_auth_client.rb +3 -3
  116. data/lib/purecloud/models/okta.rb +11 -11
  117. data/lib/purecloud/models/one_login.rb +11 -11
  118. data/lib/purecloud/models/org_media_utilization.rb +17 -4
  119. data/lib/purecloud/models/organization_presence.rb +0 -9
  120. data/lib/purecloud/models/payment_method.rb +42 -1
  121. data/lib/purecloud/models/phone_number_status.rb +1 -0
  122. data/lib/purecloud/models/policy_actions.rb +14 -4
  123. data/lib/purecloud/models/queue_utilization_diagnostic.rb +8 -0
  124. data/lib/purecloud/models/response_set.rb +3 -3
  125. data/lib/purecloud/models/routing_skill.rb +2 -12
  126. data/lib/purecloud/models/routing_status.rb +1 -1
  127. data/lib/purecloud/models/rule_set.rb +6 -3
  128. data/lib/purecloud/models/salesforce.rb +11 -11
  129. data/lib/purecloud/models/{campaign_schedule_intervals.rb → schedule_interval.rb} +5 -5
  130. data/lib/purecloud/models/sequence_schedule.rb +7 -4
  131. data/lib/purecloud/models/station.rb +11 -1
  132. data/lib/purecloud/models/support_credit.rb +197 -0
  133. data/lib/purecloud/models/support_credit_listing.rb +257 -0
  134. data/lib/purecloud/models/system_presence.rb +187 -0
  135. data/lib/purecloud/models/trunk_recording_enabled_count.rb +177 -0
  136. data/lib/purecloud/models/user_image.rb +1 -0
  137. data/lib/purecloud/models/user_me.rb +50 -2
  138. data/lib/purecloud/models/user_routing_skill.rb +18 -11
  139. data/lib/purecloud/models/wrap_up_code_mapping.rb +5 -3
  140. data/lib/purecloud/version.rb +1 -1
  141. data/newVersion.md +1 -1
  142. data/swagger.json +1 -1
  143. data/version.json +1 -1
  144. metadata +32 -8
  145. data/doc_out/CampaignScheduleIntervals.html.md +0 -14
  146. data/doc_out/ObjectsApi.html.md +0 -69
  147. data/lib/purecloud/api/objects_api.rb +0 -87
@@ -18,10 +18,13 @@ require 'date'
18
18
 
19
19
  module PureCloud
20
20
  class CallableContactsDiagnostic
21
+ # Do not call lists for the campaign
21
22
  attr_accessor :dnc_lists
22
23
 
24
+ # Callable time sets for the campaign
23
25
  attr_accessor :callable_time_set
24
26
 
27
+ # Rule sets for the campaign
25
28
  attr_accessor :rule_sets
26
29
 
27
30
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -23,13 +23,13 @@ module PureCloud
23
23
 
24
24
  attr_accessor :name
25
25
 
26
- # creation time of the entity. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
26
+ # Creation time of the entity. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
27
27
  attr_accessor :date_created
28
28
 
29
- # last modified time of the entity. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
29
+ # Last modified time of the entity. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
30
30
  attr_accessor :date_modified
31
31
 
32
- # required for updates, must match the version number of the most recent update
32
+ # Required for updates, must match the version number of the most recent update
33
33
  attr_accessor :version
34
34
 
35
35
  # list of time/timezone groupings for which it is acceptable to place outbound calls
@@ -23,13 +23,13 @@ module PureCloud
23
23
 
24
24
  attr_accessor :name
25
25
 
26
- # creation time of the entity. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
26
+ # Creation time of the entity. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
27
27
  attr_accessor :date_created
28
28
 
29
- # last modified time of the entity. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
29
+ # Last modified time of the entity. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
30
30
  attr_accessor :date_modified
31
31
 
32
- # required for updates, must match the version number of the most recent update
32
+ # Required for updates, must match the version number of the most recent update
33
33
  attr_accessor :version
34
34
 
35
35
  # identifier of the contact list for the campaign
@@ -18,10 +18,13 @@ require 'date'
18
18
 
19
19
  module PureCloud
20
20
  class CampaignDiagnostics
21
+ # Campaign properties that can impact which contacts are callable
21
22
  attr_accessor :callable_contacts
22
23
 
24
+ # Information regarding the campaign's queue
23
25
  attr_accessor :queue_utilization_diagnostic
24
26
 
27
+ # Current number of outstanding interactions on the campaign
25
28
  attr_accessor :outstanding_interactions_count
26
29
 
27
30
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -23,19 +23,22 @@ module PureCloud
23
23
 
24
24
  attr_accessor :name
25
25
 
26
- # creation time of the entity. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
26
+ # Creation time of the entity. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
27
27
  attr_accessor :date_created
28
28
 
29
- # last modified time of the entity. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
29
+ # Last modified time of the entity. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
30
30
  attr_accessor :date_modified
31
31
 
32
- # required for updates, must match the version number of the most recent update
32
+ # Required for updates, must match the version number of the most recent update
33
33
  attr_accessor :version
34
34
 
35
+ # a list of start and end times
35
36
  attr_accessor :intervals
36
37
 
38
+ # time zone identifier to be applied to the intervals; for example Africa/Abidjan
37
39
  attr_accessor :time_zone
38
40
 
41
+ # identifier of the campaign to be scheduled
39
42
  attr_accessor :campaign
40
43
 
41
44
  # The URI for this object
@@ -74,7 +77,7 @@ module PureCloud
74
77
  :'date_created' => :'DateTime',
75
78
  :'date_modified' => :'DateTime',
76
79
  :'version' => :'Integer',
77
- :'intervals' => :'Array<CampaignScheduleIntervals>',
80
+ :'intervals' => :'Array<ScheduleInterval>',
78
81
  :'time_zone' => :'String',
79
82
  :'campaign' => :'UriReference',
80
83
  :'self_uri' => :'String'
@@ -23,23 +23,28 @@ module PureCloud
23
23
 
24
24
  attr_accessor :name
25
25
 
26
- # creation time of the entity. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
26
+ # Creation time of the entity. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
27
27
  attr_accessor :date_created
28
28
 
29
- # last modified time of the entity. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
29
+ # Last modified time of the entity. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
30
30
  attr_accessor :date_modified
31
31
 
32
- # required for updates, must match the version number of the most recent update
32
+ # Required for updates, must match the version number of the most recent update
33
33
  attr_accessor :version
34
34
 
35
+ # the ordered list of campaign identifiers
35
36
  attr_accessor :campaigns
36
37
 
38
+ # the zero-based index of the current campaign in the campaigns list
37
39
  attr_accessor :current_campaign
38
40
 
41
+ # status of the sequence
39
42
  attr_accessor :status
40
43
 
44
+ # if a sequence has unexpectedly stopped, this message provides the reason
41
45
  attr_accessor :stop_message
42
46
 
47
+ # indicates if a sequence is to repeat from the beginning after the last campaign completes; default is false
43
48
  attr_accessor :repeat
44
49
 
45
50
  # The URI for this object
@@ -18,12 +18,16 @@ require 'date'
18
18
 
19
19
  module PureCloud
20
20
  class CampaignStats
21
+ # Information regarding the campaign's connect rate
21
22
  attr_accessor :contact_rate
22
23
 
24
+ # Number of available agents not currently being utilized
23
25
  attr_accessor :idle_agents
24
26
 
27
+ # Calls per agent adjusted by pace
25
28
  attr_accessor :adjusted_calls_per_agent
26
29
 
30
+ # Number of campaign calls currently ongoing
27
31
  attr_accessor :outstanding_calls
28
32
 
29
33
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -18,18 +18,25 @@ require 'date'
18
18
 
19
19
  module PureCloud
20
20
  class Condition
21
+ # The type of the condition
21
22
  attr_accessor :type
22
23
 
24
+ # Indicates whether to evaluate for the opposite of the stated condition; default is false
23
25
  attr_accessor :inverted
24
26
 
27
+ # An attribute name associated with the condition (applies only to certain rule conditions)
25
28
  attr_accessor :attribute_name
26
29
 
30
+ # A value associated with the condition
27
31
  attr_accessor :value
28
32
 
33
+ # Determines the type of the value associated with the condition
29
34
  attr_accessor :value_type
30
35
 
36
+ # An operation type for condition evaluation
31
37
  attr_accessor :operator
32
38
 
39
+ # List of wrap-up code identifiers (used only in conditions of type 'wrapupCondition')
33
40
  attr_accessor :codes
34
41
 
35
42
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -108,6 +115,15 @@ module PureCloud
108
115
 
109
116
  end
110
117
 
118
+ # Custom attribute writer method checking allowed values (enum).
119
+ def type=(type)
120
+ allowed_values = ["wrapupCondition", "contactAttributeCondition", "phoneNumberCondition", "phoneNumberTypeCondition", "callAnalysisCondition"]
121
+ if type && !allowed_values.include?(type)
122
+ fail "invalid value for 'type', must be one of #{allowed_values}"
123
+ end
124
+ @type = type
125
+ end
126
+
111
127
  # Custom attribute writer method checking allowed values (enum).
112
128
  def value_type=(value_type)
113
129
  allowed_values = ["STRING", "NUMERIC", "DATETIME", "PERIOD"]
@@ -18,10 +18,13 @@ require 'date'
18
18
 
19
19
  module PureCloud
20
20
  class ConnectRate
21
+ # Number of call attempts made
21
22
  attr_accessor :attempts
22
23
 
24
+ # Number of calls with a live voice detected
23
25
  attr_accessor :connects
24
26
 
27
+ # Ratio of connects to attempts
25
28
  attr_accessor :connect_ratio
26
29
 
27
30
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -18,14 +18,19 @@ require 'date'
18
18
 
19
19
  module PureCloud
20
20
  class ContactCallbackRequest
21
+ # Campaign identifier
21
22
  attr_accessor :campaign_id
22
23
 
24
+ # Contact list identifier
23
25
  attr_accessor :contact_list_id
24
26
 
27
+ # Contact identifier
25
28
  attr_accessor :contact_id
26
29
 
30
+ # Name of the phone column containing the number to be called
27
31
  attr_accessor :phone_column
28
32
 
33
+ # The scheduled time for the callback as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ\", example = \"2016-01-02T16:59:59\"
29
34
  attr_accessor :schedule
30
35
 
31
36
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -23,25 +23,31 @@ module PureCloud
23
23
 
24
24
  attr_accessor :name
25
25
 
26
- # creation time of the entity. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
26
+ # Creation time of the entity. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
27
27
  attr_accessor :date_created
28
28
 
29
- # last modified time of the entity. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
29
+ # Last modified time of the entity. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
30
30
  attr_accessor :date_modified
31
31
 
32
- # required for updates, must match the version number of the most recent update
32
+ # Required for updates, must match the version number of the most recent update
33
33
  attr_accessor :version
34
34
 
35
+ # the contact column names
35
36
  attr_accessor :column_names
36
37
 
38
+ # the columns containing phone numbers
37
39
  attr_accessor :phone_columns
38
40
 
41
+ # the status of the import process
39
42
  attr_accessor :import_status
40
43
 
44
+ # the name of the column that holds the indicators for contacts that are to be dialed in preview mode only
41
45
  attr_accessor :preview_mode_column_name
42
46
 
47
+ # list of user-defined values indicating the contact is to be dialed in preview mode only
43
48
  attr_accessor :preview_mode_accepted_values
44
49
 
50
+ # the number of contacts in the contact list
45
51
  attr_accessor :size
46
52
 
47
53
  # The URI for this object
@@ -18,10 +18,13 @@ require 'date'
18
18
 
19
19
  module PureCloud
20
20
  class ContactPhoneNumberColumn
21
+ # name of the phone column
21
22
  attr_accessor :column_name
22
23
 
24
+ # type of the phone column, for example, 'cell' or 'home'
23
25
  attr_accessor :type
24
26
 
27
+ # name of the column indicating the timezone to be considered for determining callable times
25
28
  attr_accessor :callable_time_column
26
29
 
27
30
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -26,6 +26,9 @@ module PureCloud
26
26
 
27
27
  attr_accessor :callback_numbers
28
28
 
29
+ # Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
30
+ attr_accessor :callback_scheduled_time
31
+
29
32
  attr_accessor :country_code
30
33
 
31
34
  attr_accessor :skip_enabled
@@ -42,6 +45,8 @@ module PureCloud
42
45
 
43
46
  :'callback_numbers' => :'callbackNumbers',
44
47
 
48
+ :'callback_scheduled_time' => :'callbackScheduledTime',
49
+
45
50
  :'country_code' => :'countryCode',
46
51
 
47
52
  :'skip_enabled' => :'skipEnabled'
@@ -56,6 +61,7 @@ module PureCloud
56
61
  :'queue_id' => :'String',
57
62
  :'callback_user_name' => :'String',
58
63
  :'callback_numbers' => :'Array<String>',
64
+ :'callback_scheduled_time' => :'DateTime',
59
65
  :'country_code' => :'String',
60
66
  :'skip_enabled' => :'BOOLEAN'
61
67
 
@@ -87,6 +93,10 @@ module PureCloud
87
93
  end
88
94
  end
89
95
 
96
+ if attributes[:'callbackScheduledTime']
97
+ self.callback_scheduled_time = attributes[:'callbackScheduledTime']
98
+ end
99
+
90
100
  if attributes[:'countryCode']
91
101
  self.country_code = attributes[:'countryCode']
92
102
  end
@@ -107,6 +117,7 @@ module PureCloud
107
117
  queue_id == o.queue_id &&
108
118
  callback_user_name == o.callback_user_name &&
109
119
  callback_numbers == o.callback_numbers &&
120
+ callback_scheduled_time == o.callback_scheduled_time &&
110
121
  country_code == o.country_code &&
111
122
  skip_enabled == o.skip_enabled
112
123
  end
@@ -118,7 +129,7 @@ module PureCloud
118
129
 
119
130
  # Calculate hash code according to all attributes.
120
131
  def hash
121
- [script_id, queue_id, callback_user_name, callback_numbers, country_code, skip_enabled].hash
132
+ [script_id, queue_id, callback_user_name, callback_numbers, callback_scheduled_time, country_code, skip_enabled].hash
122
133
  end
123
134
 
124
135
  # build the object from hash
@@ -18,6 +18,7 @@ require 'date'
18
18
 
19
19
  module PureCloud
20
20
  class CreateUser
21
+ # User's full name
21
22
  attr_accessor :name
22
23
 
23
24
  attr_accessor :department
@@ -0,0 +1,217 @@
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 CustomerInteractionCenter
21
+ # The globally unique identifier for the object.
22
+ attr_accessor :id
23
+
24
+ attr_accessor :name
25
+
26
+ attr_accessor :certificate
27
+
28
+ attr_accessor :sso_target_uri
29
+
30
+ attr_accessor :issuer_uri
31
+
32
+ # The URI for this object
33
+ attr_accessor :self_uri
34
+
35
+ # Attribute mapping from ruby-style variable name to JSON key.
36
+ def self.attribute_map
37
+ {
38
+
39
+ :'id' => :'id',
40
+
41
+ :'name' => :'name',
42
+
43
+ :'certificate' => :'certificate',
44
+
45
+ :'sso_target_uri' => :'ssoTargetURI',
46
+
47
+ :'issuer_uri' => :'issuerURI',
48
+
49
+ :'self_uri' => :'selfUri'
50
+
51
+ }
52
+ end
53
+
54
+ # Attribute type mapping.
55
+ def self.swagger_types
56
+ {
57
+ :'id' => :'String',
58
+ :'name' => :'String',
59
+ :'certificate' => :'String',
60
+ :'sso_target_uri' => :'String',
61
+ :'issuer_uri' => :'String',
62
+ :'self_uri' => :'String'
63
+
64
+ }
65
+ end
66
+
67
+ def initialize(attributes = {})
68
+ return unless attributes.is_a?(Hash)
69
+
70
+ # convert string to symbol for hash key
71
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
72
+
73
+
74
+ if attributes[:'id']
75
+ self.id = attributes[:'id']
76
+ end
77
+
78
+ if attributes[:'name']
79
+ self.name = attributes[:'name']
80
+ end
81
+
82
+ if attributes[:'certificate']
83
+ self.certificate = attributes[:'certificate']
84
+ end
85
+
86
+ if attributes[:'ssoTargetURI']
87
+ self.sso_target_uri = attributes[:'ssoTargetURI']
88
+ end
89
+
90
+ if attributes[:'issuerURI']
91
+ self.issuer_uri = attributes[:'issuerURI']
92
+ end
93
+
94
+ if attributes[:'selfUri']
95
+ self.self_uri = attributes[:'selfUri']
96
+ end
97
+
98
+ end
99
+
100
+ # Check equality by comparing each attribute.
101
+ def ==(o)
102
+ return true if self.equal?(o)
103
+ self.class == o.class &&
104
+ id == o.id &&
105
+ name == o.name &&
106
+ certificate == o.certificate &&
107
+ sso_target_uri == o.sso_target_uri &&
108
+ issuer_uri == o.issuer_uri &&
109
+ self_uri == o.self_uri
110
+ end
111
+
112
+ # @see the `==` method
113
+ def eql?(o)
114
+ self == o
115
+ end
116
+
117
+ # Calculate hash code according to all attributes.
118
+ def hash
119
+ [id, name, certificate, sso_target_uri, issuer_uri, self_uri].hash
120
+ end
121
+
122
+ # build the object from hash
123
+ def build_from_hash(attributes)
124
+ return nil unless attributes.is_a?(Hash)
125
+ self.class.swagger_types.each_pair do |key, type|
126
+ if type =~ /^Array<(.*)>/i
127
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
128
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
129
+ else
130
+ #TODO show warning in debug mode
131
+ end
132
+ elsif !attributes[self.class.attribute_map[key]].nil?
133
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
134
+ else
135
+ # data not found in attributes(hash), not an issue as the data can be optional
136
+ end
137
+ end
138
+
139
+ self
140
+ end
141
+
142
+ def _deserialize(type, value)
143
+ case type.to_sym
144
+ when :DateTime
145
+ DateTime.parse(value)
146
+ when :Date
147
+ Date.parse(value)
148
+ when :String
149
+ value.to_s
150
+ when :Integer
151
+ value.to_i
152
+ when :Float
153
+ value.to_f
154
+ when :BOOLEAN
155
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
156
+ true
157
+ else
158
+ false
159
+ end
160
+ when :Object
161
+ # generic object (usually a Hash), return directly
162
+ value
163
+ when /\AArray<(?<inner_type>.+)>\z/
164
+ inner_type = Regexp.last_match[:inner_type]
165
+ value.map { |v| _deserialize(inner_type, v) }
166
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
167
+ k_type = Regexp.last_match[:k_type]
168
+ v_type = Regexp.last_match[:v_type]
169
+ {}.tap do |hash|
170
+ value.each do |k, v|
171
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
172
+ end
173
+ end
174
+ else # model
175
+ _model = Object.const_get("PureCloud").const_get(type).new
176
+ _model.build_from_hash(value)
177
+ end
178
+ end
179
+
180
+ def to_s
181
+ to_hash.to_s
182
+ end
183
+
184
+ # to_body is an alias to to_body (backward compatibility))
185
+ def to_body
186
+ to_hash
187
+ end
188
+
189
+ # return the object in the form of hash
190
+ def to_hash
191
+ hash = {}
192
+ self.class.attribute_map.each_pair do |attr, param|
193
+ value = self.send(attr)
194
+ next if value.nil?
195
+ hash[param] = _to_hash(value)
196
+ end
197
+ hash
198
+ end
199
+
200
+ # Method to output non-array value in the form of hash
201
+ # For object, use to_hash. Otherwise, just return the value
202
+ def _to_hash(value)
203
+ if value.is_a?(Array)
204
+ value.compact.map{ |v| _to_hash(v) }
205
+ elsif value.is_a?(Hash)
206
+ {}.tap do |hash|
207
+ value.each { |k, v| hash[k] = _to_hash(v) }
208
+ end
209
+ elsif value.respond_to? :to_hash
210
+ value.to_hash
211
+ else
212
+ value
213
+ end
214
+ end
215
+
216
+ end
217
+ end