[34] プッシュサービスは、 アプリケーションサーバーから利用者エージェントへのプッシュメッセージを媒介するサーバーです。
[2] Web Push のプッシュサービスは、 プッシュメッセージを利用者エージェントに配送するサービスです。 >>1 1.1.
[35] Push API のプッシュサービスは、 アプリケーションサーバーが Webアプリケーションにプッシュメッセージを送信できるようにするシステムです。 プッシュサービスは、 その供給するプッシュ購読に関するプッシュエンドポイント(群)を供給するものです。 >>33
[4] プッシュサービスは、 RFC 2818 HTTPS を使い、 RFC 7525 の推奨に従わなければなりません。 >>1 3., 8.
[6] プッシュサービスは、 HTTPS と同じ既定のポート番号 443 を使います。 >>1 3.
[5] プッシュサービスは、 IANA に登録されている TCP システムポート 1001 を HTTP代替サービスとして広告して構いません。 >>1 3.
[7] 443 は到達性が高いですが、 middlebox では一般的な Web 閲覧用に低い idle timeout に設定されがちです。 Web Push の場合、これでは接続を維持するため無駄な通信が必要で、 電力消費につながり好ましくありません。 mjddlebox は代替ポート 1001 を低頻度の通信に適した idle timeout に設定できるというわけです。 middlebox は RFC 5382 REQ-5 すなわち established connection idle-timeout は2時間4分より小さくてはならない、 に従うべきです。 >>1 3.
[25] 負荷対策のため HTTP代替サービスを使い、
同じ URL のまま他のサーバーにアクセスを求めることもできます。
その場合、
利用者エージェントは新たな接続を確立してから元の接続に
GOAWAY
を送信し、華麗に移行できます。
>>1 7.1.
[37] プッシュサービスのエンドポイント (資源) はいくつかありますが、プッシュサービス資源以外は、 直接、間接にプッシュサービス資源から得られるものです。 そこでまずプッシュサービス資源の URL を知る必要があります。
[8] プッシュサービス資源の URL は、利用者エージェントが保持しています >>1 2.1.。 利用者エージェントは、 性能その他の要件に見合うプッシュサービスに選択を制限して構いません >>33。
[38] 一般的には、 Webブラウザー事業者がプッシュサービスを運営していて、 Webブラウザーには当該プッシュサービスを利用する設定が組み込まれています。 利用者やアプリケーションがこれを変更することはできません。
[40]
プッシュサービスは、
VAPID を必須とするか否かを選択できます。
利用者エージェントは事前にこれを知っておく必要があります。
[3] プッシュサービスは、 プッシュサービス資源を持ちます。 プッシュサービス資源は、 プッシュメッセージ購読を作成するために使います >>1 2.1.。
[9]
利用者エージェントは、
プッシュサービス資源に POST
要求を送信して、
プッシュ購読を作成できます。