ショコラ
LaravelでAWS SNSを使用するには?
aws-sdk-php のパッケージをインストールしてコマンド実行してください。
もっさん先輩
このコマンドで aws-sdk-php のパッケージをインストールします。
composer require aws/aws-sdk-php
app/Console/Commands/AwsSns.php を作成する。
<?php
namespace App\Console\Commands;
use Illuminate\Console\Command;
class AwsSns extends Command
{
protected $signature = 'aws-sns';
protected $description = 'メッセージを送ります';
public function handle()
{
$SnSclient = new \Aws\Sns\SnsClient(array(
'version' => '2010-03-31',
'region' => 'ap-northeast-1',
'credentials' => array(
'key' => 'xxx',
'secret' => 'xxx',
),
));
$message =<<<MESSAGE
(メッセージ)
MESSAGE;
$tel = '+818012345678';
try {
$result = $SnSclient->SetSMSAttributes([
'attributes' => [
'DefaultSMSType' => 'Transactional',
],
]);
$result = $SnSclient->publish([
'Message' => $message,
'PhoneNumber' => $tel,
]);
if ('200' != $result['@metadata']['statusCode']) {
throw new err('エラー');
}
}
catch ( Exception $e ) {
// エラー処理
}
}
}
以上