Class: Aws::IVS::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::IVS::Client
- Includes:
- ClientStubs
- Defined in:
- lib/aws-sdk-ivs/client.rb
Overview
An API client for IVS. To construct a client, you need to configure a `:region` and `:credentials`.
client = Aws::IVS::Client.new(
region: region_name,
credentials: credentials,
# ...
)
For details on configuring region and credentials see the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
See #initialize for a full list of supported configuration options.
Class Attribute Summary collapse
- .identifier ⇒ Object readonly private
API Operations collapse
-
#batch_get_channel(params = {}) ⇒ Types::BatchGetChannelResponse
Performs GetChannel on multiple ARNs simultaneously.
-
#batch_get_stream_key(params = {}) ⇒ Types::BatchGetStreamKeyResponse
Performs GetStreamKey on multiple ARNs simultaneously.
-
#create_channel(params = {}) ⇒ Types::CreateChannelResponse
Creates a new channel and an associated stream key to start streaming.
-
#create_recording_configuration(params = {}) ⇒ Types::CreateRecordingConfigurationResponse
Creates a new recording configuration, used to enable recording to Amazon S3.
-
#create_stream_key(params = {}) ⇒ Types::CreateStreamKeyResponse
Creates a stream key, used to initiate a stream, for the specified channel ARN.
-
#delete_channel(params = {}) ⇒ Struct
Deletes the specified channel and its associated stream keys.
-
#delete_playback_key_pair(params = {}) ⇒ Struct
Deletes a specified authorization key pair.
-
#delete_recording_configuration(params = {}) ⇒ Struct
Deletes the recording configuration for the specified ARN.
-
#delete_stream_key(params = {}) ⇒ Struct
Deletes the stream key for the specified ARN, so it can no longer be used to stream.
-
#get_channel(params = {}) ⇒ Types::GetChannelResponse
Gets the channel configuration for the specified channel ARN.
-
#get_playback_key_pair(params = {}) ⇒ Types::GetPlaybackKeyPairResponse
Gets a specified playback authorization key pair and returns the `arn` and `fingerprint`.
-
#get_recording_configuration(params = {}) ⇒ Types::GetRecordingConfigurationResponse
Gets the recording configuration for the specified ARN.
-
#get_stream(params = {}) ⇒ Types::GetStreamResponse
Gets information about the active (live) stream on a specified channel.
-
#get_stream_key(params = {}) ⇒ Types::GetStreamKeyResponse
Gets stream-key information for a specified ARN.
-
#get_stream_session(params = {}) ⇒ Types::GetStreamSessionResponse
Gets metadata on a specified stream.
-
#import_playback_key_pair(params = {}) ⇒ Types::ImportPlaybackKeyPairResponse
Imports the public portion of a new key pair and returns its `arn` and `fingerprint`.
-
#list_channels(params = {}) ⇒ Types::ListChannelsResponse
Gets summary information about all channels in your account, in the Amazon Web Services region where the API request is processed.
-
#list_playback_key_pairs(params = {}) ⇒ Types::ListPlaybackKeyPairsResponse
Gets summary information about playback key pairs.
-
#list_recording_configurations(params = {}) ⇒ Types::ListRecordingConfigurationsResponse
Gets summary information about all recording configurations in your account, in the Amazon Web Services region where the API request is processed.
-
#list_stream_keys(params = {}) ⇒ Types::ListStreamKeysResponse
Gets summary information about stream keys for the specified channel.
-
#list_stream_sessions(params = {}) ⇒ Types::ListStreamSessionsResponse
Gets a summary of current and previous streams for a specified channel in your account, in the AWS region where the API request is processed.
-
#list_streams(params = {}) ⇒ Types::ListStreamsResponse
Gets summary information about live streams in your account, in the Amazon Web Services region where the API request is processed.
-
#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse
Gets information about Amazon Web Services tags for the specified ARN.
-
#put_metadata(params = {}) ⇒ Struct
Inserts metadata into the active stream of the specified channel.
-
#stop_stream(params = {}) ⇒ Struct
Disconnects the incoming RTMPS stream for the specified channel.
-
#tag_resource(params = {}) ⇒ Struct
Adds or updates tags for the Amazon Web Services resource with the specified ARN.
-
#untag_resource(params = {}) ⇒ Struct
Removes tags from the resource with the specified ARN.
-
#update_channel(params = {}) ⇒ Types::UpdateChannelResponse
Updates a channel's configuration.
Class Method Summary collapse
- .errors_module ⇒ Object private
Instance Method Summary collapse
- #build_request(operation_name, params = {}) ⇒ Object private
-
#initialize(options) ⇒ Client
constructor
A new instance of Client.
- #waiter_names ⇒ Object deprecated private Deprecated.
Constructor Details
#initialize(options) ⇒ Client
Returns a new instance of Client.
348 349 350 |
# File 'lib/aws-sdk-ivs/client.rb', line 348 def initialize(*args) super end |
Class Attribute Details
.identifier ⇒ Object (readonly)
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
1649 1650 1651 |
# File 'lib/aws-sdk-ivs/client.rb', line 1649 def identifier @identifier end |
Class Method Details
.errors_module ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
1652 1653 1654 |
# File 'lib/aws-sdk-ivs/client.rb', line 1652 def errors_module Errors end |
Instance Method Details
#batch_get_channel(params = {}) ⇒ Types::BatchGetChannelResponse
Performs GetChannel on multiple ARNs simultaneously.
392 393 394 395 |
# File 'lib/aws-sdk-ivs/client.rb', line 392 def batch_get_channel(params = {}, = {}) req = build_request(:batch_get_channel, params) req.send_request() end |
#batch_get_stream_key(params = {}) ⇒ Types::BatchGetStreamKeyResponse
Performs GetStreamKey on multiple ARNs simultaneously.
430 431 432 433 |
# File 'lib/aws-sdk-ivs/client.rb', line 430 def batch_get_stream_key(params = {}, = {}) req = build_request(:batch_get_stream_key, params) req.send_request() end |
#build_request(operation_name, params = {}) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 |
# File 'lib/aws-sdk-ivs/client.rb', line 1627 def build_request(operation_name, params = {}) handlers = @handlers.for(operation_name) context = Seahorse::Client::RequestContext.new( operation_name: operation_name, operation: config.api.operation(operation_name), client: self, params: params, config: config) context[:gem_name] = 'aws-sdk-ivs' context[:gem_version] = '1.22.0' Seahorse::Client::Request.new(handlers, context) end |
#create_channel(params = {}) ⇒ Types::CreateChannelResponse
Creates a new channel and an associated stream key to start streaming.
525 526 527 528 |
# File 'lib/aws-sdk-ivs/client.rb', line 525 def create_channel(params = {}, = {}) req = build_request(:create_channel, params) req.send_request() end |
#create_recording_configuration(params = {}) ⇒ Types::CreateRecordingConfigurationResponse
Creates a new recording configuration, used to enable recording to Amazon S3.
**Known issue:** In the us-east-1 region, if you use the Amazon Web Services CLI to create a recording configuration, it returns success even if the S3 bucket is in a different region. In this case, the `state` of the recording configuration is `CREATE_FAILED` (instead of `ACTIVE`). (In other regions, the CLI correctly returns failure if the bucket is in a different region.)
*Workaround:* Ensure that your S3 bucket is in the same region as the recording configuration. If you create a recording configuration in a different region as your S3 bucket, delete that recording configuration and create a new one with an S3 bucket from the correct region.
606 607 608 609 |
# File 'lib/aws-sdk-ivs/client.rb', line 606 def create_recording_configuration(params = {}, = {}) req = build_request(:create_recording_configuration, params) req.send_request() end |
#create_stream_key(params = {}) ⇒ 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.
659 660 661 662 |
# File 'lib/aws-sdk-ivs/client.rb', line 659 def create_stream_key(params = {}, = {}) req = build_request(:create_stream_key, params) req.send_request() end |
#delete_channel(params = {}) ⇒ Struct
Deletes the specified channel and its associated stream keys.
If you try to delete a live channel, you will get an error (409 ConflictException). To delete a channel that is live, call StopStream, wait for the Amazon EventBridge “Stream End” event (to verify that the stream's state was changed from Live to Offline), then call DeleteChannel. (See [ Using EventBridge with Amazon IVS].)
[1]: docs.aws.amazon.com/ivs/latest/userguide/eventbridge.html
691 692 693 694 |
# File 'lib/aws-sdk-ivs/client.rb', line 691 def delete_channel(params = {}, = {}) req = build_request(:delete_channel, params) req.send_request() end |
#delete_playback_key_pair(params = {}) ⇒ Struct
Deletes a specified authorization key pair. This invalidates future viewer tokens generated using the key pair’s `privateKey`. For more information, see [Setting Up Private Channels] in the *Amazon IVS User Guide*.
[1]: docs.aws.amazon.com/ivs/latest/userguide/private-channels.html
720 721 722 723 |
# File 'lib/aws-sdk-ivs/client.rb', line 720 def delete_playback_key_pair(params = {}, = {}) req = build_request(:delete_playback_key_pair, params) req.send_request() end |
#delete_recording_configuration(params = {}) ⇒ Struct
Deletes the recording configuration for the specified ARN.
If you try to delete a recording configuration that is associated with a channel, you will get an error (409 ConflictException). To avoid this, for all channels that reference the recording configuration, first use UpdateChannel to set the `recordingConfigurationArn` field to an empty string, then use DeleteRecordingConfiguration.
748 749 750 751 |
# File 'lib/aws-sdk-ivs/client.rb', line 748 def delete_recording_configuration(params = {}, = {}) req = build_request(:delete_recording_configuration, params) req.send_request() end |
#delete_stream_key(params = {}) ⇒ Struct
Deletes the stream key for the specified ARN, so it can no longer be used to stream.
771 772 773 774 |
# File 'lib/aws-sdk-ivs/client.rb', line 771 def delete_stream_key(params = {}, = {}) req = build_request(:delete_stream_key, params) req.send_request() end |
#get_channel(params = {}) ⇒ Types::GetChannelResponse
Gets the channel configuration for the specified channel ARN. See also BatchGetChannel.
809 810 811 812 |
# File 'lib/aws-sdk-ivs/client.rb', line 809 def get_channel(params = {}, = {}) req = build_request(:get_channel, params) req.send_request() end |
#get_playback_key_pair(params = {}) ⇒ 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 private channels. For more information, see [Setting Up Private Channels] in the *Amazon IVS User Guide*.
[1]: docs.aws.amazon.com/ivs/latest/userguide/private-channels.html
849 850 851 852 |
# File 'lib/aws-sdk-ivs/client.rb', line 849 def get_playback_key_pair(params = {}, = {}) req = build_request(:get_playback_key_pair, params) req.send_request() end |
#get_recording_configuration(params = {}) ⇒ Types::GetRecordingConfigurationResponse
Gets the recording configuration for the specified ARN.
884 885 886 887 |
# File 'lib/aws-sdk-ivs/client.rb', line 884 def get_recording_configuration(params = {}, = {}) req = build_request(:get_recording_configuration, params) req.send_request() end |
#get_stream(params = {}) ⇒ Types::GetStreamResponse
Gets information about the active (live) stream on a specified channel.
919 920 921 922 |
# File 'lib/aws-sdk-ivs/client.rb', line 919 def get_stream(params = {}, = {}) req = build_request(:get_stream, params) req.send_request() end |
#get_stream_key(params = {}) ⇒ Types::GetStreamKeyResponse
Gets stream-key information for a specified ARN.
951 952 953 954 |
# File 'lib/aws-sdk-ivs/client.rb', line 951 def get_stream_key(params = {}, = {}) req = build_request(:get_stream_key, params) req.send_request() end |
#get_stream_session(params = {}) ⇒ Types::GetStreamSessionResponse
Gets metadata on a specified stream.
1021 1022 1023 1024 |
# File 'lib/aws-sdk-ivs/client.rb', line 1021 def get_stream_session(params = {}, = {}) req = build_request(:get_stream_session, params) req.send_request() end |
#import_playback_key_pair(params = {}) ⇒ 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 private channels. For more information, see [Setting Up Private Channels] in the *Amazon IVS User Guide*.
[1]: docs.aws.amazon.com/ivs/latest/userguide/private-channels.html
1079 1080 1081 1082 |
# File 'lib/aws-sdk-ivs/client.rb', line 1079 def import_playback_key_pair(params = {}, = {}) req = build_request(:import_playback_key_pair, params) req.send_request() end |
#list_channels(params = {}) ⇒ Types::ListChannelsResponse
Gets summary information about all channels in your account, in the Amazon Web Services region where the API request is processed. This list can be filtered to match a specified name or recording-configuration ARN. Filters are mutually exclusive and cannot be used together. If you try to use both filters, you will get an error (409 ConflictException).
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1137 1138 1139 1140 |
# File 'lib/aws-sdk-ivs/client.rb', line 1137 def list_channels(params = {}, = {}) req = build_request(:list_channels, params) req.send_request() end |
#list_playback_key_pairs(params = {}) ⇒ Types::ListPlaybackKeyPairsResponse
Gets summary information about playback key pairs. For more information, see [Setting Up Private Channels] in the *Amazon IVS User Guide*.
[1]: docs.aws.amazon.com/ivs/latest/userguide/private-channels.html
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1185 1186 1187 1188 |
# File 'lib/aws-sdk-ivs/client.rb', line 1185 def list_playback_key_pairs(params = {}, = {}) req = build_request(:list_playback_key_pairs, params) req.send_request() end |
#list_recording_configurations(params = {}) ⇒ Types::ListRecordingConfigurationsResponse
Gets summary information about all recording configurations in your account, in the Amazon Web Services region where the API request is processed.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1231 1232 1233 1234 |
# File 'lib/aws-sdk-ivs/client.rb', line 1231 def list_recording_configurations(params = {}, = {}) req = build_request(:list_recording_configurations, params) req.send_request() end |
#list_stream_keys(params = {}) ⇒ Types::ListStreamKeysResponse
Gets summary information about stream keys for the specified channel.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1276 1277 1278 1279 |
# File 'lib/aws-sdk-ivs/client.rb', line 1276 def list_stream_keys(params = {}, = {}) req = build_request(:list_stream_keys, params) req.send_request() end |
#list_stream_sessions(params = {}) ⇒ Types::ListStreamSessionsResponse
Gets a summary of current and previous streams for a specified channel in your account, in the AWS region where the API request is processed.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1322 1323 1324 1325 |
# File 'lib/aws-sdk-ivs/client.rb', line 1322 def list_stream_sessions(params = {}, = {}) req = build_request(:list_stream_sessions, params) req.send_request() end |
#list_streams(params = {}) ⇒ Types::ListStreamsResponse
Gets summary information about live streams in your account, in the Amazon Web Services region where the API request is processed.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1372 1373 1374 1375 |
# File 'lib/aws-sdk-ivs/client.rb', line 1372 def list_streams(params = {}, = {}) req = build_request(:list_streams, params) req.send_request() end |
#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse
Gets information about Amazon Web Services tags for the specified ARN.
1401 1402 1403 1404 |
# File 'lib/aws-sdk-ivs/client.rb', line 1401 def (params = {}, = {}) req = build_request(:list_tags_for_resource, params) req.send_request() end |
#put_metadata(params = {}) ⇒ Struct
Inserts metadata into the active stream of the specified channel. At most 5 requests per second per channel are allowed, each with a maximum 1 KB payload. (If 5 TPS is not sufficient for your needs, we recommend batching your data into a single PutMetadata call.) At most 155 requests per second per account are allowed. Also see [Embedding Metadata within a Video Stream] in the *Amazon IVS User Guide*.
1437 1438 1439 1440 |
# File 'lib/aws-sdk-ivs/client.rb', line 1437 def (params = {}, = {}) req = build_request(:put_metadata, params) req.send_request() end |
#stop_stream(params = {}) ⇒ Struct
Disconnects the incoming RTMPS stream for the specified channel. Can be used in conjunction with DeleteStreamKey to prevent further streaming to a channel.
<note markdown=“1”> 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.
</note>
1467 1468 1469 1470 |
# File 'lib/aws-sdk-ivs/client.rb', line 1467 def stop_stream(params = {}, = {}) req = build_request(:stop_stream, params) req.send_request() end |
#tag_resource(params = {}) ⇒ Struct
Adds or updates tags for the Amazon Web Services resource with the specified ARN.
1504 1505 1506 1507 |
# File 'lib/aws-sdk-ivs/client.rb', line 1504 def tag_resource(params = {}, = {}) req = build_request(:tag_resource, params) req.send_request() end |
#untag_resource(params = {}) ⇒ Struct
Removes tags from the resource with the specified ARN.
1538 1539 1540 1541 |
# File 'lib/aws-sdk-ivs/client.rb', line 1538 def untag_resource(params = {}, = {}) req = build_request(:untag_resource, params) req.send_request() end |
#update_channel(params = {}) ⇒ 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.
1618 1619 1620 1621 |
# File 'lib/aws-sdk-ivs/client.rb', line 1618 def update_channel(params = {}, = {}) req = build_request(:update_channel, params) req.send_request() end |
#waiter_names ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
1642 1643 1644 |
# File 'lib/aws-sdk-ivs/client.rb', line 1642 def waiter_names [] end |