ultracart_api 3.11.56 → 3.11.57

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.
@@ -479,6 +479,61 @@ module UltracartClient
479
479
  end
480
480
  return data, status_code, headers
481
481
  end
482
+ # Delete pbx class of service
483
+ # Delete a class of service
484
+ # @param class_of_service_uuid
485
+ # @param [Hash] opts the optional parameters
486
+ # @return [BaseResponse]
487
+ def delete_pbx_class_of_service(class_of_service_uuid, opts = {})
488
+ data, _status_code, _headers = delete_pbx_class_of_service_with_http_info(class_of_service_uuid, opts)
489
+ data
490
+ end
491
+
492
+ # Delete pbx class of service
493
+ # Delete a class of service
494
+ # @param class_of_service_uuid
495
+ # @param [Hash] opts the optional parameters
496
+ # @return [Array<(BaseResponse, Fixnum, Hash)>] BaseResponse data, response status code and response headers
497
+ def delete_pbx_class_of_service_with_http_info(class_of_service_uuid, opts = {})
498
+ if @api_client.config.debugging
499
+ @api_client.config.logger.debug 'Calling API: ConversationApi.delete_pbx_class_of_service ...'
500
+ end
501
+ # verify the required parameter 'class_of_service_uuid' is set
502
+ if @api_client.config.client_side_validation && class_of_service_uuid.nil?
503
+ fail ArgumentError, "Missing the required parameter 'class_of_service_uuid' when calling ConversationApi.delete_pbx_class_of_service"
504
+ end
505
+ # resource path
506
+ local_var_path = '/conversation/pbx/class_of_service/{classOfServiceUuid}'.sub('{' + 'classOfServiceUuid' + '}', class_of_service_uuid.to_s)
507
+
508
+ # query parameters
509
+ query_params = {}
510
+
511
+ # header parameters
512
+ header_params = {}
513
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
514
+ # HTTP header 'Accept' (if needed)
515
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
516
+ # HTTP header 'Content-Type'
517
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
518
+
519
+ # form parameters
520
+ form_params = {}
521
+
522
+ # http body (model)
523
+ post_body = nil
524
+ auth_names = ['ultraCartOauth', 'ultraCartSimpleApiKey']
525
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
526
+ :header_params => header_params,
527
+ :query_params => query_params,
528
+ :form_params => form_params,
529
+ :body => post_body,
530
+ :auth_names => auth_names,
531
+ :return_type => 'BaseResponse')
532
+ if @api_client.config.debugging
533
+ @api_client.config.logger.debug "API called: ConversationApi#delete_pbx_class_of_service\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
534
+ end
535
+ return data, status_code, headers
536
+ end
482
537
  # Delete pbx hardware phone
483
538
  # Delete a pbx hardware phone
484
539
  # @param conversation_pbx_hardware_phone_uuid
@@ -2848,6 +2903,168 @@ module UltracartClient
2848
2903
  end
2849
2904
  return data, status_code, headers
2850
2905
  end
