11
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

メタップスAdvent Calendar 2020

Day 19

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

Last updated at Posted at 2020-12-18

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は一番使いやすいです。

以上

11
3
0

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
  3. You can use dark theme
What you can do with signing up
11
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?