purecloudplatformclientv2 20.0.0 → 21.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.
- checksums.yaml +4 -4
- data/README.md +2 -2
- data/docs/AdherenceSettings.md +18 -0
- data/docs/AgentManagementUnitReference.md +14 -0
- data/docs/AnalyticsSession.md +1 -0
- data/docs/AnalyticsView.md +1 -1
- data/docs/ArchitectApi.md +19 -15
- data/docs/CallForwarding.md +4 -2
- data/docs/CallMediaParticipant.md +1 -0
- data/docs/CallRoute.md +14 -0
- data/docs/CallTarget.md +14 -0
- data/docs/Contact.md +1 -1
- data/docs/ConversationNotificationMessage.md +3 -0
- data/docs/ConversationNotificationMessageDetails.md +2 -0
- data/docs/ConversationNotificationMessages.md +2 -0
- data/docs/ConversationNotificationMessages1.md +3 -0
- data/docs/ConversationsApi.md +196 -0
- data/docs/CreateEmailRequest.md +2 -0
- data/docs/CreateQueueRequest.md +2 -0
- data/docs/CreateSecureSession.md +16 -0
- data/docs/ExternalContact.md +1 -0
- data/docs/ImportScriptStatusResponse.md +15 -0
- data/docs/InboundRoute.md +1 -0
- data/docs/JsonNode.md +1 -1
- data/docs/ManagementUnit.md +5 -3
- data/docs/ManagementUnitReference.md +14 -0
- data/docs/ManagementUnitSettings.md +19 -0
- data/docs/Message.md +3 -0
- data/docs/MessageConversationNotificationMessageDetails.md +2 -0
- data/docs/MessageConversationNotificationMessageMediaParticipant.md +3 -0
- data/docs/MessageConversationNotificationMessages.md +2 -0
- data/docs/MessageConversationNotificationParticipants.md +3 -0
- data/docs/MessageDetails.md +2 -0
- data/docs/QualityApi.md +3 -1
- data/docs/Queue.md +2 -0
- data/docs/SchedulingSettings.md +14 -0
- data/docs/ScriptsApi.md +64 -0
- data/docs/SecureSession.md +19 -0
- data/docs/SecureSessionEntityListing.md +13 -0
- data/docs/ShortTermForecastingSettings.md +13 -0
- data/docs/SignedData.md +13 -0
- data/docs/SignedDataApi.md +73 -0
- data/docs/TimeOffRequestSettings.md +15 -0
- data/docs/UpdateUser.md +2 -2
- data/docs/UserConversationSummaryNotification.md +1 -0
- data/docs/UserQueue.md +2 -0
- data/docs/UserReference.md +14 -0
- data/docs/WorkforceManagementApi.md +61 -0
- data/lib/purecloudplatformclientv2.rb +16 -0
- data/lib/purecloudplatformclientv2/api/architect_api.rb +24 -6
- data/lib/purecloudplatformclientv2/api/conversations_api.rb +243 -0
- data/lib/purecloudplatformclientv2/api/quality_api.rb +9 -0
- data/lib/purecloudplatformclientv2/api/scripts_api.rb +74 -0
- data/lib/purecloudplatformclientv2/api/signed_data_api.rb +90 -0
- data/lib/purecloudplatformclientv2/api/workforce_management_api.rb +63 -0
- data/lib/purecloudplatformclientv2/api_client.rb +1 -1
- data/lib/purecloudplatformclientv2/models/adherence_settings.rb +335 -0
- data/lib/purecloudplatformclientv2/models/agent_management_unit_reference.rb +229 -0
- data/lib/purecloudplatformclientv2/models/aggregate_metric_data.rb +2 -2
- data/lib/purecloudplatformclientv2/models/analytics_conversation_segment.rb +2 -2
- data/lib/purecloudplatformclientv2/models/analytics_query_predicate.rb +4 -4
- data/lib/purecloudplatformclientv2/models/analytics_session.rb +41 -1
- data/lib/purecloudplatformclientv2/models/analytics_view.rb +1 -1
- data/lib/purecloudplatformclientv2/models/call_forwarding.rb +71 -1
- data/lib/purecloudplatformclientv2/models/call_media_participant.rb +30 -4
- data/lib/purecloudplatformclientv2/models/call_route.rb +230 -0
- data/lib/purecloudplatformclientv2/models/call_target.rb +242 -0
- data/lib/purecloudplatformclientv2/models/contact.rb +1 -1
- data/lib/purecloudplatformclientv2/models/conversation_notification_message.rb +90 -1
- data/lib/purecloudplatformclientv2/models/conversation_notification_message_details.rb +68 -4
- data/lib/purecloudplatformclientv2/models/conversation_notification_messages.rb +68 -4
- data/lib/purecloudplatformclientv2/models/conversation_notification_messages_1.rb +90 -1
- data/lib/purecloudplatformclientv2/models/create_email_request.rb +56 -4
- data/lib/purecloudplatformclientv2/models/create_queue_request.rb +53 -1
- data/lib/purecloudplatformclientv2/models/create_secure_session.rb +290 -0
- data/lib/purecloudplatformclientv2/models/dependency.rb +2 -2
- data/lib/purecloudplatformclientv2/models/dependency_object.rb +2 -2
- data/lib/purecloudplatformclientv2/models/event_message.rb +2 -2
- data/lib/purecloudplatformclientv2/models/external_contact.rb +26 -1
- data/lib/purecloudplatformclientv2/models/import_script_status_response.rb +251 -0
- data/lib/purecloudplatformclientv2/models/inbound_route.rb +27 -1
- data/lib/purecloudplatformclientv2/models/interaction_stat_alert_notification.rb +2 -2
- data/lib/purecloudplatformclientv2/models/interaction_stat_rule_notification.rb +2 -2
- data/lib/purecloudplatformclientv2/models/interaction_stats_alert.rb +2 -2
- data/lib/purecloudplatformclientv2/models/interaction_stats_rule.rb +2 -2
- data/lib/purecloudplatformclientv2/models/intraday_data_group.rb +2 -2
- data/lib/purecloudplatformclientv2/models/intraday_data_update_notification_intraday_data_group.rb +2 -2
- data/lib/purecloudplatformclientv2/models/intraday_data_update_notification_intraday_data_groupings.rb +2 -2
- data/lib/purecloudplatformclientv2/models/json_node.rb +17 -17
- data/lib/purecloudplatformclientv2/models/management_unit.rb +59 -7
- data/lib/purecloudplatformclientv2/models/management_unit_reference.rb +229 -0
- data/lib/purecloudplatformclientv2/models/management_unit_settings.rb +364 -0
- data/lib/purecloudplatformclientv2/models/message.rb +93 -1
- data/lib/purecloudplatformclientv2/models/message_conversation_notification_message_details.rb +68 -4
- data/lib/purecloudplatformclientv2/models/message_conversation_notification_message_media_participant.rb +93 -4
- data/lib/purecloudplatformclientv2/models/message_conversation_notification_messages.rb +68 -4
- data/lib/purecloudplatformclientv2/models/message_conversation_notification_participants.rb +93 -4
- data/lib/purecloudplatformclientv2/models/message_details.rb +67 -1
- data/lib/purecloudplatformclientv2/models/participant.rb +2 -2
- data/lib/purecloudplatformclientv2/models/participant_basic.rb +2 -2
- data/lib/purecloudplatformclientv2/models/queue.rb +53 -1
- data/lib/purecloudplatformclientv2/models/scheduling_settings.rb +229 -0
- data/lib/purecloudplatformclientv2/models/secure_session.rb +382 -0
- data/lib/purecloudplatformclientv2/models/secure_session_entity_listing.rb +203 -0
- data/lib/purecloudplatformclientv2/models/short_term_forecasting_settings.rb +203 -0
- data/lib/purecloudplatformclientv2/models/signed_data.rb +201 -0
- data/lib/purecloudplatformclientv2/models/time_off_request_settings.rb +255 -0
- data/lib/purecloudplatformclientv2/models/update_user.rb +2 -1
- data/lib/purecloudplatformclientv2/models/user_conversation_summary_notification.rb +26 -1
- data/lib/purecloudplatformclientv2/models/user_queue.rb +53 -1
- data/lib/purecloudplatformclientv2/models/user_reference.rb +228 -0
- data/lib/purecloudplatformclientv2/version.rb +1 -1
- metadata +34 -2
|
@@ -1011,6 +1011,7 @@ module PureCloud
|
|
|
1011
1011
|
# @option opts [BOOLEAN] :agent_has_read agent has the evaluation
|
|
1012
1012
|
# @option opts [BOOLEAN] :expand_answer_total_scores get the total scores for evaluations
|
|
1013
1013
|
# @option opts [Integer] :maximum maximum
|
|
1014
|
+
# @option opts [String] :sort_order sort order options for agentUserId or evaluatorUserId query. Valid options are 'a', 'asc', 'ascending', 'd', 'desc', 'descending'
|
|
1014
1015
|
# @return [EvaluationEntityListing]
|
|
1015
1016
|
def get_quality_evaluations_query(opts = {})
|
|
1016
1017
|
data, _status_code, _headers = get_quality_evaluations_query_with_http_info(opts)
|
|
@@ -1037,6 +1038,7 @@ module PureCloud
|
|
|
1037
1038
|
# @option opts [BOOLEAN] :agent_has_read agent has the evaluation
|
|
1038
1039
|
# @option opts [BOOLEAN] :expand_answer_total_scores get the total scores for evaluations
|
|
1039
1040
|
# @option opts [Integer] :maximum maximum
|
|
1041
|
+
# @option opts [String] :sort_order sort order options for agentUserId or evaluatorUserId query. Valid options are 'a', 'asc', 'ascending', 'd', 'desc', 'descending'
|
|
1040
1042
|
# @return [Array<(EvaluationEntityListing, Fixnum, Hash)>] EvaluationEntityListing data, response status code and response headers
|
|
1041
1043
|
def get_quality_evaluations_query_with_http_info(opts = {})
|
|
1042
1044
|
if @api_client.config.debugging
|
|
@@ -1138,6 +1140,12 @@ module PureCloud
|
|
|
1138
1140
|
|
|
1139
1141
|
|
|
1140
1142
|
|
|
1143
|
+
|
|
1144
|
+
|
|
1145
|
+
|
|
1146
|
+
|
|
1147
|
+
|
|
1148
|
+
|
|
1141
1149
|
|
|
1142
1150
|
|
|
1143
1151
|
|
|
@@ -1167,6 +1175,7 @@ module PureCloud
|
|
|
1167
1175
|
query_params[:'agentHasRead'] = opts[:'agent_has_read'] if opts[:'agent_has_read']
|
|
1168
1176
|
query_params[:'expandAnswerTotalScores'] = opts[:'expand_answer_total_scores'] if opts[:'expand_answer_total_scores']
|
|
1169
1177
|
query_params[:'maximum'] = opts[:'maximum'] if opts[:'maximum']
|
|
1178
|
+
query_params[:'sortOrder'] = opts[:'sort_order'] if opts[:'sort_order']
|
|
1170
1179
|
|
|
1171
1180
|
# header parameters
|
|
1172
1181
|
header_params = {}
|
|
@@ -860,5 +860,79 @@ module PureCloud
|
|
|
860
860
|
end
|
|
861
861
|
return data, status_code, headers
|
|
862
862
|
end
|
|
863
|
+
|
|
864
|
+
# Get the upload status of an imported script
|
|
865
|
+
#
|
|
866
|
+
# @param upload_id Upload ID
|
|
867
|
+
# @param [Hash] opts the optional parameters
|
|
868
|
+
# @option opts [BOOLEAN] :long_poll Enable longPolling endpoint (default to false)
|
|
869
|
+
# @return [ImportScriptStatusResponse]
|
|
870
|
+
def get_scripts_upload_status(upload_id, opts = {})
|
|
871
|
+
data, _status_code, _headers = get_scripts_upload_status_with_http_info(upload_id, opts)
|
|
872
|
+
return data
|
|
873
|
+
end
|
|
874
|
+
|
|
875
|
+
# Get the upload status of an imported script
|
|
876
|
+
#
|
|
877
|
+
# @param upload_id Upload ID
|
|
878
|
+
# @param [Hash] opts the optional parameters
|
|
879
|
+
# @option opts [BOOLEAN] :long_poll Enable longPolling endpoint
|
|
880
|
+
# @return [Array<(ImportScriptStatusResponse, Fixnum, Hash)>] ImportScriptStatusResponse data, response status code and response headers
|
|
881
|
+
def get_scripts_upload_status_with_http_info(upload_id, opts = {})
|
|
882
|
+
if @api_client.config.debugging
|
|
883
|
+
@api_client.config.logger.debug "Calling API: ScriptsApi.get_scripts_upload_status ..."
|
|
884
|
+
end
|
|
885
|
+
|
|
886
|
+
|
|
887
|
+
# verify the required parameter 'upload_id' is set
|
|
888
|
+
fail ArgumentError, "Missing the required parameter 'upload_id' when calling ScriptsApi.get_scripts_upload_status" if upload_id.nil?
|
|
889
|
+
|
|
890
|
+
|
|
891
|
+
|
|
892
|
+
|
|
893
|
+
|
|
894
|
+
|
|
895
|
+
|
|
896
|
+
|
|
897
|
+
|
|
898
|
+
|
|
899
|
+
|
|
900
|
+
# resource path
|
|
901
|
+
local_var_path = "/api/v2/scripts/uploads/{uploadId}/status".sub('{format}','json').sub('{' + 'uploadId' + '}', upload_id.to_s)
|
|
902
|
+
|
|
903
|
+
# query parameters
|
|
904
|
+
query_params = {}
|
|
905
|
+
query_params[:'longPoll'] = opts[:'long_poll'] if opts[:'long_poll']
|
|
906
|
+
|
|
907
|
+
# header parameters
|
|
908
|
+
header_params = {}
|
|
909
|
+
|
|
910
|
+
# HTTP header 'Accept' (if needed)
|
|
911
|
+
local_header_accept = ['application/json']
|
|
912
|
+
local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
|
|
913
|
+
|
|
914
|
+
# HTTP header 'Content-Type'
|
|
915
|
+
local_header_content_type = ['application/json']
|
|
916
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
|
|
917
|
+
|
|
918
|
+
# form parameters
|
|
919
|
+
form_params = {}
|
|
920
|
+
|
|
921
|
+
# http body (model)
|
|
922
|
+
post_body = nil
|
|
923
|
+
|
|
924
|
+
auth_names = ['PureCloud Auth']
|
|
925
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path,
|
|
926
|
+
:header_params => header_params,
|
|
927
|
+
:query_params => query_params,
|
|
928
|
+
:form_params => form_params,
|
|
929
|
+
:body => post_body,
|
|
930
|
+
:auth_names => auth_names,
|
|
931
|
+
:return_type => 'ImportScriptStatusResponse')
|
|
932
|
+
if @api_client.config.debugging
|
|
933
|
+
@api_client.config.logger.debug "API called: ScriptsApi#get_scripts_upload_status\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
934
|
+
end
|
|
935
|
+
return data, status_code, headers
|
|
936
|
+
end
|
|
863
937
|
end
|
|
864
938
|
end
|
|
@@ -0,0 +1,90 @@
|
|
|
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: ININ
|
|
11
|
+
http://www.inin.com
|
|
12
|
+
|
|
13
|
+
Terms of Service: https://developer.mypurecloud.com/tos
|
|
14
|
+
|
|
15
|
+
=end
|
|
16
|
+
|
|
17
|
+
require "uri"
|
|
18
|
+
|
|
19
|
+
module PureCloud
|
|
20
|
+
class SignedDataApi
|
|
21
|
+
attr_accessor :api_client
|
|
22
|
+
|
|
23
|
+
def initialize(api_client = ApiClient.default)
|
|
24
|
+
@api_client = api_client
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
# Sign identifying information
|
|
28
|
+
#
|
|
29
|
+
# @param [Hash] opts the optional parameters
|
|
30
|
+
# @option opts [Object] :body
|
|
31
|
+
# @return [SignedData]
|
|
32
|
+
def post_signeddata(opts = {})
|
|
33
|
+
data, _status_code, _headers = post_signeddata_with_http_info(opts)
|
|
34
|
+
return data
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
# Sign identifying information
|
|
38
|
+
#
|
|
39
|
+
# @param [Hash] opts the optional parameters
|
|
40
|
+
# @option opts [Object] :body
|
|
41
|
+
# @return [Array<(SignedData, Fixnum, Hash)>] SignedData data, response status code and response headers
|
|
42
|
+
def post_signeddata_with_http_info(opts = {})
|
|
43
|
+
if @api_client.config.debugging
|
|
44
|
+
@api_client.config.logger.debug "Calling API: SignedDataApi.post_signeddata ..."
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
# resource path
|
|
54
|
+
local_var_path = "/api/v2/signeddata".sub('{format}','json')
|
|
55
|
+
|
|
56
|
+
# query parameters
|
|
57
|
+
query_params = {}
|
|
58
|
+
|
|
59
|
+
# header parameters
|
|
60
|
+
header_params = {}
|
|
61
|
+
|
|
62
|
+
# HTTP header 'Accept' (if needed)
|
|
63
|
+
local_header_accept = ['application/json']
|
|
64
|
+
local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
|
|
65
|
+
|
|
66
|
+
# HTTP header 'Content-Type'
|
|
67
|
+
local_header_content_type = ['application/json']
|
|
68
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
|
|
69
|
+
|
|
70
|
+
# form parameters
|
|
71
|
+
form_params = {}
|
|
72
|
+
|
|
73
|
+
# http body (model)
|
|
74
|
+
post_body = @api_client.object_to_http_body(opts[:'body'])
|
|
75
|
+
|
|
76
|
+
auth_names = ['PureCloud Auth']
|
|
77
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path,
|
|
78
|
+
:header_params => header_params,
|
|
79
|
+
:query_params => query_params,
|
|
80
|
+
:form_params => form_params,
|
|
81
|
+
:body => post_body,
|
|
82
|
+
:auth_names => auth_names,
|
|
83
|
+
:return_type => 'SignedData')
|
|
84
|
+
if @api_client.config.debugging
|
|
85
|
+
@api_client.config.logger.debug "API called: SignedDataApi#post_signeddata\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
86
|
+
end
|
|
87
|
+
return data, status_code, headers
|
|
88
|
+
end
|
|
89
|
+
end
|
|
90
|
+
end
|
|
@@ -739,6 +739,69 @@ module PureCloud
|
|
|
739
739
|
return data, status_code, headers
|
|
740
740
|
end
|
|
741
741
|
|
|
742
|
+
# Get the management units to which the agents belong
|
|
743
|
+
#
|
|
744
|
+
# @param [Hash] opts the optional parameters
|
|
745
|
+
# @option opts [Array<String>] :body body
|
|
746
|
+
# @return [Array<AgentManagementUnitReference>]
|
|
747
|
+
def post_workforcemanagement_agents_managementunits(opts = {})
|
|
748
|
+
data, _status_code, _headers = post_workforcemanagement_agents_managementunits_with_http_info(opts)
|
|
749
|
+
return data
|
|
750
|
+
end
|
|
751
|
+
|
|
752
|
+
# Get the management units to which the agents belong
|
|
753
|
+
#
|
|
754
|
+
# @param [Hash] opts the optional parameters
|
|
755
|
+
# @option opts [Array<String>] :body body
|
|
756
|
+
# @return [Array<(Array<AgentManagementUnitReference>, Fixnum, Hash)>] Array<AgentManagementUnitReference> data, response status code and response headers
|
|
757
|
+
def post_workforcemanagement_agents_managementunits_with_http_info(opts = {})
|
|
758
|
+
if @api_client.config.debugging
|
|
759
|
+
@api_client.config.logger.debug "Calling API: WorkforceManagementApi.post_workforcemanagement_agents_managementunits ..."
|
|
760
|
+
end
|
|
761
|
+
|
|
762
|
+
|
|
763
|
+
|
|
764
|
+
|
|
765
|
+
|
|
766
|
+
|
|
767
|
+
|
|
768
|
+
# resource path
|
|
769
|
+
local_var_path = "/api/v2/workforcemanagement/agents/managementunits".sub('{format}','json')
|
|
770
|
+
|
|
771
|
+
# query parameters
|
|
772
|
+
query_params = {}
|
|
773
|
+
|
|
774
|
+
# header parameters
|
|
775
|
+
header_params = {}
|
|
776
|
+
|
|
777
|
+
# HTTP header 'Accept' (if needed)
|
|
778
|
+
local_header_accept = ['application/json']
|
|
779
|
+
local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
|
|
780
|
+
|
|
781
|
+
# HTTP header 'Content-Type'
|
|
782
|
+
local_header_content_type = ['application/json']
|
|
783
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
|
|
784
|
+
|
|
785
|
+
# form parameters
|
|
786
|
+
form_params = {}
|
|
787
|
+
|
|
788
|
+
# http body (model)
|
|
789
|
+
post_body = @api_client.object_to_http_body(opts[:'body'])
|
|
790
|
+
|
|
791
|
+
auth_names = ['PureCloud Auth']
|
|
792
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path,
|
|
793
|
+
:header_params => header_params,
|
|
794
|
+
:query_params => query_params,
|
|
795
|
+
:form_params => form_params,
|
|
796
|
+
:body => post_body,
|
|
797
|
+
:auth_names => auth_names,
|
|
798
|
+
:return_type => 'Array<AgentManagementUnitReference>')
|
|
799
|
+
if @api_client.config.debugging
|
|
800
|
+
@api_client.config.logger.debug "API called: WorkforceManagementApi#post_workforcemanagement_agents_managementunits\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
801
|
+
end
|
|
802
|
+
return data, status_code, headers
|
|
803
|
+
end
|
|
804
|
+
|
|
742
805
|
# Request a historical adherence report
|
|
743
806
|
#
|
|
744
807
|
# @param mu_id The muId of the management unit, or 'mine' for the management unit of the logged-in user.
|
|
@@ -76,7 +76,7 @@ module PureCloud
|
|
|
76
76
|
http_method = http_method.to_sym.downcase
|
|
77
77
|
|
|
78
78
|
header_params = @default_headers.merge(opts[:header_params] || {})
|
|
79
|
-
header_params['purecloud-sdk'] = '
|
|
79
|
+
header_params['purecloud-sdk'] = '21.0.0'
|
|
80
80
|
query_params = opts[:query_params] || {}
|
|
81
81
|
form_params = opts[:form_params] || {}
|
|
82
82
|
|
|
@@ -0,0 +1,335 @@
|
|
|
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: 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
|
+
# Schedule Adherence Configuration
|
|
21
|
+
class AdherenceSettings
|
|
22
|
+
# The threshold in minutes where an alert will be triggered when an agent is considered severely out of adherence
|
|
23
|
+
attr_accessor :severe_alert_threshold_minutes
|
|
24
|
+
|
|
25
|
+
# Target adherence percentage
|
|
26
|
+
attr_accessor :adherence_target_percent
|
|
27
|
+
|
|
28
|
+
# The threshold in seconds for which agents should not be penalized for being momentarily out of adherence
|
|
29
|
+
attr_accessor :adherence_exception_threshold_seconds
|
|
30
|
+
|
|
31
|
+
# Whether to treat all non-on-queue activities as equivalent for adherence purposes
|
|
32
|
+
attr_accessor :non_on_queue_activities_equivalent
|
|
33
|
+
|
|
34
|
+
# Whether to track on-queue activities
|
|
35
|
+
attr_accessor :track_on_queue_activity
|
|
36
|
+
|
|
37
|
+
# Activity categories that should be ignored for adherence purposes
|
|
38
|
+
attr_accessor :ignored_activity_categories
|
|
39
|
+
|
|
40
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
|
41
|
+
def self.attribute_map
|
|
42
|
+
{
|
|
43
|
+
|
|
44
|
+
:'severe_alert_threshold_minutes' => :'severeAlertThresholdMinutes',
|
|
45
|
+
|
|
46
|
+
:'adherence_target_percent' => :'adherenceTargetPercent',
|
|
47
|
+
|
|
48
|
+
:'adherence_exception_threshold_seconds' => :'adherenceExceptionThresholdSeconds',
|
|
49
|
+
|
|
50
|
+
:'non_on_queue_activities_equivalent' => :'nonOnQueueActivitiesEquivalent',
|
|
51
|
+
|
|
52
|
+
:'track_on_queue_activity' => :'trackOnQueueActivity',
|
|
53
|
+
|
|
54
|
+
:'ignored_activity_categories' => :'ignoredActivityCategories'
|
|
55
|
+
|
|
56
|
+
}
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
# Attribute type mapping.
|
|
60
|
+
def self.swagger_types
|
|
61
|
+
{
|
|
62
|
+
|
|
63
|
+
:'severe_alert_threshold_minutes' => :'Integer',
|
|
64
|
+
|
|
65
|
+
:'adherence_target_percent' => :'Integer',
|
|
66
|
+
|
|
67
|
+
:'adherence_exception_threshold_seconds' => :'Integer',
|
|
68
|
+
|
|
69
|
+
:'non_on_queue_activities_equivalent' => :'BOOLEAN',
|
|
70
|
+
|
|
71
|
+
:'track_on_queue_activity' => :'BOOLEAN',
|
|
72
|
+
|
|
73
|
+
:'ignored_activity_categories' => :'Array<String>'
|
|
74
|
+
|
|
75
|
+
}
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
# Initializes the object
|
|
79
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
80
|
+
def initialize(attributes = {})
|
|
81
|
+
return unless attributes.is_a?(Hash)
|
|
82
|
+
|
|
83
|
+
# convert string to symbol for hash key
|
|
84
|
+
attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
if attributes.has_key?(:'severeAlertThresholdMinutes')
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
self.severe_alert_threshold_minutes = attributes[:'severeAlertThresholdMinutes']
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
if attributes.has_key?(:'adherenceTargetPercent')
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
self.adherence_target_percent = attributes[:'adherenceTargetPercent']
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
end
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
if attributes.has_key?(:'adherenceExceptionThresholdSeconds')
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
self.adherence_exception_threshold_seconds = attributes[:'adherenceExceptionThresholdSeconds']
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
end
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
if attributes.has_key?(:'nonOnQueueActivitiesEquivalent')
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
self.non_on_queue_activities_equivalent = attributes[:'nonOnQueueActivitiesEquivalent']
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
end
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
if attributes.has_key?(:'trackOnQueueActivity')
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
self.track_on_queue_activity = attributes[:'trackOnQueueActivity']
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
end
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
if attributes.has_key?(:'ignoredActivityCategories')
|
|
133
|
+
|
|
134
|
+
if (value = attributes[:'ignoredActivityCategories']).is_a?(Array)
|
|
135
|
+
self.ignored_activity_categories = value
|
|
136
|
+
end
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
end
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
end
|
|
144
|
+
|
|
145
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
|
146
|
+
# @return Array for valid properies with the reasons
|
|
147
|
+
def list_invalid_properties
|
|
148
|
+
invalid_properties = Array.new
|
|
149
|
+
|
|
150
|
+
|
|
151
|
+
return invalid_properties
|
|
152
|
+
end
|
|
153
|
+
|
|
154
|
+
# Check to see if the all the properties in the model are valid
|
|
155
|
+
# @return true if the model is valid
|
|
156
|
+
def valid?
|
|
157
|
+
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
|
|
176
|
+
|
|
177
|
+
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
end
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
|
|
194
|
+
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
|
|
206
|
+
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
|
|
210
|
+
|
|
211
|
+
|
|
212
|
+
|
|
213
|
+
|
|
214
|
+
|
|
215
|
+
# Checks equality by comparing each attribute.
|
|
216
|
+
# @param [Object] Object to be compared
|
|
217
|
+
def ==(o)
|
|
218
|
+
return true if self.equal?(o)
|
|
219
|
+
self.class == o.class &&
|
|
220
|
+
severe_alert_threshold_minutes == o.severe_alert_threshold_minutes &&
|
|
221
|
+
adherence_target_percent == o.adherence_target_percent &&
|
|
222
|
+
adherence_exception_threshold_seconds == o.adherence_exception_threshold_seconds &&
|
|
223
|
+
non_on_queue_activities_equivalent == o.non_on_queue_activities_equivalent &&
|
|
224
|
+
track_on_queue_activity == o.track_on_queue_activity &&
|
|
225
|
+
ignored_activity_categories == o.ignored_activity_categories
|
|
226
|
+
end
|
|
227
|
+
|
|
228
|
+
# @see the `==` method
|
|
229
|
+
# @param [Object] Object to be compared
|
|
230
|
+
def eql?(o)
|
|
231
|
+
self == o
|
|
232
|
+
end
|
|
233
|
+
|
|
234
|
+
# Calculates hash code according to all attributes.
|
|
235
|
+
# @return [Fixnum] Hash code
|
|
236
|
+
def hash
|
|
237
|
+
[severe_alert_threshold_minutes, adherence_target_percent, adherence_exception_threshold_seconds, non_on_queue_activities_equivalent, track_on_queue_activity, ignored_activity_categories].hash
|
|
238
|
+
end
|
|
239
|
+
|
|
240
|
+
# build the object from hash
|
|
241
|
+
def build_from_hash(attributes)
|
|
242
|
+
return nil unless attributes.is_a?(Hash)
|
|
243
|
+
self.class.swagger_types.each_pair do |key, type|
|
|
244
|
+
if type =~ /^Array<(.*)>/i
|
|
245
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
|
246
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
|
|
247
|
+
else
|
|
248
|
+
#TODO show warning in debug mode
|
|
249
|
+
end
|
|
250
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
|
251
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
|
252
|
+
else
|
|
253
|
+
# data not found in attributes(hash), not an issue as the data can be optional
|
|
254
|
+
end
|
|
255
|
+
end
|
|
256
|
+
|
|
257
|
+
self
|
|
258
|
+
end
|
|
259
|
+
|
|
260
|
+
def _deserialize(type, value)
|
|
261
|
+
case type.to_sym
|
|
262
|
+
when :DateTime
|
|
263
|
+
DateTime.parse(value)
|
|
264
|
+
when :Date
|
|
265
|
+
Date.parse(value)
|
|
266
|
+
when :String
|
|
267
|
+
value.to_s
|
|
268
|
+
when :Integer
|
|
269
|
+
value.to_i
|
|
270
|
+
when :Float
|
|
271
|
+
value.to_f
|
|
272
|
+
when :BOOLEAN
|
|
273
|
+
if value.to_s =~ /^(true|t|yes|y|1)$/i
|
|
274
|
+
true
|
|
275
|
+
else
|
|
276
|
+
false
|
|
277
|
+
end
|
|
278
|
+
when :Object
|
|
279
|
+
# generic object (usually a Hash), return directly
|
|
280
|
+
value
|
|
281
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
|
282
|
+
inner_type = Regexp.last_match[:inner_type]
|
|
283
|
+
value.map { |v| _deserialize(inner_type, v) }
|
|
284
|
+
when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
|
|
285
|
+
k_type = Regexp.last_match[:k_type]
|
|
286
|
+
v_type = Regexp.last_match[:v_type]
|
|
287
|
+
{}.tap do |hash|
|
|
288
|
+
value.each do |k, v|
|
|
289
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
|
290
|
+
end
|
|
291
|
+
end
|
|
292
|
+
else # model
|
|
293
|
+
_model = Object.const_get("PureCloud").const_get(type).new
|
|
294
|
+
_model.build_from_hash(value)
|
|
295
|
+
end
|
|
296
|
+
end
|
|
297
|
+
|
|
298
|
+
def to_s
|
|
299
|
+
to_hash.to_s
|
|
300
|
+
end
|
|
301
|
+
|
|
302
|
+
# to_body is an alias to to_body (backward compatibility))
|
|
303
|
+
def to_body
|
|
304
|
+
to_hash
|
|
305
|
+
end
|
|
306
|
+
|
|
307
|
+
# return the object in the form of hash
|
|
308
|
+
def to_hash
|
|
309
|
+
hash = {}
|
|
310
|
+
self.class.attribute_map.each_pair do |attr, param|
|
|
311
|
+
value = self.send(attr)
|
|
312
|
+
next if value.nil?
|
|
313
|
+
hash[param] = _to_hash(value)
|
|
314
|
+
end
|
|
315
|
+
hash
|
|
316
|
+
end
|
|
317
|
+
|
|
318
|
+
# Method to output non-array value in the form of hash
|
|
319
|
+
# For object, use to_hash. Otherwise, just return the value
|
|
320
|
+
def _to_hash(value)
|
|
321
|
+
if value.is_a?(Array)
|
|
322
|
+
value.compact.map{ |v| _to_hash(v) }
|
|
323
|
+
elsif value.is_a?(Hash)
|
|
324
|
+
{}.tap do |hash|
|
|
325
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
|
326
|
+
end
|
|
327
|
+
elsif value.respond_to? :to_hash
|
|
328
|
+
value.to_hash
|
|
329
|
+
else
|
|
330
|
+
value
|
|
331
|
+
end
|
|
332
|
+
end
|
|
333
|
+
|
|
334
|
+
end
|
|
335
|
+
end
|