今回のブログではニフティクラウドmobile backend(以下mBaaS)を使って特定グループや特定ユーザーに配信する方法をご紹介します。 mBaaSについて詳しくはコチラ!
絞り込むことで様々なグループに配信できる。
mBaaSではプッシュ通知のときに配信先となるデバイストークンをデータストアのinstallationクラスで管理しています。このinstallationクラスのカラムをうまく使うことでグループを絞り込むことが出来ます。 絞り込むときはデフォルトで用意されているカラムや自分で定義した独自カラムどちらでも絞り込むことが出来ます。
どんなグルーピングができる?絞り込み例
ここからはmBaaSで行えるグルーピングを紹介します。まずはデフォルトカラム(アプリバージョン別、最終起動日時別)の絞り込み例からです。
アプリのバージョンでグループ分け~appversionで絞り込んだとき~
appversionではアプリのversion情報が挿入されています。各ストアでアプリをアップデートした場合はそれが自動で更新されます。つまりこのカラムで絞り込めばアップデートをしている・していないなどでグループ分けできます。
アプリ起動タイミングでグループ分け~updateDateで絞り込んだとき~
updateDateはデバイストークンの更新日時が挿入されています。このドキュメントどおりにmBaaSのSDKを使うと、アプリ起動時にデバイストークンが更新されますのでユーザーのアプリ起動タイミングが分かります。つまりupdateDateで絞り込むと、アクティブユーザーどうかでグループ分けができます。
独自カラムを設定すれば、自由自在にグルーピングできる
上記で出た方法以外にも、独自にカラムを設定することで以下のグルーピングを行えます。
- 性別・年齢
- 興味があるジャンルの通知を選択したユーザー(例:ゲームアプリで「イベントのお知らせ」を選択したユーザー)
実際に実装してみましょう!
installationに新たなカラムを加えるのは難しい内容になりますが、スマホアプリから自由にグループを設定できるサンプルコードへのリンクを以下にご用意していますのでそちらをクリックして、絞込みによるグループ配信を実際に試してください!
- 【iOS Objective-C】個別、グループごとに絞り込んでプッシュ通知を送ろう!
- 【iOS Swift】個別、グループごとに絞り込んでプッシュ通知を送ろう!
- 【Android】個別、グループごとに絞り込んでプッシュ通知を送ろう!
特定ユーザーへの個別配信の方法と適切なデザインパターン
絞り込み配信の対象をUUIDなどの一意なキーにすれば特定ユーザーへの個別配信が行えます。独自に一意なキーを設定することでも特定ユーザーへの個別配信が行えますが、mBaaSでお勧めしたいのがdeviceTokenやobjectIdでの絞込みです。この二つは以下の特徴を持っています。
- デフォルトのカラムである
- インデックスが追加済みのカラムであり検索スピードが速い
- 送信対象である端末の発見も早くなり、プッシュ通知の配信速度も高まる
つまりdeviceToken、objectIdを指定することで個別配信を高速に処理できます。
また、個別配信のときはダッシュボードからの配信を行うと、端末の台数分だけ操作を行う必要があり大変面倒です。このような個別配信のときはAWS・さくらVPSなどの別サーバーから自動で配信処理を繰り返したほうが楽だと思います。
そんなアナタにサーバー環境で使えるサンプルコードをご用意しました。PHPでコーディングしているので多くの方に使っていただきやすいコンテンツです!以下のリンクをクリックしてぜひご活用ください!