Class: Aws::ElementalInference::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::ElementalInference::Client
- Includes:
- ClientStubs
- Defined in:
- lib/aws-sdk-elementalinference/client.rb
Overview
An API client for ElementalInference. To construct a client, you need to configure a ‘:region` and `:credentials`.
client = Aws::ElementalInference::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
-
#associate_feed(params = {}) ⇒ Types::AssociateFeedResponse
Associates a resource with the feed.
-
#create_dictionary(params = {}) ⇒ Types::CreateDictionaryResponse
Creates a custom dictionary for improving transcription accuracy.
-
#create_feed(params = {}) ⇒ Types::CreateFeedResponse
Creates a feed.
-
#delete_dictionary(params = {}) ⇒ Types::DeleteDictionaryResponse
Deletes the specified dictionary.
-
#delete_feed(params = {}) ⇒ Types::DeleteFeedResponse
Deletes the specified feed.
-
#disassociate_feed(params = {}) ⇒ Types::DisassociateFeedResponse
Releases the resource (the source media) that is associated with this feed.
-
#export_dictionary_entries(params = {}) ⇒ Types::ExportDictionaryEntriesResponse
Exports the entries from the specified dictionary.
-
#get_dictionary(params = {}) ⇒ Types::GetDictionaryResponse
Retrieves information about the specified dictionary.
-
#get_feed(params = {}) ⇒ Types::GetFeedResponse
Retrieves information about the specified feed.
-
#list_dictionaries(params = {}) ⇒ Types::ListDictionariesResponse
Lists the dictionaries in your account.
-
#list_feeds(params = {}) ⇒ Types::ListFeedsResponse
Displays a list of feeds that belong to this AWS account.
-
#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse
List all tags that are on an Elemental Inference resource in the current region.
-
#tag_resource(params = {}) ⇒ Struct
Associates the specified tags to the resource identified by the specified resourceArn in the current region.
-
#untag_resource(params = {}) ⇒ Struct
Deletes specified tags from the specified resource in the current region.
-
#update_dictionary(params = {}) ⇒ Types::UpdateDictionaryResponse
Updates the specified dictionary.
-
#update_feed(params = {}) ⇒ Types::UpdateFeedResponse
Updates the name and/or outputs in a feed.
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.
-
#wait_until(waiter_name, params = {}, options = {}) {|w.waiter| ... } ⇒ Boolean
Polls an API operation until a resource enters a desired state.
- #waiter_names ⇒ Object deprecated private Deprecated.
Constructor Details
#initialize(options) ⇒ Client
Returns a new instance of Client.
471 472 473 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 471 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.
1470 1471 1472 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 1470 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.
1473 1474 1475 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 1473 def errors_module Errors end |
Instance Method Details
#associate_feed(params = {}) ⇒ Types::AssociateFeedResponse
Associates a resource with the feed. The resource provides the input that Elemental Inference needs in order to perform an Elemental Inference feature, such as cropping video. You always provide the resource by associating it with a feed. You can associate only one resource with each feed. With an association, a specific source media is claiming ownership of the feed.
AssociateFeed is a PATCH operation, which means that you can include only parameters that you want to change. Parameters that you don’t include will not be affected by the operation.
Specifically:
-
You can add more outputs to the existing outputs. New outputs will be appended.
-
You can’t modify an existing output (for example to change its name). Instead, use UpdateFeed.
-
You can’t delete an existing output. Instead, use UpdateFeed.
Also note that you can’t change the feed name with AssociateFeed. Instead, use UpdateFeed.
574 575 576 577 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 574 def associate_feed(params = {}, = {}) req = build_request(:associate_feed, 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.
1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 1330 def build_request(operation_name, params = {}) handlers = @handlers.for(operation_name) tracer = config.telemetry_provider.tracer_provider.tracer( Aws::Telemetry.module_to_tracer_name('Aws::ElementalInference') ) context = Seahorse::Client::RequestContext.new( operation_name: operation_name, operation: config.api.operation(operation_name), client: self, params: params, config: config, tracer: tracer ) context[:gem_name] = 'aws-sdk-elementalinference' context[:gem_version] = '1.5.0' Seahorse::Client::Request.new(handlers, context) end |
#create_dictionary(params = {}) ⇒ Types::CreateDictionaryResponse
Creates a custom dictionary for improving transcription accuracy. A dictionary contains custom words and phrases that the ASR engine might not recognize, such as brand names, technical terms, or proper nouns. You can reference a dictionary when configuring a smart subtitles output.
637 638 639 640 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 637 def create_dictionary(params = {}, = {}) req = build_request(:create_dictionary, params) req.send_request() end |
#create_feed(params = {}) ⇒ Types::CreateFeedResponse
Creates a feed. The feed is the target for the live media stream that is being sent by the calling application. An example of a calling application is AWS Elemental MediaLive.
The key contents of the feed is an array of outputs. Each output represents an Elemental Inference feature. After you create the feed, you must associate a resource with the feed. At that point, you will have a useable feed: resource - feed - output or outputs.
734 735 736 737 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 734 def create_feed(params = {}, = {}) req = build_request(:create_feed, params) req.send_request() end |
#delete_dictionary(params = {}) ⇒ Types::DeleteDictionaryResponse
Deletes the specified dictionary. You cannot delete a dictionary that is referenced by a feed. You must first remove the dictionary reference from the feed’s subtitling configuration.
768 769 770 771 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 768 def delete_dictionary(params = {}, = {}) req = build_request(:delete_dictionary, params) req.send_request() end |
#delete_feed(params = {}) ⇒ Types::DeleteFeedResponse
Deletes the specified feed. You can delete the feed at any time. Elemental Inference doesn’t block you from deleting a feed when the calling application is calling PutMedia or GetMetadata on that feed, although both these calls will start to fail. For more information about managing inactive feeds, see the Elemental Inference User Guide.
804 805 806 807 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 804 def delete_feed(params = {}, = {}) req = build_request(:delete_feed, params) req.send_request() end |
#disassociate_feed(params = {}) ⇒ Types::DisassociateFeedResponse
Releases the resource (the source media) that is associated with this feed. The outputs in the feed become DISABLED.
851 852 853 854 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 851 def disassociate_feed(params = {}, = {}) req = build_request(:disassociate_feed, params) req.send_request() end |
#export_dictionary_entries(params = {}) ⇒ Types::ExportDictionaryEntriesResponse
Exports the entries from the specified dictionary.
879 880 881 882 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 879 def export_dictionary_entries(params = {}, = {}) req = build_request(:export_dictionary_entries, params) req.send_request() end |
#get_dictionary(params = {}) ⇒ Types::GetDictionaryResponse
Retrieves information about the specified dictionary.
921 922 923 924 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 921 def get_dictionary(params = {}, = {}) req = build_request(:get_dictionary, params) req.send_request() end |
#get_feed(params = {}) ⇒ Types::GetFeedResponse
Retrieves information about the specified feed.
The following waiters are defined for this operation (see #wait_until for detailed usage):
* feed_deleted
980 981 982 983 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 980 def get_feed(params = {}, = {}) req = build_request(:get_feed, params) req.send_request() end |
#list_dictionaries(params = {}) ⇒ Types::ListDictionariesResponse
Lists the dictionaries in your account.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1022 1023 1024 1025 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 1022 def list_dictionaries(params = {}, = {}) req = build_request(:list_dictionaries, params) req.send_request() end |
#list_feeds(params = {}) ⇒ Types::ListFeedsResponse
Displays a list of feeds that belong to this AWS account.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1079 1080 1081 1082 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 1079 def list_feeds(params = {}, = {}) req = build_request(:list_feeds, params) req.send_request() end |
#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse
List all tags that are on an Elemental Inference resource in the current region.
1109 1110 1111 1112 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 1109 def (params = {}, = {}) req = build_request(:list_tags_for_resource, params) req.send_request() end |
#tag_resource(params = {}) ⇒ Struct
Associates the specified tags to the resource identified by the specified resourceArn in the current region. If existing tags on a resource are not specified in the request parameters, they are not changed. When a resource is deleted, the tags associated with that resource are also deleted.
1141 1142 1143 1144 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 1141 def tag_resource(params = {}, = {}) req = build_request(:tag_resource, params) req.send_request() end |
#untag_resource(params = {}) ⇒ Struct
Deletes specified tags from the specified resource in the current region.
1168 1169 1170 1171 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 1168 def untag_resource(params = {}, = {}) req = build_request(:untag_resource, params) req.send_request() end |
#update_dictionary(params = {}) ⇒ Types::UpdateDictionaryResponse
Updates the specified dictionary.
1224 1225 1226 1227 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 1224 def update_dictionary(params = {}, = {}) req = build_request(:update_dictionary, params) req.send_request() end |
#update_feed(params = {}) ⇒ Types::UpdateFeedResponse
Updates the name and/or outputs in a feed.
UpdateFeed is a PUT operation, which means that the payload that you specify completely overwrites the existing payload.
This means that if you want to touch the array of outputs, you must pass in the full new list. So you must omit outputs you want to delete, and include outputs you want to add or modify.
If you want to patch the array of outputs to make selective additions, use AssociateFeed.
1321 1322 1323 1324 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 1321 def update_feed(params = {}, = {}) req = build_request(:update_feed, params) req.send_request() end |
#wait_until(waiter_name, params = {}, options = {}) {|w.waiter| ... } ⇒ Boolean
Polls an API operation until a resource enters a desired state.
## Basic Usage
A waiter will call an API operation until:
-
It is successful
-
It enters a terminal state
-
It makes the maximum number of attempts
In between attempts, the waiter will sleep.
# polls in a loop, sleeping between attempts
client.wait_until(waiter_name, params)
## Configuration
You can configure the maximum number of polling attempts, and the delay (in seconds) between each polling attempt. You can pass configuration as the final arguments hash.
# poll for ~25 seconds
client.wait_until(waiter_name, params, {
max_attempts: 5,
delay: 5,
})
## 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(waiter_name, params, {
# disable max attempts
max_attempts: nil,
# poll for 1 hour, instead of a number of attempts
before_wait: -> (attempts, response) do
throw :failure if Time.now - started_at > 3600
end
})
## Handling Errors
When a waiter is unsuccessful, it will raise an error. All of the failure errors extend from Waiters::Errors::WaiterFailed.
begin
client.wait_until(...)
rescue Aws::Waiters::Errors::WaiterFailed
# resource did not enter the desired state in time
end
## Valid Waiters
The following table lists the valid waiter names, the operations they call, and the default ‘:delay` and `:max_attempts` values.
| waiter_name | params | :delay | :max_attempts | | ———— | —————– | ——– | ————- | | feed_deleted | #get_feed | 3 | 40 |
1436 1437 1438 1439 1440 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 1436 def wait_until(waiter_name, params = {}, = {}) w = waiter(waiter_name, ) yield(w.waiter) if block_given? # deprecated w.wait(params) 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.
1444 1445 1446 |
# File 'lib/aws-sdk-elementalinference/client.rb', line 1444 def waiter_names waiters.keys end |