Push7 SDKの高度な利用
このページではPush7 SDKの高度な利用方法についてご紹介します。
Normal・Native共通の設定項目
多言語対応・ローカライズ
Push7 SDKの初期化時に第二引数を設定、内部でlang
キーにパスを指定することによって、明示的に特定の言語設定のPush7 ButtonやPush7 Boxなどのウィジェットを表示することが可能です。
Push7によって提供されるウィジェットは、原則として全てブラウザの言語設定に合わせてen
とjp
を切り替えるため、通常の利用ではこの設定は不要です。
p7.init(
YOUR_APP_NO,
{
mode: 'native',
lang: 'en'
});
Nativeモード限定の設定項目
Push7 SDKでは、Nativeモードにて稼働時に、より高度な設定を行うことが可能です。
追加設定の中には、パラメータ配信対応や、購読許可の取得の遅延などがあり、より柔軟なPush7の利用に貢献します。
サブディレクトリ構成のWebサイトでのService Worker設定
Nativeモードで利用されるService Workerは、通常はドメイン直下に配置することを想定していますが、オプションを指定することにより、サブディレクトリで構成されているWebサイトにおいても、サイトごとに分けて導入することが可能となります。
このドキュメントのように、/docs/
となっている場合、メディアなどで/blog/
を利用している場合などに有効です。
Service Workerの読み込みディレクトリを変更
Push7 SDKの初期化時に第二引数を設定、内部でroot
キーにパスを指定することによって、そのディレクトリに存在するService Workerを参照するように設定可能です。
例えば、下記のようにして/blog/
を指定した場合は/blog/
直下に設置されたService Workerを参照します。
p7.init(
YOUR_APP_NO,
{
mode: 'native',
root: '/blog/'
}
);
任意なタイミングでの購読ポップアップの表示
手動購読用の初期化
Push7 SDKの初期化時に第二引数を設定、内部でsubscribe
キーをmanual
にすることによって、明示的にsubscribeが呼ばれるまで購読処理を遅延することができます。
これを行うことで、訪問時すぐに購読の選択をさせるのではなく、例えば購読するボタンなどを押した時に限ってオプトイン処理を行うことなどが可能となり、機会損失を防ぐことが可能です。
p7.init(
YOUR_APP_NO,
{
mode: 'native',
subscribe: 'manual'
}
);
手動での購読処理の実行
次に、p7.subscribe()
を実行することにより、購読処理を行うことが可能です。
この際、事前にp7.readyを実行し、初期化済みであることを確認後にsubscribeを行ってください。
document.querySelector("#subscribe_button").addEventListener("click", ()=>{
p7.ready().then(()=>{
p7.subscribe();
})
});
サンプル
以下のボタンを押すことで、明示的なsubscriptionを体験することが可能です。
パラメータ操作について
Push7では、エンタープライズ向けに、購読者に対してパラメータを付与し、パラメータごとにセグメントを切った配信などを可能とするためのパラメータ操作APIがあります。
これは例えば会員DBと連携しユーザ個別のWebプッシュ通知を配信したり、メディアサイトなどでカテゴリごとに分けたWebプッシュ通知を配信するといったユースケースに用いられます。
Push7 SDKでは、パラメータの追加・削除・一覧の表示といったパラメータの操作を行うことができます。
詳しくはパラメータ操作APIのセクションでご紹介します。