Le guide de référence de l'API AWS SDK pour JavaScript V3 décrit en détail toutes les opérations de l'API pour la AWS SDK pour JavaScript version 3 (V3).
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Exemples d'Amazon Polly
Cet exemple de code Node.js présente :
-
Importer du contenu audio enregistré à l'aide d'Amazon Polly vers Amazon S3
Le scénario
Dans cet exemple, une série de modules Node.js sont utilisés pour télécharger automatiquement le son enregistré à l'aide d'Amazon Polly vers Amazon S3 en utilisant les méthodes suivantes de la classe client Amazon S3 :
Tâches préalables
Pour configurer et exécuter cet exemple, vous devez d'abord :
-
Configurez un environnement de projet pour exécuter JavaScript des exemples de nœuds en suivant les instructions figurant sur GitHub
. -
Créez un fichier de configurations partagé avec vos informations d'identification utilisateur. Pour plus d'informations sur la fourniture d'un fichier d'informations d'identification partagé, consultez la section Fichiers de configuration et d'informations d'identification partagés dans le guide de référence AWS SDKs et Tools.
Créez une enquête de rôle d'utilisateur Amazon Cognito non authentifiée AWS Identity and Access Management (IAM) : autorisations, SynthesizeSpeech et un pool d'identités Amazon Cognito auquel le rôle IAM est associé. La Créez les AWS ressources à l'aide du AWS CloudFormation section ci-dessous décrit comment créer ces ressources.
Note
Cet exemple utilise Amazon Cognito, mais si vous n'utilisez pas Amazon Cognito, AWS votre utilisateur doit avoir la politique d'autorisation IAM suivante
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"mobileanalytics:PutEvents",
"cognito-sync:*"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": "polly:SynthesizeSpeech",
"Resource": "*",
"Effect": "Allow"
}
]
}
Créez les AWS ressources à l'aide du AWS CloudFormation
AWS CloudFormation vous permet de créer et de provisionner des déploiements AWS d'infrastructure de manière prévisible et répétée. Pour plus d'informations AWS CloudFormation, consultez le guide de AWS CloudFormation l'utilisateur.
Pour créer la AWS CloudFormation pile :
Installez et configurez en AWS CLI suivant les instructions du guide de l'AWS CLI utilisateur.
Créez un fichier nommé
setup.yaml
dans le répertoire racine du dossier de votre projet et GitHubcopiez-y lecontenu. Note
Le AWS CloudFormation modèle a été généré à l'aide du modèle AWS CDK disponible ici GitHub
. Pour plus d'informations à ce sujet AWS CDK, consultez le guide du AWS Cloud Development Kit (AWS CDK) développeur. Exécutez la commande suivante depuis la ligne de commande, en la
STACK_NAME
remplaçant par un nom unique pour la pile.Important
Le nom de la pile doit être unique au sein d'une AWS région et d'un AWS compte. Vous pouvez spécifier jusqu'à 128 caractères. Les chiffres et les tirets sont autorisés.
aws cloudformation create-stack --stack-name STACK_NAME --template-body file://setup.yaml --capabilities CAPABILITY_IAM
Pour plus d'informations sur les paramètres de
create-stack
commande, consultez le guide de référence des AWS CLI commandes et le guide de AWS CloudFormation l'utilisateur.-
Accédez à la console AWS CloudFormation de gestion, choisissez Stacks, choisissez le nom de la pile, puis cliquez sur l'onglet Ressources pour afficher la liste des ressources créées.
Importer du contenu audio enregistré à l'aide d'Amazon Polly vers Amazon S3
Créez un module Node.js nommé polly_synthesize_to_s3.js
. Assurez-vous de configurer le SDK comme indiqué précédemment, notamment en installant les clients et les packages requis. Dans le code, entrez leREGION
, et leBUCKET_NAME
. Pour accéder à Amazon Polly, créez un objet de service Polly
client. "IDENTITY_POOL_ID"
Remplacez-le par IdentityPoolId
celui de la page d'exemple du pool d'identités Amazon Cognito que vous avez créé pour cet exemple. Ceci est également transmis à chaque objet client.
Appelez la StartSpeechSynthesisCommand
méthode de l'objet du service client Amazon Polly, synthétisez le message vocal et chargez-le dans le compartiment Amazon S3.
import { StartSpeechSynthesisTaskCommand } from "@aws-sdk/client-polly";
import { pollyClient } from "./libs/pollyClient.js";
// Create the parameters
const params = {
OutputFormat: "mp3",
OutputS3BucketName: "videoanalyzerbucket",
Text: "Hello David, How are you?",
TextType: "text",
VoiceId: "Joanna",
SampleRate: "22050",
};
const run = async () => {
try {
await pollyClient.send(new StartSpeechSynthesisTaskCommand(params));
console.log(`Success, audio file added to ${params.OutputS3BucketName}`);
} catch (err) {
console.log("Error putting object", err);
}
};
run();
Cet exemple de code se trouve ici sur GitHub