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.
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
arn
andfingerprint
. -
#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
andfingerprint
. -
#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: |
---|