2906
+ # Get pbx class of service
2907
+ # Retrieve a single class of service
2908
+ # @param class_of_service_uuid
2909
+ # @param [Hash] opts the optional parameters
2910
+ # @return [ConversationPbxClassOfServiceResponse]
2911
+ def get_pbx_class_of_service(class_of_service_uuid, opts = {})
2912
+ data, _status_code, _headers = get_pbx_class_of_service_with_http_info(class_of_service_uuid, opts)
2913
+ data
2914
+ end
2915
+
2916
+ # Get pbx class of service
2917
+ # Retrieve a single class of service
2918
+ # @param class_of_service_uuid
2919
+ # @param [Hash] opts the optional parameters
2920
+ # @return [Array<(ConversationPbxClassOfServiceResponse, Fixnum, Hash)>] ConversationPbxClassOfServiceResponse data, response status code and response headers
2921
+ def get_pbx_class_of_service_with_http_info(class_of_service_uuid, opts = {})
2922
+ if @api_client.config.debugging
2923
+ @api_client.config.logger.debug 'Calling API: ConversationApi.get_pbx_class_of_service ...'
2924
+ end
2925
+ # verify the required parameter 'class_of_service_uuid' is set
2926
+ if @api_client.config.client_side_validation && class_of_service_uuid.nil?
2927
+ fail ArgumentError, "Missing the required parameter 'class_of_service_uuid' when calling ConversationApi.get_pbx_class_of_service"
2928
+ end
2929
+ # resource path
2930
+ local_var_path = '/conversation/pbx/class_of_service/{classOfServiceUuid}'.sub('{' + 'classOfServiceUuid' + '}', class_of_service_uuid.to_s)
2931
+
2932
+ # query parameters
2933
+ query_params = {}
2934
+
2935
+ # header parameters
2936
+ header_params = {}
2937
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
2938
+ # HTTP header 'Accept' (if needed)
2939
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
2940
+ # HTTP header 'Content-Type'
2941
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
2942
+
2943
+ # form parameters
2944
+ form_params = {}
2945
+
2946
+ # http body (model)
2947
+ post_body = nil
2948
+ auth_names = ['ultraCartOauth', 'ultraCartSimpleApiKey']
2949
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
2950
+ :header_params => header_params,
2951
+ :query_params => query_params,
2952
+ :form_params => form_params,
2953
+ :body => post_body,
2954
+ :auth_names => auth_names,
2955
+ :return_type => 'ConversationPbxClassOfServiceResponse')
2956
+ if @api_client.config.debugging
2957
+ @api_client.config.logger.debug "API called: ConversationApi#get_pbx_class_of_service\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2958
+ end
2959
+ return data, status_code, headers
2960
+ end
2961
+ # Get pbx classes of service
2962
+ # Retrieve all classes of service for the merchant
2963
+ # @param [Hash] opts the optional parameters
2964
+ # @return [ConversationPbxClassOfServicesResponse]
2965
+ def get_pbx_classes_of_service(opts = {})
2966
+ data, _status_code, _headers = get_pbx_classes_of_service_with_http_info(opts)
2967
+ data
2968
+ end
2969
+
2970
+ # Get pbx classes of service
2971
+ # Retrieve all classes of service for the merchant
2972
+ # @param [Hash] opts the optional parameters
2973
+ # @return [Array<(ConversationPbxClassOfServicesResponse, Fixnum, Hash)>] ConversationPbxClassOfServicesResponse data, response status code and response headers
2974
+ def get_pbx_classes_of_service_with_http_info(opts = {})
2975
+ if @api_client.config.debugging
2976
+ @api_client.config.logger.debug 'Calling API: ConversationApi.get_pbx_classes_of_service ...'
2977
+ end
2978
+ # resource path
2979
+ local_var_path = '/conversation/pbx/class_of_service'
2980
+
2981
+ # query parameters
2982
+ query_params = {}
2983
+
2984
+ # header parameters
2985
+ header_params = {}
2986
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
2987
+ # HTTP header 'Accept' (if needed)
2988
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
2989
+ # HTTP header 'Content-Type'
2990
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
2991
+
2992
+ # form parameters
2993
+ form_params = {}
2994
+
2995
+ # http body (model)
2996
+ post_body = nil
2997
+ auth_names = ['ultraCartOauth', 'ultraCartSimpleApiKey']
2998
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
2999
+ :header_params => header_params,
3000
+ :query_params => query_params,
3001
+ :form_params => form_params,
3002
+ :body => post_body,
3003
+ :auth_names => auth_names,
3004
+ :return_type => 'ConversationPbxClassOfServicesResponse')
3005
+ if @api_client.config.debugging
3006
+ @api_client.config.logger.debug "API called: ConversationApi#get_pbx_classes_of_service\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
3007
+ end
3008
+ return data, status_code, headers
3009
+ end
3010
+ # Get pbx class of service audit logs
3011
+ # Retrieve audit log entries for class of service enforcement
3012
+ # @param [Hash] opts the optional parameters
3013
+ # @option opts [String] :since ISO timestamp to filter entries since
3014
+ # @option opts [String] :agent_login Filter by agent login
3015
+ # @option opts [Integer] :limit Maximum number of entries to return (default 100)
3016
+ # @return [ConversationPbxCosAuditLogsResponse]
3017
+ def get_pbx_cos_audit_logs(opts = {})
3018
+ data, _status_code, _headers = get_pbx_cos_audit_logs_with_http_info(opts)
3019
+ data
3020
+ end
3021
+
3022
+ # Get pbx class of service audit logs
3023
+ # Retrieve audit log entries for class of service enforcement
3024
+ # @param [Hash] opts the optional parameters
3025
+ # @option opts [String] :since ISO timestamp to filter entries since
3026
+ # @option opts [String] :agent_login Filter by agent login
3027
+ # @option opts [Integer] :limit Maximum number of entries to return (default 100)
3028
+ # @return [Array<(ConversationPbxCosAuditLogsResponse, Fixnum, Hash)>] ConversationPbxCosAuditLogsResponse data, response status code and response headers
3029
+ def get_pbx_cos_audit_logs_with_http_info(opts = {})
3030
+ if @api_client.config.debugging
3031
+ @api_client.config.logger.debug 'Calling API: ConversationApi.get_pbx_cos_audit_logs ...'
3032
+ end
3033
+ # resource path
3034
+ local_var_path = '/conversation/pbx/class_of_service/audit_log'
3035
+
3036
+ # query parameters
3037
+ query_params = {}
3038
+ query_params[:'since'] = opts[:'since'] if !opts[:'since'].nil?
3039
+ query_params[:'agent_login'] = opts[:'agent_login'] if !opts[:'agent_login'].nil?
3040
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
3041
+
3042
+ # header parameters
3043
+ header_params = {}
3044
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
3045
+ # HTTP header 'Accept' (if needed)
3046
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
3047
+ # HTTP header 'Content-Type'
3048
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
3049
+
3050
+ # form parameters
3051
+ form_params = {}
3052
+
3053
+ # http body (model)
3054
+ post_body = nil
3055
+ auth_names = ['ultraCartOauth', 'ultraCartSimpleApiKey']
3056
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
3057
+ :header_params => header_params,
3058
+ :query_params => query_params,
3059
+ :form_params => form_params,
3060
+ :body => post_body,
3061
+ :auth_names => auth_names,
3062
+ :return_type => 'ConversationPbxCosAuditLogsResponse')
3063
+ if @api_client.config.debugging
3064
+ @api_client.config.logger.debug "API called: ConversationApi#get_pbx_cos_audit_logs\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
3065
+ end
3066
+ return data, status_code, headers
3067
+ end
2851
3068
  # Get pbx hardware phone
