USER
AWSでSMSを送信するためにはどうすればいいですか?
ASSISTANT
AWSでは、AWS SNS(Amazon Simple Notification Service)を使用してSMSを送信することができます。以下は、AWS SNSを使用してSMSを送信するための基本的な手順です。
- AWSコンソールにログインして、SNSを開きます。
- 「トピックの作成」をクリックして、SMSを送信するためのトピックを作成します。
- 「サブスクリプションの作成」をクリックして、SMSを受信する電話番号を入力します。
- 「トピックの詳細」で、「テキストメッセージ(SMS)の送信」を選択します。
- 必要な情報を入力し、メッセージを送信します。
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_ID
とAWS_SECRET_ACCESS_KEY
は、AWSアカウントにアクセスするためのアクセスキーとシークレットアクセスキーに置き換える必要があります。