FCM(Firebase Cloud Messaging) を利用している iOS アプリは普通 FCM から通知を行いますが、Amazon SNS の GCM プラットフォームアプリケーションを FCM の Server Key を登録して作成し、その GCM プラットフォームアプリケーションに FCM の Remote Instance ID token をエンドポイントとして登録し、SNS から FCM を経由して iOS にプッシュ通知を送信するという芸当が可能です。
何を言っているのか意味不明だと思うので図説すると次のような構造です(図にすると単純)
Amazon SNS(GCM Platform Application) -> FCM -> iOS
FCM の公式ドキュメント: iOS に Firebase Cloud Messaging クライアント アプリを設定する を眺めながら FCM プロジェクトの作成
アプリケーションの作成で GCM を選択しつつ FCM の Server Key を認証情報として使う
iOS アプリをデバイスにインストールし、Remote Instance ID token をぶっこぬき、GCM プラットフォームアプリケーションのエンドポイントとして登録する
以下のような内容のペイロードを対象エンドポイントに送信すると通知が飛ぶ(デバイスのプッシュ通知を許可しておく必要がある)
{ "GCM": "{\"notification\":{\"body\":\"Hello, World!\"}}" }
Pinpoint から FCM 経由で APNs エンドポイントへ配信する場合は下記のようなペイロードを使う
{ "GCMMessage": { "notification": { "body": "Hello, World!" } } }
ウェブ界隈でエンジニアとして労働活動に励んでいる @gomi_ningen 個人のブログです