2852
3069
  # Retrieve a pbx hardware phone
2853
3070
  # @param conversation_pbx_hardware_phone_uuid
@@ -4236,6 +4453,61 @@ module UltracartClient
4236
4453
  end
4237
4454
  return data, status_code, headers
4238
4455
  end
4456
+ # Insert pbx class of service
4457
+ # Create a new class of service
4458
+ # @param class_of_service Class of service
4459
+ # @param [Hash] opts the optional parameters
4460
+ # @return [ConversationPbxClassOfServiceResponse]
4461
+ def insert_pbx_class_of_service(class_of_service, opts = {})
4462
+ data, _status_code, _headers = insert_pbx_class_of_service_with_http_info(class_of_service, opts)
4463
+ data
4464
+ end
4465
+
4466
+ # Insert pbx class of service
4467
+ # Create a new class of service
4468
+ # @param class_of_service Class of service
4469
+ # @param [Hash] opts the optional parameters
4470
+ # @return [Array<(ConversationPbxClassOfServiceResponse, Fixnum, Hash)>] ConversationPbxClassOfServiceResponse data, response status code and response headers
4471
+ def insert_pbx_class_of_service_with_http_info(class_of_service, opts = {})
4472
+ if @api_client.config.debugging
4473
+ @api_client.config.logger.debug 'Calling API: ConversationApi.insert_pbx_class_of_service ...'
4474
+ end
4475
+ # verify the required parameter 'class_of_service' is set
4476
+ if @api_client.config.client_side_validation && class_of_service.nil?
4477
+ fail ArgumentError, "Missing the required parameter 'class_of_service' when calling ConversationApi.insert_pbx_class_of_service"
4478
+ end
4479
+ # resource path
4480
+ local_var_path = '/conversation/pbx/class_of_service'
4481
+
4482
+ # query parameters
4483
+ query_params = {}
4484
+
4485
+ # header parameters
4486
+ header_params = {}
4487
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
4488
+ # HTTP header 'Accept' (if needed)
4489
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
4490
+ # HTTP header 'Content-Type'
4491
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json; charset=UTF-8'])
4492
+
4493
+ # form parameters
4494
+ form_params = {}
4495
+
4496
+ # http body (model)
4497
+ post_body = @api_client.object_to_http_body(class_of_service)
4498
+ auth_names = ['ultraCartOauth', 'ultraCartSimpleApiKey']
4499
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
4500
+ :header_params => header_params,
4501
+ :query_params => query_params,
4502
+ :form_params => form_params,
4503
+ :body => post_body,
4504
+ :auth_names => auth_names,
4505
+ :return_type => 'ConversationPbxClassOfServiceResponse')
4506
+ if @api_client.config.debugging
4507
+ @api_client.config.logger.debug "API called: ConversationApi#insert_pbx_class_of_service\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
4508
+ end
4509
+ return data, status_code, headers
4510
+ end
4239
4511
  # Insert pbx hardware phone
