AWSでSMSを送信するためにはどうすればいいですか?(MEMO)

USER

AWSでSMSを送信するためにはどうすればいいですか?

ASSISTANT

AWSでは、AWS SNS(Amazon Simple Notification Service)を使用してSMSを送信することができます。以下は、AWS SNSを使用してSMSを送信するための基本的な手順です。

  1. AWSコンソールにログインして、SNSを開きます。
  2. 「トピックの作成」をクリックして、SMSを送信するためのトピックを作成します。
  3. 「サブスクリプションの作成」をクリックして、SMSを受信する電話番号を入力します。
  4. 「トピックの詳細」で、「テキストメッセージ(SMS)の送信」を選択します。
  5. 必要な情報を入力し、メッセージを送信します。

AWS SNSを使用するには、AWSアカウントが必要であり、AWS SNSが有効になっていることが前提となります。また、SMSの送信には、AWS SNSがサポートしている国と地域において、サポートされるキャリアが必要です。詳細については、AWS SNSのドキュメントを参照してください。

USER

たとえば、09012345678に「おはようございます!」というSMSを送る、PHPでのサンプルコードはありますか?

ASSISTANT

はい、AWS SDK for PHPを使用して、PHPでAWS SNSを介してSMSを送信することができます。以下は、指定した電話番号に対して「おはようございます!」というSMSを送信するためのサンプルコードです。

// AWS SDK for PHPを読み込みます
require 'aws/aws-autoloader.php';

use Aws\Sns\SnsClient;

// SNSクライアントを設定します
$client = new SnsClient([
    'version' => 'latest',
    'region' => 'us-east-1', // リージョンを設定します
    'credentials' => [
        'key' => 'AWS_ACCESS_KEY_ID',
        'secret' => 'AWS_SECRET_ACCESS_KEY',
    ],
]);

// SMSを送信する電話番号を指定します
$phoneNumber = '+819012345678';

// メッセージを設定します
$message = 'おはようございます!';

// SMSを送信します
$result = $client->publish([
    'Message' => $message,
    'PhoneNumber' => $phoneNumber,
]);

// 結果を表示します
echo "SMSを送信しました。Message ID: {$result['MessageId']}";

このコードでは、AWS SDK for PHPを読み込んでSNSクライアントを設定し、$phoneNumber変数に送信先の電話番号を指定し、$message変数にメッセージ本文を設定しています。publishメソッドを使用してSMSを送信し、結果を表示しています。なお、AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEYは、AWSアカウントにアクセスするためのアクセスキーとシークレットアクセスキーに置き換える必要があります。

タイトルとURLをコピーしました