LoginSignup
3

More than 1 year has passed since last update.

posted at

updated at

Organization

AWSでプッシュ通知の送る方法

AWSでプッシュ送りたいであれば、サービスは2件あります:

  • SNS (Simple Notification Service)
  • Pinpoint

SNS

SNSの中でも2パターンが存在してます、ユーザーを一人一人にプッシュを送信するかユーザーをTOPICに登録して、そのTOPICに送信する。

Screenshot 2020-12-18 at 14.39.19.png

Snsの流れ

SNSでアプリをApplicationを作成して、そのApplicationにエンドポイント(ユーザーのDeviceToken)を登録して、そのエンドポイントを送信する。送信後はSNSにそのユーザーに送信出来たかどうかの確認する。一人一人のユーザーに送信したいならSNSのソフトリミットは1秒1500件を送ります。

でも1<>1の送信だけではなくてTopicにも送信出来ます。

TOPICとは?

Topicは送信先のエンドポイントです、120万エンドポイントまで登録出来るエンドポイントです。エンドポイントはSNSの中で「送信出来る場所」になります。
たとえば、このアプリは100ユーザーを使ってます、プッシュ通知を送りたいならユーザーをSNSのApplicationに登録して、一人一人に送信するですが、もっと早い方法欲しいであれば、Applicationに登録する時はその1エンドポイントをTopicにsubscribeすることです。100ユーザーをsubscribeするなら、Topicに送信する時は1リクエストで100ユーザーに送信出来ます。

それは100ユーザーでも、100万ユーザーでも変わらないです!

Screenshot 2020-12-18 at 16.58.41.png

Topicのいいところは送信速度早いとAWSのApiを1回のみです。

pinpoint

Pinpointはお話題になったサービスで、今年に日本で使えるようになりました!SNSと違って、一気に100ユーザーを登録して、一気にプッシュ出来ます!

pinpointのプッシュ流れはシンプル、セグメントを作成して、セグメント作成する時はユーザーのファイルをインポートする
Screenshot 2020-12-18 at 16.09.33.png

ファイルのサンプル

import.csv :
ChannelType,Address,Location.Country,Demographic.Platform,Demographic.Make,User.UserId
APNS,482aba02e7da338707541bb4c4a570b0ec090b8b0001b28ae1634ee680f2cbc4,JP,iOS,Apple,255830951

ユーザーのdeviceTokenとプラットフォームと他の情報で組み合わせのCSVやJsonです。

セグメント作成したあとはそのセグメントに対してキャンペーンを作成して、プッシュの設定をして(タイトルとメッセージ)と送信の設定(繰り返し送信などは出来ます)をして終わりです!

Screenshot 2020-12-18 at 16.23.25.png

送信速度も早い、1秒2万件送信されてます。

だが、

Screenshot 2020-12-18 at 16.26.04.png

送信率をもらえますが、誰に送信出来たか出来てないは出来ません。どこのユーザーをアンインストールしたどかも出来ません。Pinpointと言う名前なのにユーザーを特定出来ないは微妙ですね...その上、安いSNSに対しては大きなユーザー数あればPinpointは高いです。
https://aws.amazon.com/jp/pinpoint/pricing/

通知 100 万件までは無料、その後は通知 100 万件あたり 1 USD。
MTA の 5,000 エンドポイントまでは無料、その後は 1,000 エンドポイントあたり 1.20 USD。

なので1プッシュで200万ユーザーなら1ヶ月2400ドルになります。自分の使い方としてならPinpointは合わないです、地裁ユーザーベースでたくさんのプッシュ送りたいなら出来そうです。

SNSーPinpoint

判断する為に200万ユーザーを送りたい場合はどれぐらいかかる(送信時間と値段):

Screenshot 2020-12-18 at 16.40.07.png

SNSとpinpointは両方いいところありますが今回の要望としては大きくな対象ユーザーがあれば、Topicは一番使いやすいです。

以上

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
3