View a markdown version of this page

Senden von Nachrichten mit Notify - AWS SMS-Nachrichten für Endbenutzer

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Senden von Nachrichten mit Notify

Notify bietet zwei Möglichkeiten APIs zum Senden von Nachrichten:

  • SendNotifyTextMessage— Sendet eine SMS-Nachricht unter Verwendung einer vorab genehmigten Vorlage.

  • SendNotifyVoiceMessage— Sendet einen Sprachanruf, bei dem der Inhalt der Vorlage mithilfe von text-to-speech gelesen wird.

Senden einer SMS-Nachricht

Console
  1. Öffnen Sie die SMS-Konsole für AWS Endbenutzernachrichten unter https://console.aws.amazon.com/sms-voice/.

  2. Navigieren Sie zu einer Notify-Konfiguration und wählen Sie die Registerkarte Test aus.

  3. Wählen Sie als Kanal Text aus.

  4. Wählen Sie eine Vorlage aus der Vorlagentabelle aus.

  5. Geben Sie die Zieltelefonnummer im E.164-Format ein.

  6. Füllen Sie die Vorlagenvariablen aus.

  7. Wählen Sie Send (Senden) aus.

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')}")

Eine Sprachnachricht senden

Für Sprachnachrichten muss der VOICE Kanal in Ihrer Notify-Konfiguration aktiviert sein.

Tipp

Trennen Sie bei Sprachnachrichten die Ziffern durch Punkte oder Leerzeichen (z. B."1. 2. 3. 4. 5. 6."), sodass die text-to-speech Engine jede Ziffer einzeln und nicht als einzelne Zahl liest.

Console
  1. Öffnen Sie die SMS-Konsole für AWS Endbenutzernachrichten unter https://console.aws.amazon.com/sms-voice/.

  2. Navigieren Sie zu einer Notify-Konfiguration und wählen Sie die Registerkarte Test aus.

  3. Wählen Sie als Kanal Voice aus.

  4. Wählen Sie eine Sprachvorlage aus der Vorlagentabelle aus.

  5. Geben Sie die Zieltelefonnummer ein und füllen Sie die Vorlagenvariablen aus.

  6. Wählen Sie Send (Senden) aus.

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 Modus verwenden

Wird DryRun auf gesetzttrue, um eine Sendeanfrage zu validieren, ohne die Nachricht tatsächlich zuzustellen. DryRun Der Modus überprüft die Validierung der Vorlagenvariablen, Länderbeschränkungen und Ausgabenlimits, sendet die Nachricht jedoch nicht und zieht sie auch nicht von Ihrem Ausgabenlimit ab.

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

Anforderungsparameter senden

Beides SendNotifyTextMessage und SendNotifyVoiceMessage akzeptiere die folgenden Parameter:

NotifyConfigurationId (erforderlich)

Die ID oder der ARN der Notify-Konfiguration.

DestinationPhoneNumber (erforderlich)

Die Telefonnummer des Empfängers im E.164-Format.

TemplateVariables (erforderlich)

Eine Zuordnung von Variablennamen zu Werten. Alle Werte sind Zeichenketten, auch für Integer- oder Boolesche Variablen.

TemplateId

Die zu verwendende Vorlage. Wenn nicht angegeben, wird die Standardvorlage der Konfiguration verwendet.

ConfigurationSetName

Ein Konfigurationssatz für das Event-Routing.

Kontext

Schlüssel-Wert-Paare, die in Ereignisdatensätzen enthalten sind.

DryRun

Validiert die Anfrage, ohne sie zu senden.

TimeToLive

Wie lange die Nachricht gültig ist, in Sekunden. Die Standardeinstellung ist 72 Stunden.

MessageFeedbackEnabled

Aktiviert die Nachverfolgung von Nachrichtenfeedback über die PutMessageFeedback API.

VoiceId (nur Spracheingabe)

Die zu verwendende Amazon Polly Polly-Stimme (z. B.JOANNA,MATTHEW).

Wie funktioniert die Nachrichtenweiterleitung

