Uso de reglas de recepción en Amazon SES - AWS SDK for JavaScript

LaAWS SDK for JavaScript versión 3 (v3) es una reescritura de la versión 2 con algunas funciones nuevas y excelentes, incluida la arquitectura modular. Para obtener más información, consulte la Guía para desarrolladores de la versiónAWS SDK for JavaScript 3.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Uso de reglas de recepción en Amazon SES

JavaScript code example that applies to Node.js execution

Este ejemplo de código de Node.js muestra:

  • Crear y eliminar reglas de recepción.

  • Organizar reglas de recepción en conjuntos de reglas de recepción.

Las reglas de recepción de Amazon SES especifican qué debe hacerse con el correo electrónico que recibe de las direcciones de correo electrónico o los dominios de su propiedad. Una regla de recepción contiene una condición y una lista de acciones que siguen un orden. Si el destinatario de un correo electrónico entrante coincide con un destinatario especificado en las condiciones de la regla de recepción, Amazon SES lleva a cabo las acciones indicadas en dicha regla de recepción.

Para utilizar Amazon SES como receptor de correo electrónico, debe tener al menos uno activo.conjunto de reglas de recepción. Un conjunto de reglas de recepción es una colección ordenada de reglas de recepción que especifican cómo debería proceder Amazon SES con el correo que recibe a través de dominios verificados. Para obtener más información, consulteCreación de reglas de recepción para recepción de correo electrónico de Amazon SESyCreación de un conjunto de reglas de recepción para recepción de correo electrónico de Amazon SESen la guía para desarrolladores de Amazon Simple Email Service.

El escenario

En este ejemplo, se usan una serie de módulos de Node.js para enviar correos electrónicos de distintas maneras. Los módulos de Node.js utilizan el SDK para JavaScript para crear y usar plantillas de correo electrónico mediante los métodos siguientes deAWS.SESclase de cliente:

Tareas previas necesarias

Para configurar y ejecutar este ejemplo, primero debe completar estas tareas:

Creación de una regla de recepción de Amazon S3

Cada regla de recepción de Amazon SES contiene una lista ordenada de acciones. En este ejemplo se crea una regla de recepción con una acción de Amazon S3, que entrega el mensaje de correo electrónico a un bucket de Amazon S3. Para obtener información detallada acerca de acciones de reglas de recepción, consulte.Opciones de acciónen la guía para desarrolladores de Amazon Simple Email Service.

Para que Amazon SES escriba correo electrónico en un bucket de Amazon S3, cree una política de bucket que proporcionePutObjectpermiso a Amazon SES. Para obtener información acerca de cómo crear esta política de bucket, consulte.Otorgue permiso a Amazon SES para escribir en su bucket de Amazon S3en la guía para desarrolladores de Amazon Simple Email Service.

En este ejemplo, utilice un módulo de Node.js para crear una regla de recepción en Amazon SES y guardar los mensajes recibidos en un bucket de Amazon S3. Cree un módulo de Node.js con el nombre de archivo ses_createreceiptrule.js. Configure el SDK como le hemos mostrado anteriormente.

Crear un objeto de parámetros para transferir los valores necesarios para crear un conjunto de reglas de recepción. Para llamar al método createReceiptRuleSet, cree una promesa para invocar un objeto de servicio de Amazon SES transfiriendo los parámetros. Luego gestione la response en la devolución de llamada de la promesa.

// Load the AWS SDK for Node.js var AWS = require('aws-sdk'); // Set the region AWS.config.update({region: 'REGION'}); // Create createReceiptRule params var params = { Rule: { Actions: [ { S3Action: { BucketName: "S3_BUCKET_NAME", ObjectKeyPrefix: "email" } } ], Recipients: [ 'DOMAIN | EMAIL_ADDRESS', /* more items */ ], Enabled: true | false, Name: "RULE_NAME", ScanEnabled: true | false, TlsPolicy: "Optional" }, RuleSetName: "RULE_SET_NAME" }; // Create the promise and SES service object var newRulePromise = new AWS.SES({apiVersion: '2010-12-01'}).createReceiptRule(params).promise(); // Handle promise's fulfilled/rejected states newRulePromise.then( function(data) { console.log("Rule created"); }).catch( function(err) { console.error(err, err.stack); });

Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos. Amazon SES crea la regla de recepción.