4240
4512
  # Insert a pbx hardware phone
4241
4513
  # @param pbx_hardware_phone Pbx Hardware Phone
@@ -5919,6 +6191,67 @@ module UltracartClient
5919
6191
  end
5920
6192
  return data, status_code, headers
5921
6193
  end
6194
+ # Update pbx class of service
6195
+ # Update an existing class of service
6196
+ # @param class_of_service_uuid
6197
+ # @param class_of_service Class of service
6198
+ # @param [Hash] opts the optional parameters
6199
+ # @return [ConversationPbxClassOfServiceResponse]
6200
+ def update_pbx_class_of_service(class_of_service_uuid, class_of_service, opts = {})
6201
+ data, _status_code, _headers = update_pbx_class_of_service_with_http_info(class_of_service_uuid, class_of_service, opts)
6202
+ data
6203
+ end
6204
+
6205
+ # Update pbx class of service
6206
+ # Update an existing class of service
6207
+ # @param class_of_service_uuid
6208
+ # @param class_of_service Class of service
6209
+ # @param [Hash] opts the optional parameters
6210
+ # @return [Array<(ConversationPbxClassOfServiceResponse, Fixnum, Hash)>] ConversationPbxClassOfServiceResponse data, response status code and response headers
6211
+ def update_pbx_class_of_service_with_http_info(class_of_service_uuid, class_of_service, opts = {})
6212
+ if @api_client.config.debugging
6213
+ @api_client.config.logger.debug 'Calling API: ConversationApi.update_pbx_class_of_service ...'
6214
+ end
6215
+ # verify the required parameter 'class_of_service_uuid' is set
6216
+ if @api_client.config.client_side_validation && class_of_service_uuid.nil?
6217
+ fail ArgumentError, "Missing the required parameter 'class_of_service_uuid' when calling ConversationApi.update_pbx_class_of_service"
6218
+ end
6219
+ # verify the required parameter 'class_of_service' is set
6220
+ if @api_client.config.client_side_validation && class_of_service.nil?
6221
+ fail ArgumentError, "Missing the required parameter 'class_of_service' when calling ConversationApi.update_pbx_class_of_service"
6222
+ end
6223
+ # resource path
6224
+ local_var_path = '/conversation/pbx/class_of_service/{classOfServiceUuid}'.sub('{' + 'classOfServiceUuid' + '}', class_of_service_uuid.to_s)
6225
+
6226
+ # query parameters
6227
+ query_params = {}
6228
+
6229
+ # header parameters
6230
+ header_params = {}
6231
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
6232
+ # HTTP header 'Accept' (if needed)
6233
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
6234
+ # HTTP header 'Content-Type'
6235
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json; charset=UTF-8'])
6236
+
6237
+ # form parameters
6238
+ form_params = {}
6239
+
6240
+ # http body (model)
6241
+ post_body = @api_client.object_to_http_body(class_of_service)
6242
+ auth_names = ['ultraCartOauth', 'ultraCartSimpleApiKey']
6243
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
6244
+ :header_params => header_params,
6245
+ :query_params => query_params,
6246
+ :form_params => form_params,
6247
+ :body => post_body,
6248
+ :auth_names => auth_names,
6249
+ :return_type => 'ConversationPbxClassOfServiceResponse')
6250
+ if @api_client.config.debugging
6251
+ @api_client.config.logger.debug "API called: ConversationApi#update_pbx_class_of_service\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
6252
+ end
6253
+ return data, status_code, headers
6254
+ end
5922
6255
  # Update pbx hardware phone
