Class: AWSCDK::Connect::CfnRoutingProfile::MediaConcurrencyProperty

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

Overview

Contains information about which channels are supported, and how many contacts an agent can have on a channel simultaneously.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(channel:, concurrency:, cross_channel_behavior: nil) ⇒ MediaConcurrencyProperty

Returns a new instance of MediaConcurrencyProperty.

Parameters:

  • channel (String)

    The channels that agents can handle in the Contact Control Panel (CCP).

  • concurrency (Numeric)

    The number of contacts an agent can have on a channel simultaneously.

  • cross_channel_behavior (AWSCDK::IResolvable, AWSCDK::Connect::CfnRoutingProfile::CrossChannelBehaviorProperty, nil) (defaults to: nil)

    Defines the cross-channel routing behavior for each channel that is enabled for this Routing Profile.



656
657
658
659
660
661
662
663
# File 'connect/cfn_routing_profile.rb', line 656

def initialize(channel:, concurrency:, cross_channel_behavior: nil)
  @channel = channel
  Jsii::Type.check_type(@channel, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "channel")
  @concurrency = concurrency
  Jsii::Type.check_type(@concurrency, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "concurrency")
  @cross_channel_behavior = cross_channel_behavior.is_a?(Hash) ? ::AWSCDK::Connect::CfnRoutingProfile::CrossChannelBehaviorProperty.new(**cross_channel_behavior.transform_keys(&:to_sym)) : cross_channel_behavior
  Jsii::Type.check_type(@cross_channel_behavior, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jb25uZWN0LkNmblJvdXRpbmdQcm9maWxlLkNyb3NzQ2hhbm5lbEJlaGF2aW9yUHJvcGVydHkifV19fQ==")), "crossChannelBehavior") unless @cross_channel_behavior.nil?
end

Instance Attribute Details

#channelString (readonly)

The channels that agents can handle in the Contact Control Panel (CCP).



669
670
671
# File 'connect/cfn_routing_profile.rb', line 669

def channel
  @channel
end

#concurrencyNumeric (readonly)

The number of contacts an agent can have on a channel simultaneously.

Valid Range for VOICE : Minimum value of 1. Maximum value of 1.

Valid Range for CHAT : Minimum value of 1. Maximum value of 10.

Valid Range for TASK : Minimum value of 1. Maximum value of 10.



680
681
682
# File 'connect/cfn_routing_profile.rb', line 680

def concurrency
  @concurrency
end

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

Defines the cross-channel routing behavior for each channel that is enabled for this Routing Profile.

For example, this allows you to offer an agent a different contact from another channel when they are currently working with a contact from a Voice channel.



687
688
689
# File 'connect/cfn_routing_profile.rb', line 687

def cross_channel_behavior
  @cross_channel_behavior
end

Class Method Details

.jsii_propertiesObject



689
690
691
692
693
694
695
# File 'connect/cfn_routing_profile.rb', line 689

def self.jsii_properties
  {
    :channel => "channel",
    :concurrency => "concurrency",
    :cross_channel_behavior => "crossChannelBehavior",
  }
end

Instance Method Details

#to_jsiiObject



697
698
699
700
701
702
703
704
705
# File 'connect/cfn_routing_profile.rb', line 697

def to_jsii
  result = {}
  result.merge!({
    "channel" => @channel,
    "concurrency" => @concurrency,
    "crossChannelBehavior" => @cross_channel_behavior,
  })
  result.compact
end