AWS wählt basierend auf dem Zielland automatisch die beste Absenderidentität für jede Nachricht aus. Wenn Sie Ihrer Notify-Konfiguration einen Telefonpool zugeordnet haben, werden zunächst die kundeneigenen Identitäten im Pool getestet. Wenn keine passende kundeneigene Identität verfügbar ist, werden AWS-verwaltete Identitäten als Ausweichlösung verwendet.

Feedback senden

Wenn Sie MessageFeedbackEnabled beim Senden einer Nachricht die Option aktivieren, können Sie melden, ob der Endbenutzer den Code erfolgreich erhalten und verwendet hat:

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

Ereignisse bei der Zustellung

Notify sendet Lieferereignisse an Ihre konfigurierten Ereignisziele (CloudWatchAmazon Data Firehose oder Amazon SNS) aus. Informationen zum Einrichten von Veranstaltungszielen finden Sie unter. Konfigurationssätze in AWS End User Messaging SMS

Arten von Zustellungsereignissen
Veranstaltung Description
PENDING Die Nachricht befindet sich in der Warteschlange für die Zustellung.
DELIVERED Die Nachricht wurde an das Gerät des Empfängers übermittelt.
FAILED Die Nachrichtenzustellung ist fehlgeschlagen. Einzelheiten finden Sie unter der Ursache des Fehlers.
BLOCKED Die Nachricht wurde durch die Protect-Konfigurationsregeln blockiert.

Fehlerbehandlung

ValidationException

Fehlende oder ungültige Vorlagenvariablen, ungültiges Telefonnummernformat oder das Zielland ist in der Konfiguration nicht aktiviert.

ResourceNotFoundException

Die Notify-Konfiguration oder -Vorlage wurde nicht gefunden.

ServiceQuotaExceededException

Tägliches Nachrichtenlimit (Basic-Tarif) oder monatliches Ausgabenlimit erreicht.

ConflictException

Die Notify-Konfiguration befindet sich nicht im ACTIVE Status.

Wichtige Hinweise

  • Bidirektionales Messaging — Bidirektionales Messaging wird nicht unterstützt, wenn AWS-verwaltete Originationsidentitäten verwendet werden. Wenn Sie bidirektionales Messaging benötigen, ordnen Sie Ihren eigenen Telefonpool zu. Siehe Dedizierte Nummern mit Notify verwenden.

  • Opt-Out-Verhalten — In OTP-Anwendungsfällen mit AWS verwalteten Identitäten dienen STOP-Keyword-Antworten nur zu Informationszwecken. Es wird keine persistente Opt-Out-Liste geführt, da es sich bei jeder OTP-Anfrage um ein implizites Opt-In handelt. Wenn Sie Ihren eigenen Telefonpool verknüpfen, wird die Opt-Out-Liste des Pools respektiert.

Fehlerbehebung

Nachrichten werden nicht zugestellt

Wenn Ihre Nachrichten nicht zugestellt werden, überprüfen Sie Folgendes:

  1. Vergewissern Sie sich, dass die Zieltelefonnummer im E.164-Format vorliegt (beginnt mit + und Landesvorwahl).

  2. Vergewissern Sie sich, dass das Zielland in Ihrer EnabledCountries Liste aufgeführt ist.

  3. Stellen Sie sicher, dass Ihr Konfigurationsstatus lautetACTIVE.

  4. Vergewissern Sie sich, dass Ihr Ausgabenlimit nicht überschritten wurde.

Status GESPERRT

Die Nachricht wurde durch eine Protect-Konfiguration blockiert. Zu den häufigsten Gründen gehören, dass das Zielland nicht auf der Liste der aktivierten Länder steht oder dass die Nachricht als potenzieller AIT (künstlich aufgeblähter Verkehr) gekennzeichnet ist.

Validierungsfehler

Stellen Sie sicher, dass alle erforderlichen Informationen bereitgestellt werden. TemplateVariables Überprüfen Sie, ob die Variablenwerte ihren deklarierten Typen entsprechen (Ganzzahlen sind beispielsweise gültige Zahlen). Stellen Sie sicher, dass die Vorlagen-ID existiert und aktiv ist.