5923
6256
  # Update a pbx hardware phone
5924
6257
  # @param conversation_pbx_hardware_phone_uuid
@@ -22,6 +22,9 @@ module UltracartClient
22
22
 
23
23
  attr_accessor :conversation_participant_name
24
24
 
25
+ # The default phone number this agent should use when making an outbound call.
26
+ attr_accessor :default_phone_number
27
+
25
28
  # UltraCart Groups this user belongs to
26
29
  attr_accessor :group_ids
27
30
 
@@ -59,6 +62,7 @@ module UltracartClient
59
62
  :'chat_user' => :'chat_user',
60
63
  :'conversation_participant_arn' => :'conversation_participant_arn',
61
64
  :'conversation_participant_name' => :'conversation_participant_name',
65
+ :'default_phone_number' => :'default_phone_number',
62
66
  :'group_ids' => :'group_ids',
63
67
  :'jwt' => :'jwt',
64
68
  :'merchant_id' => :'merchant_id',
@@ -83,6 +87,7 @@ module UltracartClient
83
87
  :'chat_user' => :'BOOLEAN',
84
88
  :'conversation_participant_arn' => :'String',
85
89
  :'conversation_participant_name' => :'String',
90
+ :'default_phone_number' => :'String',
86
91
  :'group_ids' => :'Array<Integer>',
87
92
  :'jwt' => :'String',
88
93
  :'merchant_id' => :'String',
@@ -124,6 +129,10 @@ module UltracartClient
124
129
  self.conversation_participant_name = attributes[:'conversation_participant_name']
125
130
  end
126
131
 
132
+ if attributes.has_key?(:'default_phone_number')
133
+ self.default_phone_number = attributes[:'default_phone_number']
134
+ end
135
+
127
136
  if attributes.has_key?(:'group_ids')
128
137
  if (value = attributes[:'group_ids']).is_a?(Array)
129
138
  self.group_ids = value
@@ -207,6 +216,7 @@ module UltracartClient
207
216
  chat_user == o.chat_user &&
208
217
  conversation_participant_arn == o.conversation_participant_arn &&
209
218
  conversation_participant_name == o.conversation_participant_name &&
219
+ default_phone_number == o.default_phone_number &&
210
220
  group_ids == o.group_ids &&
211
221
  jwt == o.jwt &&
212
222
  merchant_id == o.merchant_id &&
@@ -232,7 +242,7 @@ module UltracartClient
232
242
  # Calculates hash code according to all attributes.
233
243
  # @return [Fixnum] Hash code
234
244
  def hash
235
- [chat_admin, chat_user, conversation_participant_arn, conversation_participant_name, group_ids, jwt, merchant_id, pbx_admin, pbx_jwt, pbx_supervisor, pbx_user, pbx_voice_identity, pbx_voice_token, pbx_worker_token, pbx_worker_token_v2, twilio_accounts, user_id, websocket_url].hash
245
+ [chat_admin, chat_user, conversation_participant_arn, conversation_participant_name, default_phone_number, group_ids, jwt, merchant_id, pbx_admin, pbx_jwt, pbx_supervisor, pbx_user, pbx_voice_identity, pbx_voice_token, pbx_worker_token, pbx_worker_token_v2, twilio_accounts, user_id, websocket_url].hash
236
246
  end
237
247
 
238
248
  # Builds the object from hash
