Class: AWSCDK::Pinpoint::CfnApplicationSettingsProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
pinpoint/cfn_application_settings_props.rb

Overview

Properties for defining a CfnApplicationSettings.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(application_id:, campaign_hook: nil, cloud_watch_metrics_enabled: nil, limits: nil, quiet_time: nil) ⇒ CfnApplicationSettingsProps

Returns a new instance of CfnApplicationSettingsProps.

Parameters:



14
15
16
17
18
19
20
21
22
23
24
25
# File 'pinpoint/cfn_application_settings_props.rb', line 14

def initialize(application_id:, campaign_hook: nil, cloud_watch_metrics_enabled: nil, limits: nil, quiet_time: nil)
  @application_id = application_id
  Jsii::Type.check_type(@application_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "applicationId")
  @campaign_hook = campaign_hook.is_a?(Hash) ? ::AWSCDK::Pinpoint::CfnApplicationSettings::CampaignHookProperty.new(**campaign_hook.transform_keys(&:to_sym)) : campaign_hook
  Jsii::Type.check_type(@campaign_hook, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19waW5wb2ludC5DZm5BcHBsaWNhdGlvblNldHRpbmdzLkNhbXBhaWduSG9va1Byb3BlcnR5In1dfX0=")), "campaignHook") unless @campaign_hook.nil?
  @cloud_watch_metrics_enabled = cloud_watch_metrics_enabled
  Jsii::Type.check_type(@cloud_watch_metrics_enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "cloudWatchMetricsEnabled") unless @cloud_watch_metrics_enabled.nil?
  @limits = limits.is_a?(Hash) ? ::AWSCDK::Pinpoint::CfnApplicationSettings::LimitsProperty.new(**limits.transform_keys(&:to_sym)) : limits
  Jsii::Type.check_type(@limits, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19waW5wb2ludC5DZm5BcHBsaWNhdGlvblNldHRpbmdzLkxpbWl0c1Byb3BlcnR5In1dfX0=")), "limits") unless @limits.nil?
  @quiet_time = quiet_time.is_a?(Hash) ? ::AWSCDK::Pinpoint::CfnApplicationSettings::QuietTimeProperty.new(**quiet_time.transform_keys(&:to_sym)) : quiet_time
  Jsii::Type.check_type(@quiet_time, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19waW5wb2ludC5DZm5BcHBsaWNhdGlvblNldHRpbmdzLlF1aWV0VGltZVByb3BlcnR5In1dfX0=")), "quietTime") unless @quiet_time.nil?
end

Instance Attribute Details

#application_idString (readonly)

The unique identifier for the Amazon Pinpoint application.



31
32
33
# File 'pinpoint/cfn_application_settings_props.rb', line 31

def application_id
  @application_id
end

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

The settings for the Lambda function to use by default as a code hook for campaigns in the application.

To override these settings for a specific campaign, use the Campaign resource to define custom Lambda function settings for the campaign.



38
39
40
# File 'pinpoint/cfn_application_settings_props.rb', line 38

def campaign_hook
  @campaign_hook
end

#cloud_watch_metrics_enabledBoolean, ... (readonly)



41
42
43
# File 'pinpoint/cfn_application_settings_props.rb', line 41

def cloud_watch_metrics_enabled
  @cloud_watch_metrics_enabled
end

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

The default sending limits for campaigns in the application.

To override these limits for a specific campaign, use the Campaign resource to define custom limits for the campaign.



48
49
50
# File 'pinpoint/cfn_application_settings_props.rb', line 48

def limits
  @limits
end

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

The default quiet time for campaigns in the application.

Quiet time is a specific time range when campaigns don't send messages to endpoints, if all the following conditions are met:

  • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.
  • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the application (or a campaign that has custom quiet time settings).
  • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the application (or a campaign that has custom quiet time settings).

If any of the preceding conditions isn't met, the endpoint will receive messages from a campaign, even if quiet time is enabled.

To override the default quiet time settings for a specific campaign, use the Campaign resource to define a custom quiet time for the campaign.



63
64
65
# File 'pinpoint/cfn_application_settings_props.rb', line 63

def quiet_time
  @quiet_time
end

Class Method Details

.jsii_propertiesObject



65
66
67
68
69
70
71
72
73
# File 'pinpoint/cfn_application_settings_props.rb', line 65

def self.jsii_properties
  {
    :application_id => "applicationId",
    :campaign_hook => "campaignHook",
    :cloud_watch_metrics_enabled => "cloudWatchMetricsEnabled",
    :limits => "limits",
    :quiet_time => "quietTime",
  }
end

Instance Method Details

#to_jsiiObject



75
76
77
78
79
80
81
82
83
84
85
# File 'pinpoint/cfn_application_settings_props.rb', line 75

def to_jsii
  result = {}
  result.merge!({
    "applicationId" => @application_id,
    "campaignHook" => @campaign_hook,
    "cloudWatchMetricsEnabled" => @cloud_watch_metrics_enabled,
    "limits" => @limits,
    "quietTime" => @quiet_time,
  })
  result.compact
end