You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.
Class: Aws::Polly::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::Polly::Client
- Defined in:
- (unknown)
Overview
An API client for Amazon Polly. To construct a client, you need to configure a :region
and :credentials
.
polly = Aws::Polly::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::Polly::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::Polly::Client
constructor
Constructs an API client.
API Operations collapse
-
#delete_lexicon(options = {}) ⇒ Struct
Deletes the specified pronunciation lexicon stored in an AWS Region.
-
#describe_voices(options = {}) ⇒ Types::DescribeVoicesOutput
Returns the list of voices that are available for use when requesting speech synthesis.
-
#get_lexicon(options = {}) ⇒ Types::GetLexiconOutput
Returns the content of the specified pronunciation lexicon stored in an AWS Region.
-
#get_speech_synthesis_task(options = {}) ⇒ Types::GetSpeechSynthesisTaskOutput
Retrieves a specific SpeechSynthesisTask object based on its TaskID.
-
#list_lexicons(options = {}) ⇒ Types::ListLexiconsOutput
Returns a list of pronunciation lexicons stored in an AWS Region.
-
#list_speech_synthesis_tasks(options = {}) ⇒ Types::ListSpeechSynthesisTasksOutput
Returns a list of SpeechSynthesisTask objects ordered by their creation date.
-
#put_lexicon(options = {}) ⇒ Struct
Stores a pronunciation lexicon in an AWS Region.
-
#start_speech_synthesis_task(options = {}) ⇒ Types::StartSpeechSynthesisTaskOutput
Allows the creation of an asynchronous synthesis task, by starting a new
SpeechSynthesisTask
. -
#synthesize_speech(options = {}) ⇒ Types::SynthesizeSpeechOutput
Synthesizes UTF-8 input, plain text or SSML, to a stream of bytes.
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::Polly::Client
Constructs an API client.
Instance Method Details
#delete_lexicon(options = {}) ⇒ Struct
Deletes the specified pronunciation lexicon stored in an AWS Region. A lexicon which has been deleted is not available for speech synthesis, nor is it possible to retrieve it using either the GetLexicon
or ListLexicon
APIs.
For more information, see Managing Lexicons.
#describe_voices(options = {}) ⇒ Types::DescribeVoicesOutput
Returns the list of voices that are available for use when requesting speech synthesis. Each voice speaks a specified language, is either male or female, and is identified by an ID, which is the ASCII version of the voice name.
When synthesizing speech ( SynthesizeSpeech
), you provide the voice ID for the voice you want from the list of voices returned by DescribeVoices
.
For example, you want your news reader application to read news in a specific language, but giving a user the option to choose the voice. Using the DescribeVoices
operation you can provide the user with a list of available voices to select from.
You can optionally specify a language code to filter the available voices. For example, if you specify en-US
, the operation returns a list of all available US English voices.
This operation requires permissions to perform the polly:DescribeVoices
action.
#get_lexicon(options = {}) ⇒ Types::GetLexiconOutput
Returns the content of the specified pronunciation lexicon stored in an AWS Region. For more information, see Managing Lexicons.
#get_speech_synthesis_task(options = {}) ⇒ Types::GetSpeechSynthesisTaskOutput
Retrieves a specific SpeechSynthesisTask object based on its TaskID. This object contains information about the given speech synthesis task, including the status of the task, and a link to the S3 bucket containing the output of the task.
#list_lexicons(options = {}) ⇒ Types::ListLexiconsOutput
Returns a list of pronunciation lexicons stored in an AWS Region. For more information, see Managing Lexicons.
#list_speech_synthesis_tasks(options = {}) ⇒ Types::ListSpeechSynthesisTasksOutput
Returns a list of SpeechSynthesisTask objects ordered by their creation date. This operation can filter the tasks by their status, for example, allowing users to list only tasks that are completed.
#put_lexicon(options = {}) ⇒ Struct
Stores a pronunciation lexicon in an AWS Region. If a lexicon with the same name already exists in the region, it is overwritten by the new lexicon. Lexicon operations have eventual consistency, therefore, it might take some time before the lexicon is available to the SynthesizeSpeech operation.
For more information, see Managing Lexicons.
#start_speech_synthesis_task(options = {}) ⇒ Types::StartSpeechSynthesisTaskOutput
Allows the creation of an asynchronous synthesis task, by starting a new SpeechSynthesisTask
. This operation requires all the standard information needed for speech synthesis, plus the name of an Amazon S3 bucket for the service to store the output of the synthesis task and two optional parameters (OutputS3KeyPrefix and SnsTopicArn). Once the synthesis task is created, this operation will return a SpeechSynthesisTask object, which will include an identifier of this task as well as the current status.
#synthesize_speech(options = {}) ⇒ Types::SynthesizeSpeechOutput
Synthesizes UTF-8 input, plain text or SSML, to a stream of bytes. SSML input must be valid, well-formed SSML. Some alphabets might not be available with all the voices (for example, Cyrillic might not be read at all by English voices) unless phoneme mapping is used. For more information, see How it Works.
#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: |
---|