@@ -26,6 +26,9 @@ module UltracartClient
26
26
  # Conversation Pbx Agent unique identifier
27
27
  attr_accessor :conversation_pbx_agent_uuid
28
28
 
29
+ # Class of Service UUID. If null, the merchant default CoS applies.
30
+ attr_accessor :cos_uuid
31
+
29
32
  # The default phone number that this agent should dial out to the PSTN with.
30
33
  attr_accessor :default_phone_number_uuid
31
34
 
@@ -103,6 +106,7 @@ module UltracartClient
103
106
  :'call_routing_preference' => :'call_routing_preference',
104
107
  :'cellphone' => :'cellphone',
105
108
  :'conversation_pbx_agent_uuid' => :'conversation_pbx_agent_uuid',
109
+ :'cos_uuid' => :'cos_uuid',
106
110
  :'default_phone_number_uuid' => :'default_phone_number_uuid',
107
111
  :'extension' => :'extension',
108
112
  :'full_name' => :'full_name',
@@ -129,6 +133,7 @@ module UltracartClient
129
133
  :'call_routing_preference' => :'String',
130
134
  :'cellphone' => :'String',
131
135
  :'conversation_pbx_agent_uuid' => :'String',
136
+ :'cos_uuid' => :'String',
132
137
  :'default_phone_number_uuid' => :'String',
133
138
  :'extension' => :'Integer',
134
139
  :'full_name' => :'String',
@@ -172,6 +177,10 @@ module UltracartClient
172
177
  self.conversation_pbx_agent_uuid = attributes[:'conversation_pbx_agent_uuid']
173
178
  end
174
179
 
180
+ if attributes.has_key?(:'cos_uuid')
181
+ self.cos_uuid = attributes[:'cos_uuid']
182
+ end
183
+
175
184
  if attributes.has_key?(:'default_phone_number_uuid')
176
185
  self.default_phone_number_uuid = attributes[:'default_phone_number_uuid']
177
186
  end
@@ -285,6 +294,8 @@ module UltracartClient
285
294
  return false if !@shared_conversation_pbx_voicemail_mailbox_uuid.nil? && @shared_conversation_pbx_voicemail_mailbox_uuid.to_s.length > 50
286
295
  return false if !@twilio_taskrouter_worker_id.nil? && @twilio_taskrouter_worker_id.to_s.length > 100
287
296
  return false if !@unavailable_play_audio_uuid.nil? && @unavailable_play_audio_uuid.to_s.length > 50
297
+ unavailable_say_voice_validator = EnumAttributeValidator.new('String', ['man', 'woman'])
298
+ return false unless unavailable_say_voice_validator.valid?(@unavailable_say_voice)
288
299
  return false if !@unavailable_say_voice.nil? && @unavailable_say_voice.to_s.length > 50
289
300
  true
290
301
  end
@@ -359,13 +370,13 @@ module UltracartClient
359
370
  @unavailable_play_audio_uuid = unavailable_play_audio_uuid
360
371
  end
361
372
 
362
- # Custom attribute writer method with validation
363
- # @param [Object] unavailable_say_voice Value to be assigned
373
+ # Custom attribute writer method checking allowed values (enum).
374
+ # @param [Object] unavailable_say_voice Object to be assigned
364
375
  def unavailable_say_voice=(unavailable_say_voice)
365
- if !unavailable_say_voice.nil? && unavailable_say_voice.to_s.length > 50
366
- fail ArgumentError, 'invalid value for "unavailable_say_voice", the character length must be smaller than or equal to 50.'
376
+ validator = EnumAttributeValidator.new('String', ['man', 'woman'])
377
+ unless validator.valid?(unavailable_say_voice)
378
+ fail ArgumentError, 'invalid value for "unavailable_say_voice", must be one of #{validator.allowable_values}.'
367
379
  end
368
-
369
380
  @unavailable_say_voice = unavailable_say_voice
370
381
  end
371
382
 
@@ -378,6 +389,7 @@ module UltracartClient
378
389
  call_routing_preference == o.call_routing_preference &&
379
390
  cellphone == o.cellphone &&
