Class: AWSCDK::Connect::CfnRoutingProfileProps

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

Overview

Properties for defining a CfnRoutingProfile.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(default_outbound_queue_arn:, description:, instance_arn:, media_concurrencies:, name:, agent_availability_timer: nil, manual_assignment_queue_configs: nil, queue_configs: nil, tags: nil) ⇒ CfnRoutingProfileProps

Returns a new instance of CfnRoutingProfileProps.

Parameters:



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'connect/cfn_routing_profile_props.rb', line 18

def initialize(default_outbound_queue_arn:, description:, instance_arn:, media_concurrencies:, name:, agent_availability_timer: nil, manual_assignment_queue_configs: nil, queue_configs: nil, tags: nil)
  @default_outbound_queue_arn = default_outbound_queue_arn
  Jsii::Type.check_type(@default_outbound_queue_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "defaultOutboundQueueArn")
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description")
  @instance_arn = instance_arn
  Jsii::Type.check_type(@instance_arn, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19jb25uZWN0LklJbnN0YW5jZVJlZiJ9XX19")), "instanceArn")
  @media_concurrencies = media_concurrencies
  Jsii::Type.check_type(@media_concurrencies, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY29ubmVjdC5DZm5Sb3V0aW5nUHJvZmlsZS5NZWRpYUNvbmN1cnJlbmN5UHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "mediaConcurrencies")
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name")
  @agent_availability_timer = agent_availability_timer
  Jsii::Type.check_type(@agent_availability_timer, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "agentAvailabilityTimer") unless @agent_availability_timer.nil?
  @manual_assignment_queue_configs = manual_assignment_queue_configs
  Jsii::Type.check_type(@manual_assignment_queue_configs, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY29ubmVjdC5DZm5Sb3V0aW5nUHJvZmlsZS5Sb3V0aW5nUHJvZmlsZU1hbnVhbEFzc2lnbm1lbnRRdWV1ZUNvbmZpZ1Byb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "manualAssignmentQueueConfigs") unless @manual_assignment_queue_configs.nil?
  @queue_configs = queue_configs
  Jsii::Type.check_type(@queue_configs, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY29ubmVjdC5DZm5Sb3V0aW5nUHJvZmlsZS5Sb3V0aW5nUHJvZmlsZVF1ZXVlQ29uZmlnUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "queueConfigs") unless @queue_configs.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

#agent_availability_timerString? (readonly)

Whether agents with this routing profile will have their routing order calculated based on time since their last inbound contact or longest idle time .



68
69
70
# File 'connect/cfn_routing_profile_props.rb', line 68

def agent_availability_timer
  @agent_availability_timer
end

#default_outbound_queue_arnString (readonly)

The Amazon Resource Name (ARN) of the default outbound queue for the routing profile.



43
44
45
# File 'connect/cfn_routing_profile_props.rb', line 43

def default_outbound_queue_arn
  @default_outbound_queue_arn
end

#descriptionString (readonly)

The description of the routing profile.



48
49
50
# File 'connect/cfn_routing_profile_props.rb', line 48

def description
  @description
end

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

The identifier of the Connect Customer instance.



53
54
55
# File 'connect/cfn_routing_profile_props.rb', line 53

def instance_arn
  @instance_arn
end

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

Contains information about the queue and channel for manual assignment behaviour can be enabled.



73
74
75
# File 'connect/cfn_routing_profile_props.rb', line 73

def manual_assignment_queue_configs
  @manual_assignment_queue_configs
end

#media_concurrenciesAWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::Connect::CfnRoutingProfile::MediaConcurrencyProperty> (readonly)

The channels agents can handle in the Contact Control Panel (CCP) for this routing profile.



58
59
60
# File 'connect/cfn_routing_profile_props.rb', line 58

def media_concurrencies
  @media_concurrencies
end

#nameString (readonly)

The name of the routing profile.



63
64
65
# File 'connect/cfn_routing_profile_props.rb', line 63

def name
  @name
end

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

The inbound queues associated with the routing profile.

If no queue is added, the agent can make only outbound calls.



80
81
82
# File 'connect/cfn_routing_profile_props.rb', line 80

def queue_configs
  @queue_configs
end

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

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

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



87
88
89
# File 'connect/cfn_routing_profile_props.rb', line 87

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



89
90
91
92
93
94
95
96
97
98
99
100
101
# File 'connect/cfn_routing_profile_props.rb', line 89

def self.jsii_properties
  {
    :default_outbound_queue_arn => "defaultOutboundQueueArn",
    :description => "description",
    :instance_arn => "instanceArn",
    :media_concurrencies => "mediaConcurrencies",
    :name => "name",
    :agent_availability_timer => "agentAvailabilityTimer",
    :manual_assignment_queue_configs => "manualAssignmentQueueConfigs",
    :queue_configs => "queueConfigs",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



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

def to_jsii
  result = {}
  result.merge!({
    "defaultOutboundQueueArn" => @default_outbound_queue_arn,
    "description" => @description,
    "instanceArn" => @instance_arn,
    "mediaConcurrencies" => @media_concurrencies,
    "name" => @name,
    "agentAvailabilityTimer" => @agent_availability_timer,
    "manualAssignmentQueueConfigs" => @manual_assignment_queue_configs,
    "queueConfigs" => @queue_configs,
    "tags" => @tags,
  })
  result.compact
end