ultracart_api 4.1.56 → 4.1.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.
data/docs/Twilio.md CHANGED
@@ -5,6 +5,7 @@
5
5
  | Name | Type | Description | Notes |
6
6
  | ---- | ---- | ----------- | ----- |
7
7
  | **account_sid** | **String** | | [optional] |
8
+ | **ai_twiml_app_sid** | **String** | | [optional] |
8
9
  | **api_key_id** | **String** | | [optional] |
9
10
  | **api_key_name** | **String** | | [optional] |
10
11
  | **auth_token** | **String** | | [optional] |
@@ -21,6 +22,7 @@ require 'ultracart_api'
21
22
 
22
23
  instance = UltracartClient::Twilio.new(
23
24
  account_sid: null,
25
+ ai_twiml_app_sid: null,
24
26
  api_key_id: null,
25
27
  api_key_name: null,
26
28
  auth_token: null,
@@ -556,6 +556,70 @@ module UltracartClient
556
556
  return data, status_code, headers
557
557
  end
558
558
 
559
+ # Delete pbx class of service
560
+ # Delete a class of service
561
+ # @param class_of_service_uuid [String]
562
+ # @param [Hash] opts the optional parameters
563
+ # @return [BaseResponse]
564
+ def delete_pbx_class_of_service(class_of_service_uuid, opts = {})
565
+ data, _status_code, _headers = delete_pbx_class_of_service_with_http_info(class_of_service_uuid, opts)
566
+ data
567
+ end
568
+
569
+ # Delete pbx class of service
570
+ # Delete a class of service
571
+ # @param class_of_service_uuid [String]
572
+ # @param [Hash] opts the optional parameters
573
+ # @return [Array<(BaseResponse, Integer, Hash)>] BaseResponse data, response status code and response headers
574
+ def delete_pbx_class_of_service_with_http_info(class_of_service_uuid, opts = {})
575
+ if @api_client.config.debugging
576
+ @api_client.config.logger.debug 'Calling API: ConversationApi.delete_pbx_class_of_service ...'
577
+ end
578
+ # verify the required parameter 'class_of_service_uuid' is set
579
+ if @api_client.config.client_side_validation && class_of_service_uuid.nil?
580
+ fail ArgumentError, "Missing the required parameter 'class_of_service_uuid' when calling ConversationApi.delete_pbx_class_of_service"
581
+ end
582
+ # resource path
583
+ local_var_path = '/conversation/pbx/class_of_service/{classOfServiceUuid}'.sub('{' + 'classOfServiceUuid' + '}', CGI.escape(class_of_service_uuid.to_s))
584
+
585
+ # query parameters
586
+ query_params = opts[:query_params] || {}
587
+
588
+ # header parameters
589
+ header_params = opts[:header_params] || {}
590
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
591
+ # HTTP header 'Accept' (if needed)
592
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
593
+
594
+ # form parameters
595
+ form_params = opts[:form_params] || {}
596
+
597
+ # http body (model)
598
+ post_body = opts[:debug_body]
599
+
600
+ # return_type
601
+ return_type = opts[:debug_return_type] || 'BaseResponse'
602
+
603
+ # auth_names
604
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
605
+
606
+ new_options = opts.merge(
607
+ :operation => :"ConversationApi.delete_pbx_class_of_service",
608
+ :header_params => header_params,
609
+ :query_params => query_params,
610
+ :form_params => form_params,
611
+ :body => post_body,
612
+ :auth_names => auth_names,
613
+ :return_type => return_type
614
+ )
615
+
616
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
617
+ if @api_client.config.debugging
618
+ @api_client.config.logger.debug "API called: ConversationApi#delete_pbx_class_of_service\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
619
+ end
620
+ return data, status_code, headers
621
+ end
622
+
559
623
  # Delete pbx hardware phone
560
624
  # Delete a pbx hardware phone
561
625
  # @param conversation_pbx_hardware_phone_uuid [String]
@@ -3339,6 +3403,195 @@ module UltracartClient
3339
3403
  return data, status_code, headers
3340
3404
  end
3341
3405
 
3406
+ # Get pbx class of service
3407
+ # Retrieve a single class of service
3408
+ # @param class_of_service_uuid [String]
3409
+ # @param [Hash] opts the optional parameters
3410
+ # @return [ConversationPbxClassOfServiceResponse]
3411
+ def get_pbx_class_of_service(class_of_service_uuid, opts = {})
3412
+ data, _status_code, _headers = get_pbx_class_of_service_with_http_info(class_of_service_uuid, opts)
3413
+ data
3414
+ end
3415
+
3416
+ # Get pbx class of service
3417
+ # Retrieve a single class of service
3418
+ # @param class_of_service_uuid [String]
3419
+ # @param [Hash] opts the optional parameters
3420
+ # @return [Array<(ConversationPbxClassOfServiceResponse, Integer, Hash)>] ConversationPbxClassOfServiceResponse data, response status code and response headers
3421
+ def get_pbx_class_of_service_with_http_info(class_of_service_uuid, opts = {})
3422
+ if @api_client.config.debugging
3423
+ @api_client.config.logger.debug 'Calling API: ConversationApi.get_pbx_class_of_service ...'
3424
+ end
3425
+ # verify the required parameter 'class_of_service_uuid' is set
3426
+ if @api_client.config.client_side_validation && class_of_service_uuid.nil?
3427
+ fail ArgumentError, "Missing the required parameter 'class_of_service_uuid' when calling ConversationApi.get_pbx_class_of_service"
3428
+ end
3429
+ # resource path
3430
+ local_var_path = '/conversation/pbx/class_of_service/{classOfServiceUuid}'.sub('{' + 'classOfServiceUuid' + '}', CGI.escape(class_of_service_uuid.to_s))
3431
+
3432
+ # query parameters
3433
+ query_params = opts[:query_params] || {}
3434
+
3435
+ # header parameters
3436
+ header_params = opts[:header_params] || {}
3437
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
3438
+ # HTTP header 'Accept' (if needed)
3439
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
3440
+
3441
+ # form parameters
3442
+ form_params = opts[:form_params] || {}
3443
+
3444
+ # http body (model)
3445
+ post_body = opts[:debug_body]
3446
+
3447
+ # return_type
3448
+ return_type = opts[:debug_return_type] || 'ConversationPbxClassOfServiceResponse'
3449
+
3450
+ # auth_names
3451
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
3452
+
3453
+ new_options = opts.merge(
3454
+ :operation => :"ConversationApi.get_pbx_class_of_service",
3455
+ :header_params => header_params,
3456
+ :query_params => query_params,
3457
+ :form_params => form_params,
3458
+ :body => post_body,
3459
+ :auth_names => auth_names,
3460
+ :return_type => return_type
3461
+ )
3462
+
3463
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
3464
+ if @api_client.config.debugging
3465
+ @api_client.config.logger.debug "API called: ConversationApi#get_pbx_class_of_service\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
3466
+ end
3467
+ return data, status_code, headers
3468
+ end
3469
+
3470
+ # Get pbx classes of service
3471
+ # Retrieve all classes of service for the merchant
3472
+ # @param [Hash] opts the optional parameters
3473
+ # @return [ConversationPbxClassOfServicesResponse]
3474
+ def get_pbx_classes_of_service(opts = {})
3475
+ data, _status_code, _headers = get_pbx_classes_of_service_with_http_info(opts)
3476
+ data
3477
+ end
3478
+
3479
+ # Get pbx classes of service
3480
+ # Retrieve all classes of service for the merchant
3481
+ # @param [Hash] opts the optional parameters
3482
+ # @return [Array<(ConversationPbxClassOfServicesResponse, Integer, Hash)>] ConversationPbxClassOfServicesResponse data, response status code and response headers
3483
+ def get_pbx_classes_of_service_with_http_info(opts = {})
3484
+ if @api_client.config.debugging
3485
+ @api_client.config.logger.debug 'Calling API: ConversationApi.get_pbx_classes_of_service ...'
3486
+ end
3487
+ # resource path
3488
+ local_var_path = '/conversation/pbx/class_of_service'
3489
+
3490
+ # query parameters
3491
+ query_params = opts[:query_params] || {}
3492
+
3493
+ # header parameters
3494
+ header_params = opts[:header_params] || {}
3495
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
3496
+ # HTTP header 'Accept' (if needed)
3497
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
3498
+
3499
+ # form parameters
3500
+ form_params = opts[:form_params] || {}
3501
+
3502
+ # http body (model)
3503
+ post_body = opts[:debug_body]
3504
+
3505
+ # return_type
3506
+ return_type = opts[:debug_return_type] || 'ConversationPbxClassOfServicesResponse'
3507
+
3508
+ # auth_names
3509
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
3510
+
3511
+ new_options = opts.merge(
3512
+ :operation => :"ConversationApi.get_pbx_classes_of_service",
3513
+ :header_params => header_params,
3514
+ :query_params => query_params,
3515
+ :form_params => form_params,
3516
+ :body => post_body,
3517
+ :auth_names => auth_names,
3518
+ :return_type => return_type
3519
+ )
3520
+
3521
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
3522
+ if @api_client.config.debugging
3523
+ @api_client.config.logger.debug "API called: ConversationApi#get_pbx_classes_of_service\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
3524
+ end
3525
+ return data, status_code, headers
3526
+ end
3527
+
3528
+ # Get pbx class of service audit logs
3529
+ # Retrieve audit log entries for class of service enforcement
3530
+ # @param [Hash] opts the optional parameters
3531
+ # @option opts [String] :since ISO timestamp to filter entries since
3532
+ # @option opts [String] :agent_login Filter by agent login
3533
+ # @option opts [Integer] :limit Maximum number of entries to return (default 100)
3534
+ # @return [ConversationPbxCosAuditLogsResponse]
3535
+ def get_pbx_cos_audit_logs(opts = {})
3536
+ data, _status_code, _headers = get_pbx_cos_audit_logs_with_http_info(opts)
3537
+ data
3538
+ end
3539
+
3540
+ # Get pbx class of service audit logs
3541
+ # Retrieve audit log entries for class of service enforcement
3542
+ # @param [Hash] opts the optional parameters
3543
+ # @option opts [String] :since ISO timestamp to filter entries since
3544
+ # @option opts [String] :agent_login Filter by agent login
3545
+ # @option opts [Integer] :limit Maximum number of entries to return (default 100)
3546
+ # @return [Array<(ConversationPbxCosAuditLogsResponse, Integer, Hash)>] ConversationPbxCosAuditLogsResponse data, response status code and response headers
3547
+ def get_pbx_cos_audit_logs_with_http_info(opts = {})
3548
+ if @api_client.config.debugging
3549
+ @api_client.config.logger.debug 'Calling API: ConversationApi.get_pbx_cos_audit_logs ...'
3550
+ end
3551
+ # resource path
3552
+ local_var_path = '/conversation/pbx/class_of_service/audit_log'
3553
+
3554
+ # query parameters
3555
+ query_params = opts[:query_params] || {}
3556
+ query_params[:'since'] = opts[:'since'] if !opts[:'since'].nil?
3557
+ query_params[:'agent_login'] = opts[:'agent_login'] if !opts[:'agent_login'].nil?
3558
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
3559
+
3560
+ # header parameters
3561
+ header_params = opts[:header_params] || {}
3562
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
3563
+ # HTTP header 'Accept' (if needed)
3564
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
3565
+
3566
+ # form parameters
3567
+ form_params = opts[:form_params] || {}
3568
+
3569
+ # http body (model)
3570
+ post_body = opts[:debug_body]
3571
+
3572
+ # return_type
3573
+ return_type = opts[:debug_return_type] || 'ConversationPbxCosAuditLogsResponse'
3574
+
3575
+ # auth_names
3576
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
3577
+
3578
+ new_options = opts.merge(
3579
+ :operation => :"ConversationApi.get_pbx_cos_audit_logs",
3580
+ :header_params => header_params,
3581
+ :query_params => query_params,
3582
+ :form_params => form_params,
3583
+ :body => post_body,
3584
+ :auth_names => auth_names,
3585
+ :return_type => return_type
3586
+ )
3587
+
3588
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
3589
+ if @api_client.config.debugging
3590
+ @api_client.config.logger.debug "API called: ConversationApi#get_pbx_cos_audit_logs\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
3591
+ end
3592
+ return data, status_code, headers
3593
+ end
3594
+
3342
3595
  # Get pbx hardware phone
3343
3596
  # Retrieve a pbx hardware phone
3344
3597
  # @param conversation_pbx_hardware_phone_uuid [String]
@@ -4996,6 +5249,75 @@ module UltracartClient
4996
5249
  return data, status_code, headers
4997
5250
  end
4998
5251
 
5252
+ # Insert pbx class of service
5253
+ # Create a new class of service
5254
+ # @param class_of_service [ConversationPbxClassOfService] Class of service
5255
+ # @param [Hash] opts the optional parameters
5256
+ # @return [ConversationPbxClassOfServiceResponse]
5257
+ def insert_pbx_class_of_service(class_of_service, opts = {})
5258
+ data, _status_code, _headers = insert_pbx_class_of_service_with_http_info(class_of_service, opts)
5259
+ data
5260
+ end
5261
+
5262
+ # Insert pbx class of service
5263
+ # Create a new class of service
5264
+ # @param class_of_service [ConversationPbxClassOfService] Class of service
5265
+ # @param [Hash] opts the optional parameters
5266
+ # @return [Array<(ConversationPbxClassOfServiceResponse, Integer, Hash)>] ConversationPbxClassOfServiceResponse data, response status code and response headers
5267
+ def insert_pbx_class_of_service_with_http_info(class_of_service, opts = {})
5268
+ if @api_client.config.debugging
5269
+ @api_client.config.logger.debug 'Calling API: ConversationApi.insert_pbx_class_of_service ...'
5270
+ end
5271
+ # verify the required parameter 'class_of_service' is set
5272
+ if @api_client.config.client_side_validation && class_of_service.nil?
5273
+ fail ArgumentError, "Missing the required parameter 'class_of_service' when calling ConversationApi.insert_pbx_class_of_service"
5274
+ end
5275
+ # resource path
5276
+ local_var_path = '/conversation/pbx/class_of_service'
5277
+
5278
+ # query parameters
5279
+ query_params = opts[:query_params] || {}
5280
+
5281
+ # header parameters
5282
+ header_params = opts[:header_params] || {}
5283
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
5284
+ # HTTP header 'Accept' (if needed)
5285
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
5286
+ # HTTP header 'Content-Type'
5287
+ content_type = @api_client.select_header_content_type(['application/json; charset=UTF-8'])
5288
+ if !content_type.nil?
5289
+ header_params['Content-Type'] = content_type
5290
+ end
5291
+
5292
+ # form parameters
5293
+ form_params = opts[:form_params] || {}
5294
+
5295
+ # http body (model)
5296
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(class_of_service)
5297
+
5298
+ # return_type
5299
+ return_type = opts[:debug_return_type] || 'ConversationPbxClassOfServiceResponse'
5300
+
5301
+ # auth_names
5302
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
5303
+
5304
+ new_options = opts.merge(
5305
+ :operation => :"ConversationApi.insert_pbx_class_of_service",
5306
+ :header_params => header_params,
5307
+ :query_params => query_params,
5308
+ :form_params => form_params,
5309
+ :body => post_body,
5310
+ :auth_names => auth_names,
5311
+ :return_type => return_type
5312
+ )
5313
+
5314
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
5315
+ if @api_client.config.debugging
5316
+ @api_client.config.logger.debug "API called: ConversationApi#insert_pbx_class_of_service\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
5317
+ end
5318
+ return data, status_code, headers
5319
+ end
5320
+
4999
5321
  # Insert pbx hardware phone
5000
5322
  # Insert a pbx hardware phone
5001
5323
  # @param pbx_hardware_phone [ConversationPbxHardwarePhone] Pbx Hardware Phone
@@ -7053,6 +7375,81 @@ module UltracartClient
7053
7375
  return data, status_code, headers
7054
7376
  end
7055
7377
 
7378
+ # Update pbx class of service
7379
+ # Update an existing class of service
7380
+ # @param class_of_service_uuid [String]
7381
+ # @param class_of_service [ConversationPbxClassOfService] Class of service
7382
+ # @param [Hash] opts the optional parameters
7383
+ # @return [ConversationPbxClassOfServiceResponse]
7384
+ def update_pbx_class_of_service(class_of_service_uuid, class_of_service, opts = {})
7385
+ data, _status_code, _headers = update_pbx_class_of_service_with_http_info(class_of_service_uuid, class_of_service, opts)
7386
+ data
7387
+ end
7388
+
7389
+ # Update pbx class of service
7390
+ # Update an existing class of service
7391
+ # @param class_of_service_uuid [String]
7392
+ # @param class_of_service [ConversationPbxClassOfService] Class of service
7393
+ # @param [Hash] opts the optional parameters
7394
+ # @return [Array<(ConversationPbxClassOfServiceResponse, Integer, Hash)>] ConversationPbxClassOfServiceResponse data, response status code and response headers
7395
+ def update_pbx_class_of_service_with_http_info(class_of_service_uuid, class_of_service, opts = {})
7396
+ if @api_client.config.debugging
7397
+ @api_client.config.logger.debug 'Calling API: ConversationApi.update_pbx_class_of_service ...'
7398
+ end
7399
+ # verify the required parameter 'class_of_service_uuid' is set
7400
+ if @api_client.config.client_side_validation && class_of_service_uuid.nil?
7401
+ fail ArgumentError, "Missing the required parameter 'class_of_service_uuid' when calling ConversationApi.update_pbx_class_of_service"
7402
+ end
7403
+ # verify the required parameter 'class_of_service' is set
7404
+ if @api_client.config.client_side_validation && class_of_service.nil?
7405
+ fail ArgumentError, "Missing the required parameter 'class_of_service' when calling ConversationApi.update_pbx_class_of_service"
7406
+ end
7407
+ # resource path
7408
+ local_var_path = '/conversation/pbx/class_of_service/{classOfServiceUuid}'.sub('{' + 'classOfServiceUuid' + '}', CGI.escape(class_of_service_uuid.to_s))
7409
+
7410
+ # query parameters
7411
+ query_params = opts[:query_params] || {}
7412
+
7413
+ # header parameters
7414
+ header_params = opts[:header_params] || {}
7415
+ header_params['X-UltraCart-Api-Version'] = @api_client.select_header_api_version()
7416
+ # HTTP header 'Accept' (if needed)
7417
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
7418
+ # HTTP header 'Content-Type'
7419
+ content_type = @api_client.select_header_content_type(['application/json; charset=UTF-8'])
7420
+ if !content_type.nil?
7421
+ header_params['Content-Type'] = content_type
7422
+ end
7423
+
7424
+ # form parameters
7425
+ form_params = opts[:form_params] || {}
7426
+
7427
+ # http body (model)
7428
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(class_of_service)
7429
+
7430
+ # return_type
7431
+ return_type = opts[:debug_return_type] || 'ConversationPbxClassOfServiceResponse'
7432
+
7433
+ # auth_names
7434
+ auth_names = opts[:debug_auth_names] || ['ultraCartOauth', 'ultraCartSimpleApiKey']
7435
+
7436
+ new_options = opts.merge(
7437
+ :operation => :"ConversationApi.update_pbx_class_of_service",
7438
+ :header_params => header_params,
7439
+ :query_params => query_params,
7440
+ :form_params => form_params,
7441
+ :body => post_body,
7442
+ :auth_names => auth_names,
7443
+ :return_type => return_type
7444
+ )
7445
+
7446
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
7447
+ if @api_client.config.debugging
7448
+ @api_client.config.logger.debug "API called: ConversationApi#update_pbx_class_of_service\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
7449
+ end
7450
+ return data, status_code, headers
7451
+ end
7452
+
7056
7453
  # Update pbx hardware phone
7057
7454
  # Update a pbx hardware phone
7058
7455
  # @param conversation_pbx_hardware_phone_uuid [String]
@@ -23,6 +23,9 @@ module UltracartClient
23
23
 
24
24
  attr_accessor :conversation_participant_name
25
25
 
26
+ # The default phone number this agent should use when making an outbound call.
27
+ attr_accessor :default_phone_number
28
+
26
29
  # UltraCart Groups this user belongs to
27
30
  attr_accessor :group_ids
28
31
 
@@ -60,6 +63,7 @@ module UltracartClient
60
63
  :'chat_user' => :'chat_user',
61
64
  :'conversation_participant_arn' => :'conversation_participant_arn',
62
65
  :'conversation_participant_name' => :'conversation_participant_name',
66
+ :'default_phone_number' => :'default_phone_number',
63
67
  :'group_ids' => :'group_ids',
64
68
  :'jwt' => :'jwt',
65
69
  :'merchant_id' => :'merchant_id',
@@ -89,6 +93,7 @@ module UltracartClient
89
93
  :'chat_user' => :'Boolean',
90
94
  :'conversation_participant_arn' => :'String',
91
95
  :'conversation_participant_name' => :'String',
96
+ :'default_phone_number' => :'String',
92
97
  :'group_ids' => :'Array<Integer>',
93
98
  :'jwt' => :'String',
94
99
  :'merchant_id' => :'String',
@@ -143,6 +148,10 @@ module UltracartClient
143
148
  self.conversation_participant_name = attributes[:'conversation_participant_name']
144
149
  end
145
150
 
151
+ if attributes.key?(:'default_phone_number')
152
+ self.default_phone_number = attributes[:'default_phone_number']
153
+ end
154
+
146
155
  if attributes.key?(:'group_ids')
147
156
  if (value = attributes[:'group_ids']).is_a?(Array)
148
157
  self.group_ids = value
@@ -226,6 +235,7 @@ module UltracartClient
226
235
  chat_user == o.chat_user &&
227
236
  conversation_participant_arn == o.conversation_participant_arn &&
228
237
  conversation_participant_name == o.conversation_participant_name &&
238
+ default_phone_number == o.default_phone_number &&
229
239
  group_ids == o.group_ids &&
230
240
  jwt == o.jwt &&
231
241
  merchant_id == o.merchant_id &&
@@ -251,7 +261,7 @@ module UltracartClient
251
261
  # Calculates hash code according to all attributes.
252
262
  # @return [Integer] Hash code
253
263
  def hash
254
- [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
264
+ [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
255
265
  end
256
266
 
257
267
  # Builds the object from hash
@@ -27,6 +27,9 @@ module UltracartClient
27
27
  # Conversation Pbx Agent unique identifier
28
28
  attr_accessor :conversation_pbx_agent_uuid
29
29
 
30
+ # Class of Service UUID. If null, the merchant default CoS applies.
31
+ attr_accessor :cos_uuid
32
+
30
33
  # The default phone number that this agent should dial out to the PSTN with.
31
34
  attr_accessor :default_phone_number_uuid
32
35
 
@@ -104,6 +107,7 @@ module UltracartClient
104
107
  :'call_routing_preference' => :'call_routing_preference',
105
108
  :'cellphone' => :'cellphone',
106
109
  :'conversation_pbx_agent_uuid' => :'conversation_pbx_agent_uuid',
110
+ :'cos_uuid' => :'cos_uuid',
107
111
  :'default_phone_number_uuid' => :'default_phone_number_uuid',
108
112
  :'extension' => :'extension',
109
113
  :'full_name' => :'full_name',
@@ -135,6 +139,7 @@ module UltracartClient
135
139
  :'call_routing_preference' => :'String',
136
140
  :'cellphone' => :'String',
137
141
  :'conversation_pbx_agent_uuid' => :'String',
142
+ :'cos_uuid' => :'String',
138
143
  :'default_phone_number_uuid' => :'String',
139
144
  :'extension' => :'Integer',
140
145
  :'full_name' => :'String',
@@ -191,6 +196,10 @@ module UltracartClient
191
196
  self.conversation_pbx_agent_uuid = attributes[:'conversation_pbx_agent_uuid']
192
197
  end
193
198
 
199
+ if attributes.key?(:'cos_uuid')
200
+ self.cos_uuid = attributes[:'cos_uuid']
201
+ end
202
+
194
203
  if attributes.key?(:'default_phone_number_uuid')
195
204
  self.default_phone_number_uuid = attributes[:'default_phone_number_uuid']
196
205
  end
@@ -304,6 +313,8 @@ module UltracartClient
304
313
  return false if !@shared_conversation_pbx_voicemail_mailbox_uuid.nil? && @shared_conversation_pbx_voicemail_mailbox_uuid.to_s.length > 50
305
314
  return false if !@twilio_taskrouter_worker_id.nil? && @twilio_taskrouter_worker_id.to_s.length > 100
306
315
  return false if !@unavailable_play_audio_uuid.nil? && @unavailable_play_audio_uuid.to_s.length > 50
316
+ unavailable_say_voice_validator = EnumAttributeValidator.new('String', ["man", "woman"])
317
+ return false unless unavailable_say_voice_validator.valid?(@unavailable_say_voice)
307
318
  return false if !@unavailable_say_voice.nil? && @unavailable_say_voice.to_s.length > 50
308
319
  true
309
320
  end
@@ -378,13 +389,13 @@ module UltracartClient
378
389
  @unavailable_play_audio_uuid = unavailable_play_audio_uuid
379
390
  end
380
391
 
381
- # Custom attribute writer method with validation
382
- # @param [Object] unavailable_say_voice Value to be assigned
392
+ # Custom attribute writer method checking allowed values (enum).
393
+ # @param [Object] unavailable_say_voice Object to be assigned
383
394
  def unavailable_say_voice=(unavailable_say_voice)
384
- if !unavailable_say_voice.nil? && unavailable_say_voice.to_s.length > 50
385
- fail ArgumentError, 'invalid value for "unavailable_say_voice", the character length must be smaller than or equal to 50.'
395
+ validator = EnumAttributeValidator.new('String', ["man", "woman"])
396
+ unless validator.valid?(unavailable_say_voice)
397
+ fail ArgumentError, "invalid value for \"unavailable_say_voice\", must be one of #{validator.allowable_values}."
386
398
  end
387
-
388
399
  @unavailable_say_voice = unavailable_say_voice
389
400
  end
390
401
 
@@ -397,6 +408,7 @@ module UltracartClient
397
408
  call_routing_preference == o.call_routing_preference &&
398
409
  cellphone == o.cellphone &&
399
410
  conversation_pbx_agent_uuid == o.conversation_pbx_agent_uuid &&
411
+ cos_uuid == o.cos_uuid &&
400
412
  default_phone_number_uuid == o.default_phone_number_uuid &&
401
413
  extension == o.extension &&
402
414
  full_name == o.full_name &&
@@ -424,7 +436,7 @@ module UltracartClient
424
436
  # Calculates hash code according to all attributes.
425
437
  # @return [Integer] Hash code
426
438
  def hash
427
- [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
439
+ [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
428
440
  end
429
441
 
430
442
  # Builds the object from hash
@@ -24,6 +24,9 @@ module UltracartClient
24
24
  # Whether this is the primary recording for the call
25
25
  attr_accessor :is_primary
26
26
 
27
+ # S3 key for the recording audio file
28
+ attr_accessor :recording_s3_key
29
+
27
30
  # Twilio recording SID
28
31
  attr_accessor :recording_sid
29
32
 
@@ -41,6 +44,7 @@ module UltracartClient
41
44
  :'channels' => :'channels',
42
45
  :'duration_seconds' => :'duration_seconds',
43
46
  :'is_primary' => :'is_primary',
47
+ :'recording_s3_key' => :'recording_s3_key',
44
48
  :'recording_sid' => :'recording_sid',
45
49
  :'recording_url' => :'recording_url',
46
50
  :'status' => :'status',
@@ -59,6 +63,7 @@ module UltracartClient
59
63
  :'channels' => :'Integer',
60
64
  :'duration_seconds' => :'Integer',
61
65
  :'is_primary' => :'Boolean',
66
+ :'recording_s3_key' => :'String',
62
67
  :'recording_sid' => :'String',
63
68
  :'recording_url' => :'String',
64
69
  :'status' => :'String',
@@ -99,6 +104,10 @@ module UltracartClient
99
104
  self.is_primary = attributes[:'is_primary']
100
105
  end
101
106
 
107
+ if attributes.key?(:'recording_s3_key')
108
+ self.recording_s3_key = attributes[:'recording_s3_key']
109
+ end
110
+
102
111
  if attributes.key?(:'recording_sid')
103
112
  self.recording_sid = attributes[:'recording_sid']
104
113
  end
@@ -137,6 +146,7 @@ module UltracartClient
137
146
  channels == o.channels &&
138
147
  duration_seconds == o.duration_seconds &&
139
148
  is_primary == o.is_primary &&
149
+ recording_s3_key == o.recording_s3_key &&
140
150
  recording_sid == o.recording_sid &&
141
151
  recording_url == o.recording_url &&
142
152
  status == o.status &&
@@ -152,7 +162,7 @@ module UltracartClient
152
162
  # Calculates hash code according to all attributes.
153
163
  # @return [Integer] Hash code
154
164
  def hash
155
- [channels, duration_seconds, is_primary, recording_sid, recording_url, status, transcript].hash
165
+ [channels, duration_seconds, is_primary, recording_s3_key, recording_sid, recording_url, status, transcript].hash
156
166
  end
157
167
 
158
168
  # Builds the object from hash