AWS SNS を使用してプッシュ通知を送信しています。現在、特定のデバイスをプッシュするpublish
方法を使用しています。私の要件は、30 秒以内に何千ものメンバーにプッシュ送信されます。パブリッシュ メソッドを使用した場合、1000 人のユーザーを送信するのに 5 分かかりました。一度に複数のメンバーを送信することについて読んだことがありますが、私のシナリオは、すべてのトピック ユーザーではなく、特定のユーザーにプッシュを送信したいということです。aws-php-sdk
topic
たとえば、1 つのトピックに 10,000 人のメンバーを登録しますが、この 10,000 から、ある時点で 9000 人、時には 1000 人のメンバーを送信します。
したがって、トピックを使用して特定のメンバーのみをプッシュする方法は誰でも知っています。
別のケースも考えられます.新しいトピックを作成してこのトピックにメンバーを登録し、彼にメッセージを送信してから削除するtopic
たびに、メンバーを登録するたびに時間がかかります. 一度に複数のメンバーを登録するアイデアがある場合は、それも役に立ちます。
以下は、プッシュを送信する現在のコードです。
$arn = "user arn";
$sns = new Aws\Sns\SnsClient(array(
'version' => 'latest',
'key' => my_aws_key,
'secret' => aws_secret,
'region' => region,
'profile' => profile_name,
'debug' => false,
'http' => array('verify' => false)
));
$appArn = "application arn";
$sns->publish(array('Message' => '{ "GCM": "{\"data\": { \"message\": \" This is my message \"} }"}',
'MessageStructure' => 'json',
'TargetArn' => $arn
));