Class: AWSCDK::IVS::CfnRecordingConfigurationProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
ivs/cfn_recording_configuration_props.rb

Overview

Properties for defining a CfnRecordingConfiguration.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(destination_configuration:, name: nil, recording_reconnect_window_seconds: nil, rendition_configuration: nil, tags: nil, thumbnail_configuration: nil) ⇒ CfnRecordingConfigurationProps

Returns a new instance of CfnRecordingConfigurationProps.

Parameters:



15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'ivs/cfn_recording_configuration_props.rb', line 15

def initialize(destination_configuration:, name: nil, recording_reconnect_window_seconds: nil, rendition_configuration: nil, tags: nil, thumbnail_configuration: nil)
  @destination_configuration = destination_configuration.is_a?(Hash) ? ::AWSCDK::IVS::CfnRecordingConfiguration::DestinationConfigurationProperty.new(**destination_configuration.transform_keys(&:to_sym)) : destination_configuration
  Jsii::Type.check_type(@destination_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19pdnMuQ2ZuUmVjb3JkaW5nQ29uZmlndXJhdGlvbi5EZXN0aW5hdGlvbkNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "destinationConfiguration")
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") unless @name.nil?
  @recording_reconnect_window_seconds = recording_reconnect_window_seconds
  Jsii::Type.check_type(@recording_reconnect_window_seconds, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "recordingReconnectWindowSeconds") unless @recording_reconnect_window_seconds.nil?
  @rendition_configuration = rendition_configuration.is_a?(Hash) ? ::AWSCDK::IVS::CfnRecordingConfiguration::RenditionConfigurationProperty.new(**rendition_configuration.transform_keys(&:to_sym)) : rendition_configuration
  Jsii::Type.check_type(@rendition_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19pdnMuQ2ZuUmVjb3JkaW5nQ29uZmlndXJhdGlvbi5SZW5kaXRpb25Db25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "renditionConfiguration") unless @rendition_configuration.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?
  @thumbnail_configuration = thumbnail_configuration.is_a?(Hash) ? ::AWSCDK::IVS::CfnRecordingConfiguration::ThumbnailConfigurationProperty.new(**thumbnail_configuration.transform_keys(&:to_sym)) : thumbnail_configuration
  Jsii::Type.check_type(@thumbnail_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19pdnMuQ2ZuUmVjb3JkaW5nQ29uZmlndXJhdGlvbi5UaHVtYm5haWxDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "thumbnailConfiguration") unless @thumbnail_configuration.nil?
end

Instance Attribute Details

#destination_configurationAWSCDK::IResolvable, AWSCDK::IVS::CfnRecordingConfiguration::DestinationConfigurationProperty (readonly)

A destination configuration describes an S3 bucket where recorded video will be stored.

See the DestinationConfiguration property type for more information.



36
37
38
# File 'ivs/cfn_recording_configuration_props.rb', line 36

def destination_configuration
  @destination_configuration
end

#nameString? (readonly)

Recording-configuration name.

The value does not need to be unique.



43
44
45
# File 'ivs/cfn_recording_configuration_props.rb', line 43

def name
  @name
end

#recording_reconnect_window_secondsNumeric? (readonly)

Note:

Default: - 0

If a broadcast disconnects and then reconnects within the specified interval, the multiple streams will be considered a single broadcast and merged together.

Default : 0



51
52
53
# File 'ivs/cfn_recording_configuration_props.rb', line 51

def recording_reconnect_window_seconds
  @recording_reconnect_window_seconds
end

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

A rendition configuration describes which renditions should be recorded for a stream.

See the RenditionConfiguration property type for more information.



58
59
60
# File 'ivs/cfn_recording_configuration_props.rb', line 58

def rendition_configuration
  @rendition_configuration
end

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

An array of key-value pairs to apply to this resource.

For more information, see Tag .



65
66
67
# File 'ivs/cfn_recording_configuration_props.rb', line 65

def tags
  @tags
end

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

A thumbnail configuration enables/disables the recording of thumbnails for a live session and controls the interval at which thumbnails are generated for the live session.

See the ThumbnailConfiguration property type for more information.



72
73
74
# File 'ivs/cfn_recording_configuration_props.rb', line 72

def thumbnail_configuration
  @thumbnail_configuration
end

Class Method Details

.jsii_propertiesObject



74
75
76
77
78
79
80
81
82
83
# File 'ivs/cfn_recording_configuration_props.rb', line 74

def self.jsii_properties
  {
    :destination_configuration => "destinationConfiguration",
    :name => "name",
    :recording_reconnect_window_seconds => "recordingReconnectWindowSeconds",
    :rendition_configuration => "renditionConfiguration",
    :tags => "tags",
    :thumbnail_configuration => "thumbnailConfiguration",
  }
end

Instance Method Details

#to_jsiiObject



85
86
87
88
89
90
91
92
93
94
95
96
# File 'ivs/cfn_recording_configuration_props.rb', line 85

def to_jsii
  result = {}
  result.merge!({
    "destinationConfiguration" => @destination_configuration,
    "name" => @name,
    "recordingReconnectWindowSeconds" => @recording_reconnect_window_seconds,
    "renditionConfiguration" => @rendition_configuration,
    "tags" => @tags,
    "thumbnailConfiguration" => @thumbnail_configuration,
  })
  result.compact
end