Class: AWSCDK::Connect::CfnQuickConnect::QuickConnectConfigProperty

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

Overview

Contains configuration settings for a quick connect.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(quick_connect_type:, phone_config: nil, queue_config: nil, user_config: nil) ⇒ QuickConnectConfigProperty

Returns a new instance of QuickConnectConfigProperty.

Parameters:



661
662
663
664
665
666
667
668
669
670
# File 'connect/cfn_quick_connect.rb', line 661

def initialize(quick_connect_type:, phone_config: nil, queue_config: nil, user_config: nil)
  @quick_connect_type = quick_connect_type
  Jsii::Type.check_type(@quick_connect_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "quickConnectType")
  @phone_config = phone_config.is_a?(Hash) ? ::AWSCDK::Connect::CfnQuickConnect::PhoneNumberQuickConnectConfigProperty.new(**phone_config.transform_keys(&:to_sym)) : phone_config
  Jsii::Type.check_type(@phone_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jb25uZWN0LkNmblF1aWNrQ29ubmVjdC5QaG9uZU51bWJlclF1aWNrQ29ubmVjdENvbmZpZ1Byb3BlcnR5In1dfX0=")), "phoneConfig") unless @phone_config.nil?
  @queue_config = queue_config.is_a?(Hash) ? ::AWSCDK::Connect::CfnQuickConnect::QueueQuickConnectConfigProperty.new(**queue_config.transform_keys(&:to_sym)) : queue_config
  Jsii::Type.check_type(@queue_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jb25uZWN0LkNmblF1aWNrQ29ubmVjdC5RdWV1ZVF1aWNrQ29ubmVjdENvbmZpZ1Byb3BlcnR5In1dfX0=")), "queueConfig") unless @queue_config.nil?
  @user_config = user_config.is_a?(Hash) ? ::AWSCDK::Connect::CfnQuickConnect::UserQuickConnectConfigProperty.new(**user_config.transform_keys(&:to_sym)) : user_config
  Jsii::Type.check_type(@user_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jb25uZWN0LkNmblF1aWNrQ29ubmVjdC5Vc2VyUXVpY2tDb25uZWN0Q29uZmlnUHJvcGVydHkifV19fQ==")), "userConfig") unless @user_config.nil?
end

Instance Attribute Details

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

The phone configuration.

This is required only if QuickConnectType is PHONE_NUMBER.



685
686
687
# File 'connect/cfn_quick_connect.rb', line 685

def phone_config
  @phone_config
end

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

The queue configuration.

This is required only if QuickConnectType is QUEUE.



692
693
694
# File 'connect/cfn_quick_connect.rb', line 692

def queue_config
  @queue_config
end

#quick_connect_typeString (readonly)

The type of quick connect.

In the Connect Customer console, when you create a quick connect, you are prompted to assign one of the following types: Agent (USER), External (PHONE_NUMBER), or Queue (QUEUE).



678
679
680
# File 'connect/cfn_quick_connect.rb', line 678

def quick_connect_type
  @quick_connect_type
end

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

The user configuration.

This is required only if QuickConnectType is USER.



699
700
701
# File 'connect/cfn_quick_connect.rb', line 699

def user_config
  @user_config
end

Class Method Details

.jsii_propertiesObject



701
702
703
704
705
706
707
708
# File 'connect/cfn_quick_connect.rb', line 701

def self.jsii_properties
  {
    :quick_connect_type => "quickConnectType",
    :phone_config => "phoneConfig",
    :queue_config => "queueConfig",
    :user_config => "userConfig",
  }
end

Instance Method Details

#to_jsiiObject



710
711
712
713
714
715
716
717
718
719
# File 'connect/cfn_quick_connect.rb', line 710

def to_jsii
  result = {}
  result.merge!({
    "quickConnectType" => @quick_connect_type,
    "phoneConfig" => @phone_config,
    "queueConfig" => @queue_config,
    "userConfig" => @user_config,
  })
  result.compact
end