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.
Création et gestion de règles de courrier électronique à l'aide de l'API Amazon SES et de la AWS SDK for PHP version 3
Outre l'envoi d'e-mails, vous pouvez également recevoir des e-mails via Amazon Simple Email Service (Amazon SES). Les règles de réception vous permettent de spécifier ce que fait Amazon SES avec les e-mails qu'il reçoit pour les adresses e-mail ou les domaines que vous possédez. Une règle peut envoyer des e-mails à d'autres AWS services, notamment Amazon S3, Amazon SNS ou. AWS Lambda
Pour plus d'informations, consultez les sections Gestion des ensembles de règles de réception pour la réception des e-mails Amazon SES et Gestion des règles de réception pour la réception des e-mails Amazon SES.
Les exemples suivants montrent comment :
-
Créez un ensemble de règles de réception à l'aide de CreateReceiptRuleSet.
-
Créez une règle de réception à l'aide de CreateReceiptRule.
-
Décrivez un ensemble de règles de réception utilisant DescribeReceiptRuleSet.
-
Décrivez une règle de réception à l'aide de DescribeReceiptRule.
-
Répertoriez tous les ensembles de règles de réception en utilisant ListReceiptRuleSets.
-
Mettez à jour une règle de réception à l'aide de UpdateReceiptRule.
-
Supprimez une règle de réception à l'aide de DeleteReceiptRule.
-
Supprimez un ensemble de règles de réception à l'aide de DeleteReceiptRuleSet.
Tous les exemples de code pour le AWS SDK for PHP sont disponibles ici GitHub
Informations d’identification
Avant d'exécuter l'exemple de code, configurez vos AWS informations d'identification, comme décrit dansInformations d'identification. Importez ensuite leAWS SDK for PHP, comme décrit dansUtilisation de base.
Pour plus d'informations sur l'utilisation d'Amazon SES, consultez le manuel du développeur Amazon SES.
Créer un jeu de règles de réception
Un ensemble de règles de réception renfermer plusieurs règles de réception. Au moins un ensemble de règles de réception doit être associé à votre compte avant de pouvoir créer une règle de réception. Pour créer un ensemble de règles de réception, indiquez un code unique RuleSetName et utilisez l'CreateReceiptRuleSetopération.
Importations
require 'vendor/autoload.php'; use Aws\Exception\AwsException;
Exemple de code
$SesClient = new Aws\Ses\SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-east-2' ]); $name = 'Rule_Set_Name'; try { $result = $SesClient->createReceiptRuleSet([ 'RuleSetName' => $name, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }
Création d'une règle de réception
Contrôlez vos e-mails entrants en ajoutant une règle de réception à un ensemble de règles de réception existant. Cet exemple vous montre comment créer une règle de réception qui envoie des messages entrants à un compartiment Amazon S3, mais vous pouvez également envoyer des messages à Amazon SNS et. AWS Lambda Pour créer une règle de réception, fournissez une règle et le RuleSetName à l'CreateReceiptRuleopération.
Importations
require 'vendor/autoload.php'; use Aws\Exception\AwsException;
Exemple de code
$SesClient = new Aws\Ses\SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-east-2' ]); $rule_name = 'Rule_Name'; $rule_set_name = 'Rule_Set_Name'; $s3_bucket = 'Bucket_Name'; try { $result = $SesClient->createReceiptRule([ 'Rule' => [ 'Actions' => [ [ 'S3Action' => [ 'BucketName' => $s3_bucket, ], ], ], 'Name' => $rule_name, 'ScanEnabled' => true, 'TlsPolicy' => 'Optional', 'Recipients' => ['<string>'] ], 'RuleSetName' => $rule_set_name, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }
Décrire un jeu de règles de réception
Une fois par seconde, renvoie les détails de l’ensemble de règles de réception spécifié. Pour utiliser l'DescribeReceiptRuleSetopération, fournissez le RuleSetName.
Importations
require 'vendor/autoload.php'; use Aws\Exception\AwsException;
Exemple de code
$SesClient = new Aws\Ses\SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-east-2' ]); $name = 'Rule_Set_Name'; try { $result = $SesClient->describeReceiptRuleSet([ 'RuleSetName' => $name, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }
Décrire une règle de réception
Renvoie les détails d’une règle de réception spécifiée. Pour utiliser l'DescribeReceiptRuleopération, fournissez le RuleName et RuleSetName.
Importations
require 'vendor/autoload.php'; use Aws\Exception\AwsException;
Exemple de code
$SesClient = new Aws\Ses\SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-east-2' ]); $rule_name = 'Rule_Name'; $rule_set_name = 'Rule_Set_Name'; try { $result = $SesClient->describeReceiptRule([ 'RuleName' => $rule_name, 'RuleSetName' => $rule_set_name, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }
Répertorier tous les ensembles de règles de réception
Pour répertorier les ensembles de règles de réception qui existent sous votre nom Compte AWS dans la AWS région actuelle, utilisez l'ListReceiptRuleSetsopération.
Importations
require 'vendor/autoload.php'; use Aws\Exception\AwsException;
Exemple de code
$SesClient = new Aws\Ses\SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-east-2' ]); try { $result = $SesClient->listReceiptRuleSets(); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }
Mettre à jour une règle de réception
Cet exemple montre comment mettre à jour une règle de réception qui envoie des messages entrants à une AWS Lambda fonction, mais vous pouvez également envoyer des messages à Amazon SNS et Amazon S3. Pour utiliser cette UpdateReceiptRuleopération, entrez la nouvelle règle de réception et le RuleSetName.
Importations
require 'vendor/autoload.php'; use Aws\Exception\AwsException;
Exemple de code
$SesClient = new Aws\Ses\SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-east-2' ]); $rule_name = 'Rule_Name'; $rule_set_name = 'Rule_Set_Name'; $lambda_arn = 'Amazon Resource Name (ARN) of the AWS Lambda function'; $sns_topic_arn = 'Amazon Resource Name (ARN) of the Amazon SNS topic'; try { $result = $SesClient->updateReceiptRule([ 'Rule' => [ 'Actions' => [ 'LambdaAction' => [ 'FunctionArn' => $lambda_arn, 'TopicArn' => $sns_topic_arn, ], ], 'Enabled' => true, 'Name' => $rule_name, 'ScanEnabled' => false, 'TlsPolicy' => 'Require', ], 'RuleSetName' => $rule_set_name, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }
Supprimer un ensemble de règles de réception
Supprimez un ensemble de règles de réception qui n'est pas actuellement désactivé. Cette opération supprime également toutes les règles de réception qu’il contient. Pour supprimer un ensemble de règles de réception, fournissez le RuleSetName à l'DeleteReceiptRuleSetopération.
Importations
require 'vendor/autoload.php'; use Aws\Exception\AwsException;
Exemple de code
$SesClient = new Aws\Ses\SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-east-2' ]); $name = 'Rule_Set_Name'; try { $result = $SesClient->deleteReceiptRuleSet([ 'RuleSetName' => $name, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }
Supprimer une règle de réception
Pour supprimer une règle de réception spécifiée, fournissez le RuleName et RuleSetName à l'DeleteReceiptRuleopération.
Importations
require 'vendor/autoload.php'; use Aws\Exception\AwsException;
Exemple de code
$SesClient = new Aws\Ses\SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-east-2' ]); $rule_name = 'Rule_Name'; $rule_set_name = 'Rule_Set_Name'; try { $result = $SesClient->deleteReceiptRule([ 'RuleName' => $rule_name, 'RuleSetName' => $rule_set_name, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }