

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 SMS-Nachrichten in Amazon SNS mit der AWS SDK für PHP Version 3
<a name="sns-examples-sending-sms"></a>

Sie können Amazon Simple Notification Service (Amazon SNS) verwenden, um Textnachrichten oder SMS-Nachrichten an SMS-fähige Geräte zu senden. Sie können eine Nachricht direkt an eine Telefonnummer senden oder Sie können eine Nachricht an mehrere Telefonnummern gleichzeitig senden, indem Sie das Thema für diese Telefonnummern abonnieren und die Nachricht an das Thema senden.

Verwenden Sie Amazon SNS, um Einstellungen für SMS-Nachrichten festzulegen, z. B. wie Ihre Lieferungen optimiert werden (aus Kostengründen oder für eine zuverlässige Zustellung), Ihr monatliches Ausgabenlimit, wie Nachrichtenzustellungen protokolliert werden und ob Sie tägliche SMS-Nutzungsberichte abonnieren möchten. Diese Einstellungen werden abgerufen und als SMS-Attribute für Amazon SNS festgelegt.

Wenn Sie eine SMS-Nachricht senden, geben Sie die Telefonnummer im E.164-Format an. Die Richtlinie E.164 legt die internationale Schreibweise für Telefonnummern fest. Telefonnummern in diesem Format bestehen aus maximal 15 Zeichen sowie einem vorangestellten Plus-Zeichen (\$1) und der Ländervorwahl. Eine US-Telefonnummer im E.164-Format würde beispielsweise als XXX555 \$11001 0100 angezeigt.

In den nachstehenden Beispielen wird Folgendes veranschaulicht:
+ [Rufen Sie mit Get die Standardeinstellungen für das Senden von SMS-Nachrichten von Ihrem Konto aus ab. SMSAttributes](https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-sns-2010-03-31.html#getsmsattributes)
+ Aktualisieren Sie mithilfe von [Set](https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-sns-2010-03-31.html#setsmsattributes) die Standardeinstellungen für das Senden von SMS-Nachrichten von Ihrem Konto ausSMSAttributes.
+ [Finden Sie mithilfe CheckIfPhoneNumber ISOpted von Out heraus, ob sich der Inhaber einer bestimmten Telefonnummer gegen den Empfang von SMS-Nachrichten von Ihrem Konto entschieden hat.](https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-sns-2010-03-31.html#checkifphonenumberisoptedout)
+ Listen Sie Telefonnummern auf, bei denen der Eigentümer den Empfang von SMS-Nachrichten von Ihrem Konto mithilfe von deaktiviert hat [ListPhoneNumberOptedOut](https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-sns-2010-03-31.html#listphonenumbersoptedout).
+ Senden Sie eine Textnachricht (SMS-Nachricht) mit [Publish](https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-sns-2010-03-31.html#publish) direkt an eine Telefonnummer.

Weitere Informationen zur Verwendung von Amazon SNS finden Sie unter [Verwenden von Amazon SNS für Benutzerbenachrichtigungen mit einer Mobiltelefonnummer als Abonnent (SMS senden)](https://docs.aws.amazon.com/sns/latest/dg/sns-mobile-phone-number-as-subscriber.html).

Der gesamte Beispielcode für die AWS SDK für PHP ist [hier verfügbar. GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/php/example_code)

## Anmeldeinformationen
<a name="examplecredentials"></a>

Bevor Sie den Beispielcode ausführen, konfigurieren Sie Ihre AWS Anmeldeinformationen wie unter beschrieben[Authentifizierung AWS mit AWS SDK für PHP Version 3](credentials.md). Importieren Sie dann die AWS SDK für PHP, wie unter beschrieben[Installation der AWS SDK für PHP Version 3](getting-started_installation.md).

## Holen Sie sich SMS-Attribute
<a name="get-sms-attributes"></a>

Um die Standardeinstellungen für SMS-Nachrichten abzurufen, verwenden Sie den SMSAttributes Vorgang [Abrufen](https://docs.aws.amazon.com/sns/latest/api/API_GetSMSAttributes.html).

In diesem Beispiel wird das `DefaultSMSType`-Attribut abgerufen. Dieses Attribut steuert, ob SMS-Nachrichten als `Promotional` oder als `Transactional` gesendet werden. Im ersten Fall wird die Nachrichtenzustellung im Hinblick auf die Kosten und im zweiten Fall im Hinblick auf höchste Zuverlässigkeit optimiert.

 **Importe** 

```
require 'vendor/autoload.php';

use Aws\Exception\AwsException;
use Aws\Sns\SnsClient;
```

 **Beispiel-Code** 

```
$SnSclient = new SnsClient([
    'profile' => 'default',
    'region' => 'us-east-1',
    'version' => '2010-03-31'
]);

try {
    $result = $SnSclient->getSMSAttributes([
        'attributes' => ['DefaultSMSType'],
    ]);
    var_dump($result);
} catch (AwsException $e) {
    // output error message if fails
    error_log($e->getMessage());
}
```

## SMS-Attribute festlegen
<a name="set-sms-attributes"></a>

Verwenden Sie den SMSAttributes Vorgang [Set](https://docs.aws.amazon.com/sns/latest/api/API_SetSMSAttributes.html), um die Standardeinstellungen für SMS-Nachrichten zu aktualisieren.

In diesem Beispiel wird das `DefaultSMSType`-Attribut auf `Transactional` festgelegt. Damit wird die Nachrichtenzustellung im Hinblick auf höchste Zuverlässigkeit optimiert.

 **Importe** 

```
require 'vendor/autoload.php';

use Aws\Exception\AwsException;
use Aws\Sns\SnsClient;
```

 **Beispiel-Code** 

```
$SnSclient = new SnsClient([
    'profile' => 'default',
    'region' => 'us-east-1',
    'version' => '2010-03-31'
]);

try {
    $result = $SnSclient->SetSMSAttributes([
        'attributes' => [
            'DefaultSMSType' => 'Transactional',
        ],
    ]);
    var_dump($result);
} catch (AwsException $e) {
    // output error message if fails
    error_log($e->getMessage());
}
```

## Prüfen Sie, ob sich eine Telefonnummer abgemeldet hat
<a name="check-if-a-phone-number-has-opted-out"></a>

Verwenden Sie den [CheckIfPhoneNumberIsOptedOut](https://docs.aws.amazon.com/sns/latest/api/API_CheckIfPhoneNumberIsOptedOut.html)Vorgang, um festzustellen, ob der Inhaber einer bestimmten Telefonnummer den Empfang von SMS-Nachrichten von Ihrem Konto abgelehnt hat.

In diesem Beispiel folgt die Telefonnummer dem E.164-Format, einem Standard für die internationale Schreibweise für Telefonnummern.

 **Importe** 

```
require 'vendor/autoload.php';

use Aws\Exception\AwsException;
use Aws\Sns\SnsClient;
```

 **Beispiel-Code** 

```
$SnSclient = new SnsClient([
    'profile' => 'default',
    'region' => 'us-east-1',
    'version' => '2010-03-31'
]);

$phone = '+1XXX5550100';

try {
    $result = $SnSclient->checkIfPhoneNumberIsOptedOut([
        'phoneNumber' => $phone,
    ]);
    var_dump($result);
} catch (AwsException $e) {
    // output error message if fails
    error_log($e->getMessage());
}
```

## Rufnummern auflisten, von denen Sie sich abgemeldet haben
<a name="list-opted-out-phone-numbers"></a>

Verwenden Sie den Vorgang, um eine Liste mit Telefonnummern abzurufen, für die der Eigentümer den Empfang von SMS-Nachrichten von Ihrem Konto deaktiviert hat. [ListPhoneNumbersOptedOut](https://docs.aws.amazon.com/sns/latest/api/API_ListPhoneNumbersOptedOut.html)

 **Importe** 

```
require 'vendor/autoload.php';

use Aws\Exception\AwsException;
use Aws\Sns\SnsClient;
```

 **Beispiel-Code** 

```
$SnSclient = new SnsClient([
    'profile' => 'default',
    'region' => 'us-east-1',
    'version' => '2010-03-31'
]);

try {
    $result = $SnSclient->listPhoneNumbersOptedOut();
    var_dump($result);
} catch (AwsException $e) {
    // output error message if fails
    error_log($e->getMessage());
}
```

## In einer Textnachricht (SMS-Nachricht) veröffentlichen
<a name="publish-to-a-text-message-sms-message"></a>

Um eine Textnachricht (SMS-Nachricht) direkt an eine Telefonnummer zu senden, verwenden Sie die Operation [Publish](https://docs.aws.amazon.com/sns/latest/api/API_Publish.html).

In diesem Beispiel folgt die Telefonnummer dem E.164-Format, einem Standard für die internationale Schreibweise für Telefonnummern.

SMS-Nachrichten können bis zu 140 Byte enthalten. Für die veröffentlichte und in mehreren Teilen versendete SMS-Nachricht gilt eine Größenbegrenzung von 1 600 Byte.

Weitere Informationen zum Senden von SMS-Nachrichten finden Sie unter [Senden einer SMS-Nachricht](https://docs.aws.amazon.com/sns/latest/dg/sms_publish-to-phone.html).

 **Importe** 

```
require 'vendor/autoload.php';

use Aws\Exception\AwsException;
use Aws\Sns\SnsClient;
```

 **Beispiel-Code** 

```
$SnSclient = new SnsClient([
    'profile' => 'default',
    'region' => 'us-east-1',
    'version' => '2010-03-31'
]);

$message = 'This message is sent from a Amazon SNS code sample.';
$phone = '+1XXX5550100';

try {
    $result = $SnSclient->publish([
        'Message' => $message,
        'PhoneNumber' => $phone,
    ]);
    var_dump($result);
} catch (AwsException $e) {
    // output error message if fails
    error_log($e->getMessage());
}
```