

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.

# Envoyer des messages avec Notify
<a name="notify-send-messages"></a>

Notify en propose deux APIs pour l'envoi de messages :
+ `SendNotifyTextMessage`— Envoie un message SMS à l'aide d'un modèle préapprouvé.
+ `SendNotifyVoiceMessage`— Envoie un appel vocal qui lit le contenu du modèle à l'aide de text-to-speech.

## Envoi d’un SMS
<a name="notify-send-text"></a>

------
#### [ Console ]

1. Ouvrez la console SMS de messagerie de l'utilisateur AWS final à l'adresse [https://console.aws.amazon.com/sms-voice/](https://console.aws.amazon.com/sms-voice/).

1. Accédez à une configuration Notify et choisissez l'onglet **Test**.

1. Pour le canal, sélectionnez **Texte**.

1. Sélectionnez un modèle dans le tableau des modèles.

1. Entrez le numéro de téléphone de destination au format E.164.

1. Renseignez les variables du modèle.

1. Sélectionnez **Send (Envoyer)**.

------
#### [ AWS CLI ]

```
aws pinpoint-sms-voice-v2 send-notify-text-message \
  --notify-configuration-id nc-1234567890abcdef0 \
  --destination-phone-number +12065550100 \
  --template-id notify-code-verification-english-001 \
  --template-variables '{"code":"123456"}'
```

------
#### [ Python (boto3) ]

```
import boto3

client = boto3.client('pinpoint-sms-voice-v2')

response = client.send_notify_text_message(
    NotifyConfigurationId='nc-1234567890abcdef0',
    DestinationPhoneNumber='+12065550100',
    TemplateId='notify-code-verification-english-001',
    TemplateVariables={
        'code': '123456'
    }
)

print(f"Message sent. MessageId: {response['MessageId']}")
print(f"Resolved body: {response.get('ResolvedMessageBody')}")
```

------

## Envoi d'un message vocal
<a name="notify-send-voice"></a>

Les messages vocaux nécessitent que le `VOICE` canal soit activé dans votre configuration Notify.

**Astuce**  
Pour les messages vocaux, séparez les chiffres par des points ou des espaces (par exemple,`"1. 2. 3. 4. 5. 6."`) afin que le text-to-speech moteur lise chaque chiffre individuellement plutôt que sous la forme d'un seul chiffre.

------
#### [ Console ]

1. Ouvrez la console SMS de messagerie de l'utilisateur AWS final à l'adresse [https://console.aws.amazon.com/sms-voice/](https://console.aws.amazon.com/sms-voice/).

1. Accédez à une configuration Notify et choisissez l'onglet **Test**.

1. Pour le canal, sélectionnez **Voice**.

1. Sélectionnez un modèle vocal dans le tableau des modèles.

1. Entrez le numéro de téléphone de destination et renseignez les variables du modèle.

1. Sélectionnez **Send (Envoyer)**.

------
#### [ AWS CLI ]

```
aws pinpoint-sms-voice-v2 send-notify-voice-message \
  --notify-configuration-id nc-1234567890abcdef0 \
  --destination-phone-number +12065550100 \
  --template-id notify-code-verification-english-001 \
  --template-variables '{"code":"123456"}' \
  --voice-id JOANNA
```

------

## DryRun Mode d'utilisation
<a name="notify-send-dryrun"></a>

Définissez `DryRun` ce paramètre `true` sur pour valider une demande d'envoi sans réellement délivrer le message. DryRun le mode vérifie la validation des variables du modèle, les restrictions nationales et les limites de dépenses, mais n'envoie pas le message ni ne déduit de votre limite de dépenses.

```
aws pinpoint-sms-voice-v2 send-notify-text-message \
  --notify-configuration-id nc-1234567890abcdef0 \
  --destination-phone-number +12065550100 \
  --template-id notify-code-verification-english-001 \
  --template-variables '{"code":"123456"}' \
  --dry-run
```

## Paramètres de demande d'envoi
<a name="notify-send-parameters"></a>

Les deux `SendNotifyTextMessage` et `SendNotifyVoiceMessage` acceptez les paramètres suivants :

NotifyConfigurationId (obligatoire)  
L'ID ou l'ARN de la configuration Notify.

DestinationPhoneNumber (obligatoire)  
Le numéro de téléphone du destinataire au format E.164.

TemplateVariables (obligatoire)  
Une carte entre les noms de variables et les valeurs. Toutes les valeurs sont des chaînes, même pour les variables entières ou booléennes.

TemplateId  
Le modèle à utiliser. En cas d'omission, le modèle par défaut de la configuration est utilisé.

ConfigurationSetName  
Un ensemble de configuration pour le routage des événements.

Contexte  
Paires clé-valeur incluses dans les enregistrements d'événements.

DryRun  
Valide la demande sans l'envoyer.

TimeToLive  
Durée de validité du message, en secondes. La valeur par défaut est de 72 heures.

MessageFeedbackEnabled  
Active le suivi des commentaires via l'`PutMessageFeedback`API.

VoiceId (voix uniquement)  
La voix Amazon Polly à utiliser (par exemple,`JOANNA`,`MATTHEW`).

## Comment fonctionne le routage des messages
<a name="notify-send-routing"></a>

AWS sélectionne automatiquement la meilleure identité d'origine pour chaque message en fonction du pays de destination. Si vous avez associé un pool téléphonique à votre configuration Notify, les identités appartenant au client dans le pool sont d'abord essayées. Si aucune identité appropriée appartenant au client n'est disponible, les identités AWS gérées sont utilisées comme solution de secours.

## Commentaire de message
<a name="notify-send-feedback"></a>

Si vous l'activez `MessageFeedbackEnabled` lors de l'envoi d'un message, vous pouvez indiquer si l'utilisateur final a bien reçu et utilisé le code :

```
client.put_message_feedback(
    MessageId='msg-1234567890abcdef',
    MessageFeedbackStatus='RECEIVED'  # or 'FAILED'
)
```

## Événements de livraison
<a name="notify-send-delivery-events"></a>

Notify émet des événements de livraison vers les destinations d'événements que vous avez CloudWatch configurées (Amazon Data Firehose ou Amazon SNS). Pour plus d'informations sur la configuration des destinations des événements, consultez[Ensembles de configuration dans les SMS de messagerie destinés aux utilisateurs AWS finaux](configuration-sets.md).


**Types d'événements de livraison**  

| Événement | Description | 
| --- | --- | 
| PENDING | Le message est en attente de livraison. | 
| DELIVERED | Le message a été envoyé à l'appareil du destinataire. | 
| FAILED | La livraison du message a échoué. Vérifiez la raison de l'échec pour plus de détails. | 
| BLOCKED | Le message a été bloqué par les règles de configuration de Protect. | 

## Gestion des erreurs
<a name="notify-send-errors"></a>

ValidationException  
Variables de modèle manquantes ou non valides, format de numéro de téléphone non valide ou pays de destination non activé dans la configuration.

ResourceNotFoundException  
La configuration ou le modèle de notification est introuvable.

ServiceQuotaExceededException  
Limite quotidienne de messages (niveau de base) ou limite de dépenses mensuelles atteinte.

ConflictException  
La configuration Notify n'est pas en `ACTIVE` état.

## Remarques importantes
<a name="notify-send-important-notes"></a>
+ Messagerie **bidirectionnelle — La messagerie** bidirectionnelle n'est pas prise en charge lors de l'utilisation d'identités d' AWS origine gérées. Si vous avez besoin d'une messagerie bidirectionnelle, associez votre propre pool téléphonique. Consultez [Utiliser des numéros dédiés avec Notify](notify-dedicated-numbers.md).
+ **Comportement de désinscription** — Pour les cas d'utilisation OTP avec des identités AWS gérées, les réponses au mot clé STOP sont fournies à titre informatif uniquement. Aucune liste de désinscription permanente n'est maintenue car chaque demande OTP est un opt-in implicite. Si vous associez votre propre pool téléphonique, la liste de désinscription du pool est respectée.

## Résolution des problèmes
<a name="notify-send-troubleshooting"></a>

**Les messages ne sont pas livrés**  
Si vos messages ne sont pas remis, vérifiez les points suivants :

1. Vérifiez que le numéro de téléphone de destination est au format E.164 (commence `+` par le code du pays).

1. Vérifiez que le pays de destination figure dans votre `EnabledCountries` liste.

1. Vérifiez que l'état de votre configuration est`ACTIVE`.

1. Vérifiez que votre limite de dépenses n'a pas été dépassée.

**État BLOQUÉ**  
Le message a été bloqué par une configuration Protect. Les raisons les plus courantes incluent le fait que le pays de destination ne figure pas dans votre liste de pays activés ou que le message est marqué comme potentiel AIT (trafic artificiellement gonflé).

**Erreurs de validation**  
Assurez-vous que tout ce `TemplateVariables` qui est requis est fourni. Vérifiez que les valeurs des variables correspondent à leurs types déclarés (par exemple, les entiers sont des nombres valides). Vérifiez que l'ID du modèle existe et qu'il est actif.