Class: AWSCDK::Connect::CfnQueueProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
connect/cfn_queue_props.rb

Overview

Properties for defining a CfnQueue.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(hours_of_operation_arn:, instance_arn:, name:, additional_email_addresses: nil, description: nil, max_contacts: nil, outbound_caller_config: nil, outbound_email_config: nil, quick_connect_arns: nil, status: nil, tags: nil) ⇒ CfnQueueProps

Returns a new instance of CfnQueueProps.

Parameters:

  • hours_of_operation_arn (String)

    The Amazon Resource Name (ARN) of the hours of operation.

  • instance_arn (String, AWSCDK::Interfaces::AWSConnect::IInstanceRef)

    The identifier of the Connect Customer instance.

  • name (String)

    The name of the queue.

  • additional_email_addresses (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::Connect::CfnQueue::EmailAddressProperty>, nil) (defaults to: nil)

    The email addresses that agents can use when replying to or initiating email contacts.

  • description (String, nil) (defaults to: nil)

    The description of the queue.

  • max_contacts (Numeric, nil) (defaults to: nil)

    The maximum number of contacts that can be in the queue before it is considered full.

  • outbound_caller_config (AWSCDK::IResolvable, AWSCDK::Connect::CfnQueue::OutboundCallerConfigProperty, nil) (defaults to: nil)

    The outbound caller ID name, number, and outbound whisper flow.

  • outbound_email_config (AWSCDK::IResolvable, AWSCDK::Connect::CfnQueue::OutboundEmailConfigProperty, nil) (defaults to: nil)

    The outbound email address ID for a specified queue.

  • quick_connect_arns (Array<String>, nil) (defaults to: nil)

    The Amazon Resource Names (ARN) of the of the quick connects available to agents who are working the queue.

  • status (String, nil) (defaults to: nil)

    The status of the queue.

  • tags (Array<AWSCDK::CfnTag>, nil) (defaults to: nil)

    The tags used to organize, track, or control access for this resource.



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'connect/cfn_queue_props.rb', line 20