380
391
  conversation_pbx_agent_uuid == o.conversation_pbx_agent_uuid &&
392
+ cos_uuid == o.cos_uuid &&
381
393
  default_phone_number_uuid == o.default_phone_number_uuid &&
382
394
  extension == o.extension &&
383
395
  full_name == o.full_name &&
@@ -405,7 +417,7 @@ module UltracartClient
405
417
  # Calculates hash code according to all attributes.
406
418
  # @return [Fixnum] Hash code
407
419
  def hash
408
- [ai, call_routing_preference, cellphone, conversation_pbx_agent_uuid, default_phone_number_uuid, extension, full_name, hardware_phone_uuids, login, merchant_id, personal_conversation_pbx_voicemail_mailbox_uuid, preferred_hardware_phone_uuid, record_outgoing_automatically, shared_conversation_pbx_voicemail_mailbox_uuid, twilio_taskrouter_worker_id, unavailable_play_audio_uuid, unavailable_say, unavailable_say_voice, user_id, voicemail].hash
420
+ [ai, call_routing_preference, cellphone, conversation_pbx_agent_uuid, cos_uuid, default_phone_number_uuid, extension, full_name, hardware_phone_uuids, login, merchant_id, personal_conversation_pbx_voicemail_mailbox_uuid, preferred_hardware_phone_uuid, record_outgoing_automatically, shared_conversation_pbx_voicemail_mailbox_uuid, twilio_taskrouter_worker_id, unavailable_play_audio_uuid, unavailable_say, unavailable_say_voice, user_id, voicemail].hash
409
421
  end
410
422
 
411
423
  # Builds the object from hash
@@ -23,6 +23,9 @@ module UltracartClient
23
23
  # Whether this is the primary recording for the call
24
24
  attr_accessor :is_primary
25
25
 
26
+ # S3 key for the recording audio file
27
+ attr_accessor :recording_s3_key
28
+
26
29
  # Twilio recording SID
27
30
  attr_accessor :recording_sid
28
31
 
@@ -40,6 +43,7 @@ module UltracartClient
40
43
  :'channels' => :'channels',
41
44
  :'duration_seconds' => :'duration_seconds',
42
45
  :'is_primary' => :'is_primary',
46
+ :'recording_s3_key' => :'recording_s3_key',
43
47
  :'recording_sid' => :'recording_sid',
44
48
  :'recording_url' => :'recording_url',
45
49
  :'status' => :'status',
@@ -53,6 +57,7 @@ module UltracartClient
53
57
  :'channels' => :'Integer',
54
58
  :'duration_seconds' => :'Integer',
55
59
  :'is_primary' => :'BOOLEAN',
60
+ :'recording_s3_key' => :'String',
56
61
  :'recording_sid' => :'String',
57
62
  :'recording_url' => :'String',
58
63
  :'status' => :'String',
@@ -80,6 +85,10 @@ module UltracartClient
80
85
  self.is_primary = attributes[:'is_primary']
81
86
  end
82
87
 
88
+ if attributes.has_key?(:'recording_s3_key')
89
+ self.recording_s3_key = attributes[:'recording_s3_key']
90
+ end
91
+
83
92
  if attributes.has_key?(:'recording_sid')
84
93
  self.recording_sid = attributes[:'recording_sid']
85
94
  end
@@ -118,6 +127,7 @@ module UltracartClient
118
127
  channels == o.channels &&
119
128
  duration_seconds == o.duration_seconds &&
120
129
  is_primary == o.is_primary &&
130
+ recording_s3_key == o.recording_s3_key &&
121
131
  recording_sid == o.recording_sid &&
122
132
  recording_url == o.recording_url &&
123
133
  status == o.status &&
@@ -133,7 +143,7 @@ module UltracartClient
133
143
  # Calculates hash code according to all attributes.
134
144
  # @return [Fixnum] Hash code
135
145
  def hash
136
- [channels, duration_seconds, is_primary, recording_sid, recording_url, status, transcript].hash
146
+ [channels, duration_seconds, is_primary, recording_s3_key, recording_sid, recording_url, status, transcript].hash
137
147
  end
138
148
 
139
149
  # Builds the object from hash