vapid

プッシュサービス

[34] プッシュサービス (push service) は、 アプリケーションサーバーから利用者エージェントへのプッシュメッセージを媒介するサーバーです。

仕様書

意味

[2] Web Pushプッシュサービス (push service) は、 プッシュメッセージ利用者エージェントに配送するサービスです。 >>1 1.1.

[35] Push APIプッシュサービス (push service) は、 アプリケーションサーバーWebアプリケーションプッシュメッセージを送信できるようにするシステムです。 プッシュサービスは、 その供給するプッシュ購読に関するプッシュエンドポイント(群)を供給するものです。 >>33

プロトコル

[4] プッシュサービスは、 RFC 2818 HTTPS を使い、 RFC 7525 の推奨に従わなければなりません>>1 3., 8.

[6] プッシュサービスは、 HTTPS と同じ既定のポート番号 443 を使います。 >>1 3.

[5] プッシュサービスは、 IANA に登録されている TCP システムポート 1001HTTP代替サービスとして広告して構いません>>1 3.

[7] 443 は到達性が高いですが、 middlebox では一般的な Web 閲覧用に低い idle timeout に設定されがちです。 Web Push の場合、これでは接続を維持するため無駄な通信が必要で、 電力消費につながり好ましくありません。 mjddlebox は代替ポート 1001 を低頻度の通信に適した idle timeout に設定できるというわけです。 middleboxRFC 5382 REQ-5 すなわち established connection idle-timeout は2時間4分より小さくてはならない、 に従うべきです>>1 3.


[25] 負荷対策のため HTTP代替サービスを使い、 同じ URL のまま他のサーバーにアクセスを求めることもできます。 その場合、 利用者エージェントは新たな接続を確立してから元の接続GOAWAY を送信し、華麗 (graceful) に移行できます。 >>1 7.1.

発見

[37] プッシュサービスエンドポイント (資源) はいくつかありますが、プッシュサービス資源以外は、 直接、間接にプッシュサービス資源から得られるものです。 そこでまずプッシュサービス資源URL を知る必要があります。

[8] プッシュサービス資源URL は、利用者エージェントが保持しています >>1 2.1.利用者エージェントは、 性能その他の要件に見合うプッシュサービスに選択を制限して構いません >>33

[38] 一般的には、 Webブラウザー事業者プッシュサービスを運営していて、 Webブラウザーには当該プッシュサービスを利用する設定が組み込まれています。 利用者アプリケーションがこれを変更することはできません。

[40] プッシュサービスは、 VAPID を必須とするか否かを選択できます。 利用者エージェントは事前にこれを知っておく必要があります。 subscribe

エンドポイント

[10] プッシュサービスには次の資源が規定されています。

[11] プッシュサービス

プッシュサービス資源

[3] プッシュサービスは、 プッシュサービス資源 (push service resource) を持ちます。 プッシュサービス (push service) 資源は、 プッシュメッセージ購読を作成するために使います >>1 2.1.

[9] 利用者エージェントは、 プッシュサービス資源POST 要求を送信して、 プッシュ購読を作成できます。 プッシュ購読の作成

API

PushManager

メモ