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.
-
#batch_start_viewer_session_revocation(params = {}) ⇒ Types::BatchStartViewerSessionRevocationResponse
Performs StartViewerSessionRevocation on multiple channel ARN and viewer ID pairs 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.
-
#start_viewer_session_revocation(params = {}) ⇒ Struct
Starts the process of revoking the viewer session associated with a specified channel ARN and viewer ID.
-
#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.
385 386 387 |
# File 'lib/aws-sdk-ivs/client.rb', line 385 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.
1910 1911 1912 |
# File 'lib/aws-sdk-ivs/client.rb', line 1910 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.
1913 1914 1915 |
# File 'lib/aws-sdk-ivs/client.rb', line 1913 def errors_module Errors end |
Instance Method Details
#batch_get_channel(params = {}) ⇒ Types::BatchGetChannelResponse
Performs GetChannel on multiple ARNs simultaneously.
431 432 433 434 |
# File 'lib/aws-sdk-ivs/client.rb', line 431 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.
469 470 471 472 |
# File 'lib/aws-sdk-ivs/client.rb', line 469 def batch_get_stream_key(params = {}, = {}) req = build_request(:batch_get_stream_key, params) req.send_request() end |
#batch_start_viewer_session_revocation(params = {}) ⇒ Types::BatchStartViewerSessionRevocationResponse
Performs StartViewerSessionRevocation on multiple channel ARN and viewer ID pairs simultaneously.
508 509 510 511 |
# File 'lib/aws-sdk-ivs/client.rb', line 508 def batch_start_viewer_session_revocation(params = {}, = {}) req = build_request(:batch_start_viewer_session_revocation, 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.
1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 |
# File 'lib/aws-sdk-ivs/client.rb', line 1888 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.38.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.
650 651 652 653 |
# File 'lib/aws-sdk-ivs/client.rb', line 650 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.
754 755 756 757 |
# File 'lib/aws-sdk-ivs/client.rb', line 754 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.
807 808 809 810 |
# File 'lib/aws-sdk-ivs/client.rb', line 807 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 is no longer Live), then call DeleteChannel. (See [ Using EventBridge with Amazon IVS].)
[1]: docs.aws.amazon.com/ivs/latest/userguide/eventbridge.html
839 840 841 842 |
# File 'lib/aws-sdk-ivs/client.rb', line 839 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
868 869 870 871 |
# File 'lib/aws-sdk-ivs/client.rb', line 868 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.
896 897 898 899 |
# File 'lib/aws-sdk-ivs/client.rb', line 896 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.
919 920 921 922 |
# File 'lib/aws-sdk-ivs/client.rb', line 919 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.
959 960 961 962 |
# File 'lib/aws-sdk-ivs/client.rb', line 959 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
999 1000 1001 1002 |
# File 'lib/aws-sdk-ivs/client.rb', line 999 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.
1041 1042 1043 1044 |
# File 'lib/aws-sdk-ivs/client.rb', line 1041 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.
1076 1077 1078 1079 |
# File 'lib/aws-sdk-ivs/client.rb', line 1076 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.
1108 1109 1110 1111 |
# File 'lib/aws-sdk-ivs/client.rb', line 1108 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.
1187 1188 1189 1190 |
# File 'lib/aws-sdk-ivs/client.rb', line 1187 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
1245 1246 1247 1248 |
# File 'lib/aws-sdk-ivs/client.rb', line 1245 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.
1306 1307 1308 1309 |
# File 'lib/aws-sdk-ivs/client.rb', line 1306 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.
1354 1355 1356 1357 |
# File 'lib/aws-sdk-ivs/client.rb', line 1354 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.
1400 1401 1402 1403 |
# File 'lib/aws-sdk-ivs/client.rb', line 1400 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.
1445 1446 1447 1448 |
# File 'lib/aws-sdk-ivs/client.rb', line 1445 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.
1491 1492 1493 1494 |
# File 'lib/aws-sdk-ivs/client.rb', line 1491 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.
1541 1542 1543 1544 |
# File 'lib/aws-sdk-ivs/client.rb', line 1541 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.
1570 1571 1572 1573 |
# File 'lib/aws-sdk-ivs/client.rb', line 1570 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*.
1606 1607 1608 1609 |
# File 'lib/aws-sdk-ivs/client.rb', line 1606 def (params = {}, = {}) req = build_request(:put_metadata, params) req.send_request() end |
#start_viewer_session_revocation(params = {}) ⇒ Struct
Starts the process of revoking the viewer session associated with a specified channel ARN and viewer ID. Optionally, you can provide a version to revoke viewer sessions less than and including that version. For instructions on associating a viewer ID with a viewer session, see [Setting Up Private Channels].
[1]: docs.aws.amazon.com/ivs/latest/userguide/private-channels.html
1648 1649 1650 1651 |
# File 'lib/aws-sdk-ivs/client.rb', line 1648 def start_viewer_session_revocation(params = {}, = {}) req = build_request(:start_viewer_session_revocation, 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>
1678 1679 1680 1681 |
# File 'lib/aws-sdk-ivs/client.rb', line 1678 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.
1716 1717 1718 1719 |
# File 'lib/aws-sdk-ivs/client.rb', line 1716 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.
1751 1752 1753 1754 |
# File 'lib/aws-sdk-ivs/client.rb', line 1751 def untag_resource(params = {}, = {}) req = build_request(:untag_resource, params) req.send_request() end |
#update_channel(params = {}) ⇒ Types::UpdateChannelResponse
Updates a channel’s configuration. Live channels cannot be updated. You must stop the ongoing stream, update the channel, and restart the stream for the changes to take effect.
1879 1880 1881 1882 |
# File 'lib/aws-sdk-ivs/client.rb', line 1879 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.
1903 1904 1905 |
# File 'lib/aws-sdk-ivs/client.rb', line 1903 def waiter_names [] end |