ニフクラmBaaSお役立ちブログ

スマホアプリ開発にニフクラmBaaS。アプリ開発に役立つ情報をおとどけ!

こんな無茶振りされたらどうする?プッシュ通知のグループ配信、色んな絞込み条件を試してみた!

みなさん、こんにちは! プッシュ通知使っていますか??

「こういう人たちにプッシュ通知を送っといて!」と言われたものの、「あれ?この条件で絞込みをする時ってどうすれば良いんだろう?」と考えたことはありませんか?何となく、設定をするのが面倒くさそう、と思っている方もいるのではないでしょうか。

今日は、ニフティクラウド mobile backendのinstallationクラスの既存フィールドを利用するだけで、簡単に、色んな絞り込み条件でグループ配信・個別配信を行う方法についてお話いたします!

よくあるお悩みをベースにご紹介していきます。

アップデートしてない人に、アップデートを促したい!

→appVersionやsdkVersionを使うべし!

appVersion、sdkVersionは名前の通り、アプリのバージョンやSDKバージョンのこと。このバージョンが低いということは、ユーザーがアップデートを行っていないことを意味しています。アプリのパフォーマンスを改善するようなアップデートを行ったのに、ユーザーがアップデートしてくれないと、ちょっと寂しいし、もったいないですよね。そんな時は、appVersionが最新ではないユーザーにだけプッシュ通知を送りましょう。

img_00_1104

 

img_01_1104

最新じゃないユーザーにだけに配信することも出来ますし、一定以下のバージョンのユーザーを指定することも出来ます。

▲▲代の人と女性にだけ配信・・・ってできない?○○と××のジャンルに興味を持っているユーザーにだけ配信したい

→channelsを使ってみましょう!

channelsというフィールドがありますが、使い方が分からない・・・という方もいるんじゃないでしょうか。このフィールドは、配列を入れることが出来るのですが、基本的に使い方は自由です。よく使われる例を見てみましょう。

例1)ユーザーの情報を入れる

[woman,20,tokyo]

女性、20代、東京・・・といったプロフィール情報をchannnelsに一気に入れる例です。OR条件で、「東京在住」の人と、「女性」だけにプッシュ通知を送る、など、複数の属性にプッシュ通知を送りたい、といったときに利用ができます。

img_02_1104

img_03_1104

例2)ユーザーが加入しているグループの情報を入れる

[music,fashion,movie] [fashion,movie,sports]

ニュースアプリなどで、ユーザーが興味のある情報を入力する例です。「音楽」と「ファッション」に興味のあるユーザーにだけ配信を行う、といったことができます。

このように絞り込むと・・・

img_04_1104

水色のユーザーにだけ配信されます。

segmentchannels

 

iPhoneユーザー/Androidユーザーにだけ配信したい・・・

→deviceTypeで絞り込もう!

deviceTypeには、iOSやAndroidといった、ユーザーが使用している端末のOS情報が格納されます。appStore(Google Play)で、新しくアップデートしたアプリがリリースされたので、iOS(Android)ユーザーにだけ通知を送りたい!という場合は、deviceTypeで分けてプッシュ通知を送ると良いでしょう。

通知を読まないユーザーには送りたくない

→badgeの数値で判定!

iOSユーザーはお馴染みの「バッジ」の数が入るフィールドがbadgeです。badgeはユーザーの端末がiOSのときのみ有効です。

img_06_1104

バッジの数=通知の未読件数ですから、数が大きければ多いほど、そのユーザーが通知を読んでいないことを意味しています。プッシュ通知も、リソースを上手く使って開封率の高いユーザーに効果的に配信したい!と思っている方もきっと多いのではないでしょうか? そんな方にはぜひ、badgeで絞込みをした配信をすることをオススメします!画像ではbadgeを30未満にしましたが、プッシュ通知を配信する頻度に合わせて適宜変えて配信してみましょう!

img_07_1104

起動していないユーザーにアプリ復帰を促す →updateDateを使おう!

updateDateは、ユーザーのアプリ最終起動日が格納されています。アップデートをした日ではないので注意!1週間以上起動していないユーザーにだけプッシュを送ったり、1日起動していない人にはこの通知、2日起動していない人にはこの通知・・・という使い方も可能です。

img_08_1104

日本以外で使っているユーザーにだけ通知を送りたい!! →timeZoneで出し分けられます!

アプリのユーザーが海外にもたくさん居るけど、日本語でプッシュ通知を送ってしまって良いのか・・・?とプッシュ通知の配信を躊躇していませんか?そこで、timeZoneというフィールドを使えばユーザーの所在地(国単位)で出し分け配信が可能です。例えば、日本以外のユーザーには英語のプッシュ通知を送る場合はこのような形になります。他にも、中国のユーザーだけ、アメリカのユーザーだけ、という絞込みも可能なので試してみてください!

例えば、日本以外のユーザーには英語のプッシュ通知を送る場合はこのような形になります。

img_09_1104

img_10_1104

 

他にも、中国のユーザーだけ、アメリカのユーザーだけ、という絞込みも可能なので試してみてください!

複数のアプリをmBaaSで管理していて、特定のアプリにだけ通知を送りたい →applicationNameだ!

あまり無いケースかもしれませんが、複数のアプリを1つのmBaaSで管理している場合は、このフィールドで配信端末を分けましょう。

自社の顧客管理基盤で絞り込んで配信したい →objectIdが使えます!

独自で会員管理基盤を持っている場合、mBaaS上の端末情報と結びつけて配信する方法があります。それがobjectIdの活用です。objectIdとは、installationのレコードを管理する一意なIDのことで、各レコードの「名前」のような役割を果たします。

独自会員管理基盤を利用してプッシュ通知を送る場合、 ①DBで顧客属性を絞り込み、②objectIdをクエリに入れ、③サーバーからAPIを叩く、という流れでプッシュ通知を送ることが出来ます。

img_11_1104

いかがでしたでしょうか? 他にもプッシュ通知のtipsが詰まった記事を公開しておりますので、是非ご覧ください!