def initialize(hours_of_operation_arn:, instance_arn:, name:, additional_email_addresses: nil, description: nil, max_contacts: nil, outbound_caller_config: nil, outbound_email_config: nil, quick_connect_arns: nil, status: nil, tags: nil)
  @hours_of_operation_arn = hours_of_operation_arn
  Jsii::Type.check_type(@hours_of_operation_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "hoursOfOperationArn")
  @instance_arn = instance_arn
  Jsii::Type.check_type(@instance_arn, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19jb25uZWN0LklJbnN0YW5jZVJlZiJ9XX19")), "instanceArn")
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name")
  @additional_email_addresses = additional_email_addresses
  Jsii::Type.check_type(@additional_email_addresses, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY29ubmVjdC5DZm5RdWV1ZS5FbWFpbEFkZHJlc3NQcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "additionalEmailAddresses") unless @additional_email_addresses.nil?
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil?
  @max_contacts = max_contacts
  Jsii::Type.check_type(@max_contacts, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "maxContacts") unless @max_contacts.nil?
  @outbound_caller_config = outbound_caller_config.is_a?(Hash) ? ::AWSCDK::Connect::CfnQueue::OutboundCallerConfigProperty.new(**outbound_caller_config.transform_keys(&:to_sym)) : outbound_caller_config
  Jsii::Type.check_type(@outbound_caller_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jb25uZWN0LkNmblF1ZXVlLk91dGJvdW5kQ2FsbGVyQ29uZmlnUHJvcGVydHkifV19fQ==")), "outboundCallerConfig") unless @outbound_caller_config.nil?
  @outbound_email_config = outbound_email_config.is_a?(Hash) ? ::AWSCDK::Connect::CfnQueue::OutboundEmailConfigProperty.new(**outbound_email_config.transform_keys(&:to_sym)) : outbound_email_config
  Jsii::Type.check_type(@outbound_email_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jb25uZWN0LkNmblF1ZXVlLk91dGJvdW5kRW1haWxDb25maWdQcm9wZXJ0eSJ9XX19")), "outboundEmailConfig") unless @outbound_email_config.nil?
  @quick_connect_arns = quick_connect_arns
  Jsii::Type.check_type(@quick_connect_arns, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "quickConnectArns") unless @quick_connect_arns.nil?
  @status = status
  Jsii::Type.check_type(@status, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "status") unless @status.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
end

Instance Attribute Details

#additional_email_addressesAWSCDK::IResolvable, ... (readonly)

The email addresses that agents can use when replying to or initiating email contacts.



64
65
66
# File 'connect/cfn_queue_props.rb', line 64

def additional_email_addresses
  @additional_email_addresses
end

#descriptionString? (readonly)

The description of the queue.



69
70
71
# File 'connect/cfn_queue_props.rb', line 69

def description
  @description
end

#hours_of_operation_arnString (readonly)

The Amazon Resource Name (ARN) of the hours of operation.



49
50
51
# File 'connect/cfn_queue_props.rb', line 49

def hours_of_operation_arn
  @hours_of_operation_arn
end

#instance_arnString, AWSCDK::Interfaces::AWSConnect::IInstanceRef (readonly)

The identifier of the Connect Customer instance.



54
55
56
# File 'connect/cfn_queue_props.rb', line 54

def instance_arn
  @instance_arn
end

#max_contactsNumeric? (readonly)

The maximum number of contacts that can be in the queue before it is considered full.



74
75
76
# File 'connect/cfn_queue_props.rb', line 74

def max_contacts
  @max_contacts
end

#nameString (readonly)

The name of the queue.



59
60
61
# File 'connect/cfn_queue_props.rb', line 59

def name
  @name
end

#outbound_caller_configAWSCDK::IResolvable, ... (readonly)

The outbound caller ID name, number, and outbound whisper flow.



79
80
81
# File 'connect/cfn_queue_props.rb', line 79

def outbound_caller_config
  @outbound_caller_config
end

#outbound_email_configAWSCDK::IResolvable, ... (readonly)

The outbound email address ID for a specified queue.



84
85
86
# File 'connect/cfn_queue_props.rb', line 84

def outbound_email_config
  @outbound_email_config
end

#quick_connect_arnsArray<String>? (readonly)

The Amazon Resource Names (ARN) of the of the quick connects available to agents who are working the queue.



89
90
91
# File 'connect/cfn_queue_props.rb', line 89

def quick_connect_arns
  @quick_connect_arns
end

#statusString? (readonly)

The status of the queue.



94
95
96
# File 'connect/cfn_queue_props.rb', line 94

def status
  @status
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

The tags used to organize, track, or control access for this resource.

For example, { "Tags": "key2":"value2" }.



101
102
103
# File 'connect/cfn_queue_props.rb', line 101

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
# File 'connect/cfn_queue_props.rb', line 103

def self.jsii_properties
  {
    :hours_of_operation_arn => "hoursOfOperationArn",
    :instance_arn => "instanceArn",
    :name => "name",
    :additional_email_addresses => "additionalEmailAddresses",
    :description => "description",
    :max_contacts => "maxContacts",
    :outbound_caller_config => "outboundCallerConfig",
    :outbound_email_config => "outboundEmailConfig",
    :quick_connect_arns => "quickConnectArns",
    :status => "status",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
# File 'connect/cfn_queue_props.rb', line 119

def to_jsii
  result = {}
  result.merge!({
    "hoursOfOperationArn" => @hours_of_operation_arn,
    "instanceArn" => @instance_arn,
    "name" => @name,
    "additionalEmailAddresses" => @additional_email_addresses,
    "description" => @description,
    "maxContacts" => @max_contacts,
    "outboundCallerConfig" => @outbound_caller_config,
    "outboundEmailConfig" => @outbound_email_config,
    "quickConnectArns" => @quick_connect_arns,
    "status" => @status,
    "tags" => @tags,
  })
  result.compact
end