You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.
Class: Aws::IVS::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::IVS::Client
- Defined in:
- (unknown)
Overview
An API client for Amazon Interactive Video Service. To construct a client, you need to configure a :region and :credentials.
ivs = Aws::IVS::Client.new(
region: region_name,
credentials: credentials,
# ...
)
See #initialize for a full list of supported configuration options.
Region
You can configure a default region in the following locations:
ENV['AWS_REGION']Aws.config[:region]
Go here for a list of supported regions.
Credentials
Default credentials are loaded automatically from the following locations:
ENV['AWS_ACCESS_KEY_ID']andENV['AWS_SECRET_ACCESS_KEY']Aws.config[:credentials]- The shared credentials ini file at
~/.aws/credentials(more information) - From an instance profile when running on EC2
You can also construct a credentials object from one of the following classes:
Alternatively, you configure credentials with :access_key_id and
:secret_access_key:
# load credentials from disk
creds = YAML.load(File.read('/path/to/secrets'))
Aws::IVS::Client.new(
access_key_id: creds['access_key_id'],
secret_access_key: creds['secret_access_key']
)
Always load your credentials from outside your application. Avoid configuring credentials statically and never commit them to source control.
Attribute Summary collapse
Instance Attribute Summary
Attributes inherited from Seahorse::Client::Base
Constructor collapse
-
#initialize(options = {}) ⇒ Aws::IVS::Client
constructor
Constructs an API client.
API Operations collapse
-
#batch_get_channel(options = {}) ⇒ Types::BatchGetChannelResponse
Performs GetChannel on multiple ARNs simultaneously.
.
-
#batch_get_stream_key(options = {}) ⇒ Types::BatchGetStreamKeyResponse
Performs GetStreamKey on multiple ARNs simultaneously.
.
-
#create_channel(options = {}) ⇒ Types::CreateChannelResponse
Creates a new channel and an associated stream key to start streaming.
.
-
#create_stream_key(options = {}) ⇒ Types::CreateStreamKeyResponse
Creates a stream key, used to initiate a stream, for the specified channel ARN.
Note that CreateChannel creates a stream key.
-
#delete_channel(options = {}) ⇒ Struct
Deletes the specified channel and its associated stream keys.
.
-
#delete_playback_key_pair(options = {}) ⇒ Struct
Deletes a specified authorization key pair.
-
#delete_stream_key(options = {}) ⇒ Struct
Deletes the stream key for the specified ARN, so it can no longer be used to stream.
.
-
#get_channel(options = {}) ⇒ Types::GetChannelResponse
Gets the channel configuration for the specified channel ARN.
-
#get_playback_key_pair(options = {}) ⇒ Types::GetPlaybackKeyPairResponse
Gets a specified playback authorization key pair and returns the
arnandfingerprint. -
#get_stream(options = {}) ⇒ Types::GetStreamResponse
Gets information about the active (live) stream on a specified channel.
.
-
#get_stream_key(options = {}) ⇒ Types::GetStreamKeyResponse
Gets stream-key information for a specified ARN.
.
-
#import_playback_key_pair(options = {}) ⇒ Types::ImportPlaybackKeyPairResponse
Imports the public portion of a new key pair and returns its
arnandfingerprint. -
#list_channels(options = {}) ⇒ Types::ListChannelsResponse
Gets summary information about all channels in your account, in the AWS region where the API request is processed.
-
#list_playback_key_pairs(options = {}) ⇒ Types::ListPlaybackKeyPairsResponse
Gets summary information about playback key pairs.
.
-
#list_stream_keys(options = {}) ⇒ Types::ListStreamKeysResponse
Gets summary information about stream keys for the specified channel.
.
-
#list_streams(options = {}) ⇒ Types::ListStreamsResponse
Gets summary information about live streams in your account, in the AWS region where the API request is processed.
.
-
#list_tags_for_resource(options = {}) ⇒ Types::ListTagsForResourceResponse
Gets information about AWS tags for the specified ARN.
.
-
#put_metadata(options = {}) ⇒ Struct
Inserts metadata into an RTMPS stream for the specified channel.
-
#stop_stream(options = {}) ⇒ Struct
Disconnects the incoming RTMPS stream for the specified channel.
-
#tag_resource(options = {}) ⇒ Struct
Adds or updates tags for the AWS resource with the specified ARN.
.
-
#untag_resource(options = {}) ⇒ Struct
Removes tags from the resource with the specified ARN.
.
-
#update_channel(options = {}) ⇒ Types::UpdateChannelResponse
Updates a channel's configuration.
Instance Method Summary collapse
-
#wait_until(waiter_name, params = {}) {|waiter| ... } ⇒ Boolean
Waiters polls an API operation until a resource enters a desired state.
-
#waiter_names ⇒ Array<Symbol>
Returns the list of supported waiters.
Methods inherited from Seahorse::Client::Base
add_plugin, api, #build_request, clear_plugins, define, new, #operation, #operation_names, plugins, remove_plugin, set_api, set_plugins
Methods included from Seahorse::Client::HandlerBuilder
#handle, #handle_request, #handle_response
Constructor Details
#initialize(options = {}) ⇒ Aws::IVS::Client
Constructs an API client.
Instance Method Details
#batch_get_channel(options = {}) ⇒ Types::BatchGetChannelResponse
Performs GetChannel on multiple ARNs simultaneously.
#batch_get_stream_key(options = {}) ⇒ Types::BatchGetStreamKeyResponse
Performs GetStreamKey on multiple ARNs simultaneously.
#create_channel(options = {}) ⇒ Types::CreateChannelResponse
Creates a new channel and an associated stream key to start streaming.
#create_stream_key(options = {}) ⇒ Types::CreateStreamKeyResponse
Creates a stream key, used to initiate a stream, for the specified channel ARN.
Note that CreateChannel creates a stream key. If you subsequently use CreateStreamKey on the same channel, it will fail because a stream key already exists and there is a limit of 1 stream key per channel. To reset the stream key on a channel, use DeleteStreamKey and then CreateStreamKey.
#delete_channel(options = {}) ⇒ Struct
Deletes the specified channel and its associated stream keys.
#delete_playback_key_pair(options = {}) ⇒ Struct
Deletes a specified authorization key pair. This invalidates future viewer tokens generated using the key pair’s privateKey.
#delete_stream_key(options = {}) ⇒ Struct
Deletes the stream key for the specified ARN, so it can no longer be used to stream.
#get_channel(options = {}) ⇒ Types::GetChannelResponse
Gets the channel configuration for the specified channel ARN. See also BatchGetChannel.
#get_playback_key_pair(options = {}) ⇒ Types::GetPlaybackKeyPairResponse
Gets a specified playback authorization key pair and returns the arn and fingerprint. The privateKey held by the caller can be used to generate viewer authorization tokens, to grant viewers access to authorized channels.
#get_stream(options = {}) ⇒ Types::GetStreamResponse
Gets information about the active (live) stream on a specified channel.
#get_stream_key(options = {}) ⇒ Types::GetStreamKeyResponse
Gets stream-key information for a specified ARN.
#import_playback_key_pair(options = {}) ⇒ Types::ImportPlaybackKeyPairResponse
Imports the public portion of a new key pair and returns its arn and fingerprint. The privateKey can then be used to generate viewer authorization tokens, to grant viewers access to authorized channels.
#list_channels(options = {}) ⇒ Types::ListChannelsResponse
Gets summary information about all channels in your account, in the AWS region where the API request is processed. This list can be filtered to match a specified string.
#list_playback_key_pairs(options = {}) ⇒ Types::ListPlaybackKeyPairsResponse
Gets summary information about playback key pairs.
#list_stream_keys(options = {}) ⇒ Types::ListStreamKeysResponse
Gets summary information about stream keys for the specified channel.
#list_streams(options = {}) ⇒ Types::ListStreamsResponse
Gets summary information about live streams in your account, in the AWS region where the API request is processed.
#list_tags_for_resource(options = {}) ⇒ Types::ListTagsForResourceResponse
Gets information about AWS tags for the specified ARN.
#put_metadata(options = {}) ⇒ Struct
Inserts metadata into an RTMPS stream for the specified channel. A maximum of 5 requests per second per channel is allowed, each with a maximum 1KB payload.
#stop_stream(options = {}) ⇒ Struct
Disconnects the incoming RTMPS stream for the specified channel. Can be used in conjunction with DeleteStreamKey to prevent further streaming to a channel.
Many streaming client-software libraries automatically reconnect a dropped RTMPS session, so to stop the stream permanently, you may want to first revoke the streamKey attached to the channel.
#tag_resource(options = {}) ⇒ Struct
Adds or updates tags for the AWS resource with the specified ARN.
#untag_resource(options = {}) ⇒ Struct
Removes tags from the resource with the specified ARN.
#update_channel(options = {}) ⇒ Types::UpdateChannelResponse
Updates a channel's configuration. This does not affect an ongoing stream of this channel. You must stop and restart the stream for the changes to take effect.
#wait_until(waiter_name, params = {}) {|waiter| ... } ⇒ Boolean
Waiters polls an API operation until a resource enters a desired state.
Basic Usage
Waiters will poll until they are succesful, they fail by entering a terminal state, or until a maximum number of attempts are made.
# polls in a loop, sleeping between attempts client.waiter_until(waiter_name, params)
Configuration
You can configure the maximum number of polling attempts, and the delay (in seconds) between each polling attempt. You configure waiters by passing a block to #wait_until:
# poll for ~25 seconds
client.wait_until(...) do |w|
w.max_attempts = 5
w.delay = 5
end
Callbacks
You can be notified before each polling attempt and before each
delay. If you throw :success or :failure from these callbacks,
it will terminate the waiter.
started_at = Time.now
client.wait_until(...) do |w|
# disable max attempts
w.max_attempts = nil
# poll for 1 hour, instead of a number of attempts
w.before_wait do |attempts, response|
throw :failure if Time.now - started_at > 3600
end
end
Handling Errors
When a waiter is successful, it returns true. When a waiter
fails, it raises an error. All errors raised extend from
Waiters::Errors::WaiterFailed.
begin
client.wait_until(...)
rescue Aws::Waiters::Errors::WaiterFailed
# resource did not enter the desired state in time
end
#waiter_names ⇒ Array<Symbol>
Returns the list of supported waiters. The following table lists the supported waiters and the client method they call:
| Waiter Name | Client Method | Default Delay: | Default Max Attempts: |
|---|