node ses_createreceiptrule.js

Este código de muestra se puede encontrar aquí en GitHub.

Eliminación de una regla de recepción

En este ejemplo, utilice un módulo de Node.js para enviar un correo electrónico con Amazon SES. Cree un módulo de Node.js con el nombre de archivo ses_deletereceiptrule.js. Configure el SDK como le hemos mostrado anteriormente.

Crear un objeto de parámetros para transferir el nombre de la regla de recepción que se desea eliminar. Para llamar al método deleteReceiptRule, cree una promesa para invocar un objeto de servicio de Amazon SES transfiriendo los parámetros. Luego gestione la response en la devolución de llamada de la promesa.

// Load the AWS SDK for Node.js var AWS = require('aws-sdk'); // Set the region AWS.config.update({region: 'REGION'}); // Create deleteReceiptRule params var params = { RuleName: 'RULE_NAME', /* required */ RuleSetName: 'RULE_SET_NAME' /* required */ }; // Create the promise and SES service object var newRulePromise = new AWS.SES({apiVersion: '2010-12-01'}).deleteReceiptRule(params).promise(); // Handle promise's fulfilled/rejected states newRulePromise.then( function(data) { console.log("Receipt Rule Deleted"); }).catch( function(err) { console.error(err, err.stack); });

Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos. Amazon SES crea la lista de conjuntos de reglas de recepción.

node ses_deletereceiptrule.js

Este código de muestra se puede encontrar aquí en GitHub.

Creación de un conjunto de reglas de recepción

En este ejemplo, utilice un módulo de Node.js para enviar un correo electrónico con Amazon SES. Cree un módulo de Node.js con el nombre de archivo ses_createreceiptruleset.js. Configure el SDK como le hemos mostrado anteriormente.

Cree un objeto de parámetros para transferir el nombre del nuevo conjunto de reglas de recepción. Para llamar al método createReceiptRuleSet, cree una promesa para invocar un objeto de servicio de Amazon SES transfiriendo los parámetros. Luego gestione la response en la devolución de llamada de la promesa.

// Load the AWS SDK for Node.js var AWS = require('aws-sdk'); // Set the region AWS.config.update({region: 'REGION'}); // Create the promise and SES service object var newRulePromise = new AWS.SES({apiVersion: '2010-12-01'}).createReceiptRuleSet({RuleSetName: "NAME"}).promise(); // Handle promise's fulfilled/rejected states newRulePromise.then( function(data) { console.log(data); }).catch( function(err) { console.error(err, err.stack); });

Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos. Amazon SES crea la lista de conjuntos de reglas de recepción.

node ses_createreceiptruleset.js

Este código de muestra se puede encontrar aquí en GitHub.

Eliminación de un conjunto de reglas de recepción

En este ejemplo, utilice un módulo de Node.js para enviar un correo electrónico con Amazon SES. Cree un módulo de Node.js con el nombre de archivo ses_deletereceiptruleset.js. Configure el SDK como le hemos mostrado anteriormente.

Cree un objeto para transferir el nombre del conjunto de reglas de recepción que desea eliminar. Para llamar al método deleeReceiptRuleSet, cree una promesa para invocar un objeto de servicio de Amazon SES transfiriendo los parámetros. Luego gestione la response en la devolución de llamada de la promesa.

// Load the AWS SDK for Node.js var AWS = require('aws-sdk'); // Set the region AWS.config.update({region: 'REGION'}); // Create the promise and SES service object var newRulePromise = new AWS.SES({apiVersion: '2010-12-01'}).deleteReceiptRuleSet({RuleSetName: "NAME"}).promise(); // Handle promise's fulfilled/rejected states newRulePromise.then( function(data) { console.log(data); }).catch( function(err) { console.error(err, err.stack); });

Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos. Amazon SES crea la lista de conjuntos de reglas de recepción.

node ses_deletereceiptruleset.js

Este código de muestra se puede encontrar aquí en GitHub.