Class: Twilio::REST::Video::V1::CompositionSettingsContext

Inherits:
InstanceContext
  • Object
show all
Defined in:
lib/twilio-ruby/rest/video/v1/composition_settings.rb

Instance Method Summary collapse

Constructor Details

#initialize(version) ⇒ CompositionSettingsContext

Initialize the CompositionSettingsContext

Parameters:

  • version (Version)

    Version that contains the resource



49
50
51
52
53
54
55
56
57
58
# File 'lib/twilio-ruby/rest/video/v1/composition_settings.rb', line 49

def initialize(version)
    super(version)
    

    # Path Solution
    @solution = {  }
    @uri = "/CompositionSettings/Default"

    
end

Instance Method Details

#create(friendly_name: nil, aws_credentials_sid: :unset, encryption_key_sid: :unset, aws_s3_url: :unset, aws_storage_enabled: :unset, encryption_enabled: :unset) ⇒ CompositionSettingsInstance

Create the CompositionSettingsInstance

Parameters:

  • friendly_name (String) (defaults to: nil)

    A descriptive string that you create to describe the resource and show to the user in the console

  • aws_credentials_sid (String) (defaults to: :unset)

    The SID of the stored Credential resource.

  • encryption_key_sid (String) (defaults to: :unset)

    The SID of the Public Key resource to use for encryption.

  • aws_s3_url (String) (defaults to: :unset)

    The URL of the AWS S3 bucket where the compositions should be stored. We only support DNS-compliant URLs like https://documentation-example-twilio-bucket/compositions, where compositions is the path in which you want the compositions to be stored. This URL accepts only URI-valid characters, as described in the [RFC 3986](tools.ietf.org/html/rfc3986#section-2).

  • aws_storage_enabled (Boolean) (defaults to: :unset)

    Whether all compositions should be written to the aws_s3_url. When false, all compositions are stored in our cloud.

  • encryption_enabled (Boolean) (defaults to: :unset)

    Whether all compositions should be stored in an encrypted form. The default is false.

Returns:



68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
# File 'lib/twilio-ruby/rest/video/v1/composition_settings.rb', line 68

def create(
    friendly_name: nil, 
    aws_credentials_sid: :unset, 
    encryption_key_sid: :unset, 
    aws_s3_url: :unset, 
    aws_storage_enabled: :unset, 
    encryption_enabled: :unset
)

    data = Twilio::Values.of({
        'FriendlyName' => friendly_name,
        'AwsCredentialsSid' => aws_credentials_sid,
        'EncryptionKeySid' => encryption_key_sid,
        'AwsS3Url' => aws_s3_url,
        'AwsStorageEnabled' => aws_storage_enabled,
        'EncryptionEnabled' => encryption_enabled,
    })

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    
    
    
    
    
    payload = @version.create('POST', @uri, data: data, headers: headers)
    CompositionSettingsInstance.new(
        @version,
        payload,
    )
end

#create_with_metadata(friendly_name: nil, aws_credentials_sid: :unset, encryption_key_sid: :unset, aws_s3_url: :unset, aws_storage_enabled: :unset, encryption_enabled: :unset) ⇒ CompositionSettingsInstance

Create the CompositionSettingsInstanceMetadata

Parameters:

  • friendly_name (String) (defaults to: nil)

    A descriptive string that you create to describe the resource and show to the user in the console

  • aws_credentials_sid (String) (defaults to: :unset)

    The SID of the stored Credential resource.

  • encryption_key_sid (String) (defaults to: :unset)

    The SID of the Public Key resource to use for encryption.

  • aws_s3_url (String) (defaults to: :unset)

    The URL of the AWS S3 bucket where the compositions should be stored. We only support DNS-compliant URLs like https://documentation-example-twilio-bucket/compositions, where compositions is the path in which you want the compositions to be stored. This URL accepts only URI-valid characters, as described in the [RFC 3986](tools.ietf.org/html/rfc3986#section-2).

  • aws_storage_enabled (Boolean) (defaults to: :unset)

    Whether all compositions should be written to the aws_s3_url. When false, all compositions are stored in our cloud.

  • encryption_enabled (Boolean) (defaults to: :unset)

    Whether all compositions should be stored in an encrypted form. The default is false.

Returns:



108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
# File 'lib/twilio-ruby/rest/video/v1/composition_settings.rb', line 108

def (
  friendly_name: nil, 
  aws_credentials_sid: :unset, 
  encryption_key_sid: :unset, 
  aws_s3_url: :unset, 
  aws_storage_enabled: :unset, 
  encryption_enabled: :unset
)

    data = Twilio::Values.of({
        'FriendlyName' => friendly_name,
        'AwsCredentialsSid' => aws_credentials_sid,
        'EncryptionKeySid' => encryption_key_sid,
        'AwsS3Url' => aws_s3_url,
        'AwsStorageEnabled' => aws_storage_enabled,
        'EncryptionEnabled' => encryption_enabled,
    })

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    
    
    
    
    
    response = @version.('POST', @uri, data: data, headers: headers)
    composition_settings_instance = CompositionSettingsInstance.new(
        @version,
        response.body,
    )
    CompositionSettingsInstanceMetadata.new(
        @version,
        composition_settings_instance,
        response.headers,
        response.status_code
    )
end

#fetchCompositionSettingsInstance

Fetch the CompositionSettingsInstance

Returns:



148
149
150
151
152
153
154
155
156
157
158
159
160
161
# File 'lib/twilio-ruby/rest/video/v1/composition_settings.rb', line 148

def fetch

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    
    
    
    
    
    payload = @version.fetch('GET', @uri, headers: headers)
    CompositionSettingsInstance.new(
        @version,
        payload,
    )
end

#fetch_with_metadataCompositionSettingsInstance

Fetch the CompositionSettingsInstanceMetadata

Returns:



166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
# File 'lib/twilio-ruby/rest/video/v1/composition_settings.rb', line 166

def 

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    
    
    
    
    
    response = @version.('GET', @uri, headers: headers)
    composition_settings_instance = CompositionSettingsInstance.new(
        @version,
        response.body,
    )
    CompositionSettingsInstanceMetadata.new(
        @version,
        composition_settings_instance,
        response.headers,
        response.status_code
    )
end

#inspectObject

Provide a detailed, user friendly representation



197
198
199
200
# File 'lib/twilio-ruby/rest/video/v1/composition_settings.rb', line 197

def inspect
    context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
    "#<Twilio.Video.V1.CompositionSettingsContext #{context}>"
end

#to_sObject

Provide a user friendly representation



190
191
192
193
# File 'lib/twilio-ruby/rest/video/v1/composition_settings.rb', line 190

def to_s
    context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
    "#<Twilio.Video.V1.CompositionSettingsContext #{context}>"
end