OneSignalがシンプルでめちゃめちゃ使いやすかったので備忘録メモにぶっこみます。
OneSignalとは、ダッシュボードを起点にユーザーにメッセージを送信したり
分析をかけたりできるfirebaseのようなツールです。
今回視野に入れているのは特定の場所に侵入した場合デバイスにメッセージが届くというもの。
特定の場所に到達したらメールを送信するってfirebaseでも同じこといけると思ったのですが
多機能に加えて参考サイトも多かったというのもあり馴染む速度を重視してこちらを検討しております。
あとリファレンスが読みやすい。各デバイスごとにメソッドも全部書いてあって
これならコルドバのプラグインを使ったことがある開発者さんならスムーズに
使うことが出来るなと感じました。
無料なので気軽に使うことができる点も素晴らしいです。
アカウントに関しては、直接本アカウントを作らなくともfacebookかgoogleのアカウントが
あればログインをすることができます。
また、OneSignalはandroid、ios、monaca、cordova、unityといった様々なデバイスやフレームワーク
にも対応しており、メジャーなものは全ておさえられているのも良い点。
前置きが長くなったので以下本題について↓
まず、cordovaで使うにはcordova plugin addでアプリに追加するのが大前提なので以下のようにして導入します。
cordova plugin add onesignal-cordova-plugin --save
ここまでは従来のプラグインと同じ。で実際の処理は、index.jsの中に書いていきます。
document.addEventListener('deviceready', function () { // Enable to debug issues. window.plugins.OneSignal.setLogLevel({logLevel: 6, visualLevel: 0}); var notificationOpenedCallback = function(jsonData) { console.log('notificationOpenedCallback: ' + JSON.stringify(jsonData)); }; window.plugins.OneSignal .startInit("70e59150-f90c-4a4c-97c0-fc000a347a7d") .handleNotificationOpened(notificationOpenedCallback) .endInit(); //window.plugins.OneSignal.promptLocation(); }, false);
このstartinit内の値は、OneSignalのSettingの中のKey & IDsで取得することができます。
Key & IDsが確認できたらOneSignalIDコピーしてstartinitの中に入れます。
プログラミングはこれで終了。後はプラットフォーム(実際に受け取りたいデバイスの設定)
を設定していくのですが、ここではfirebaseComsoleで入手したFirebase Server KeyとFirebase Sender ID
が必要になってくるので持っていない人は登録して確保しておきましょう。プラットフォームの
設定方法にもfirebaseのFirebase Server KeyとFirebase Sender IDの取得方法を
書いているのでそちらを参考にしていただけると幸いです。
以下プラットフォームの設定方法↓
プラットフォームでgoogleAndroidを選択。ここではcordovaを通してandroidで確認するので
androidを選択します。
androidと連動させるには、firebaseComsoleで入手したFirebase Server KeyとFirebase Sender ID
を入力する必要があるのでそれを入れていきましょう。
ない場合は
①firebaseに移動
②アプリ名登録
③登録後プロジェクトの概要の右側の歯車→プロジェクトの設定を押す。
④サーバーkeyと送信者IDををコピーしておく。
コピー後Firebase Server KeyとFirebase Sender IDを入力。
いくつか設問がありますが後は適当にそのままnext→next→savaでプラットフォームの設定は完了です。
androidにおける必須科目はこれで一通りおさえることができました。
次は実際に送信をする方法を書いていきたいと思います。