/
812.txt
82 lines (63 loc) · 3.46 KB
/
812.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
* 仕様書
[REFS[
- [2] [CITE@en[RFC 8030 - Generic Event Delivery Using HTTP Push]], [TIME[2020-03-09 00:13:33 +09:00]] <https://tools.ietf.org/html/rfc8030>
]REFS]
* 意味
[3]
[DFN[[RUBYB[プッシュメッセージ購読][push message subscription]]]]は、
[[利用者エージェント]]と[[プッシュサービス]]の間で確立された[RUBYB[メッセージ配送文脈][message delivery context]]であって、
[[アプリケーションサーバー]]と共有されるものです。
[[プッシュメッセージ]]はすべてある[[プッシュメッセージ購読]]と関連付けられています。
[SRC[>>2 1.1.]]
[4] [[プッシュメッセージ購読集合]]の[[要素]]です。
[5] [[RFC 8030]] が [DFN[message subscription]]、
[DFN[subscription]] とだけ言っているものも、
[[プッシュメッセージ購読]]を意味すると思われます。
* プロトコル
[8]
まず、[[利用者エージェント][利用者エージェント (プッシュ)]]は、
新しい[[プッシュメッセージ購読]]を作成し、
[[アプリケーションサーバー][アプリケーションサーバー (プッシュ)]]へ配布します。
[SRC[>>2 2.]]
[9]
[[アプリケーションサーバー]]は、
[[プッシュメッセージ購読]]を使って、
[[利用者エージェント]]に配送する[[プッシュメッセージ]]を、
[[プッシュサービス]]へと送信します。
[SRC[>>2 2.]]
[10]
[[利用者エージェント]]は、
[[プッシュメッセージ購読]]を使って、
到着[[プッシュメッセージ]]がないか[[プッシュサービス]]を[RUBYB[監視][monitor]]します。
[SRC[>>2 2.]]
[11]
[[プッシュメッセージ購読]]は[[アプリケーション]]に、
1対1で配布して使うことが期待されています。
しかしこれはプロトコル上の制約ではなく、
1つの[[アプリケーション]]が複数の[[プッシュメッセージ購読]]を作ることもできますし、
複数の[[アプリケーション]]が1つの[[プッシュメッセージ購読]]を共有することもできます。
ただ、共有すると[[セキュリティー]]や[[プライバシー]]の問題になりかねないことには要注意です。
[SRC[>>2 2.]]
[12]
[[プッシュメッセージ購読]]には[RUBYB[寿命][lifetime]]制限があります。
[[プッシュサービス]]や[[利用者エージェント]]は、
いつでも終端させられます。
[[利用者エージェント]]や[[アプリケーションサーバー]]は、
これに対応する準備が必要です。
[SRC[>>2 2.]]
-*-*-
[6]
[DFN[[RUBYB[購読資源][subscription resource]]]]は、
[[プッシュメッセージ購読]]から[[プッシュメッセージ]]を受信したり、
[[プッシュメッセージ購読]]を削除したりするため使います。
[[利用者エージェント]]にのみ使えるものです。
[SRC[>>2 2.]]
[7]
[DFN[[RUBYB[プッシュ資源][push resource]]]]は、
[[プッシュメッセージ購読]]に[[プッシュメッセージ]]を送信するために使います。
[[利用者エージェント]]と[[アプリケーションサーバー]]とで共有されます。
[SRC[>>2 2.]]
* 歴史
[1] [CITE@en[Define exposure of the Push API interfaces]]
([[beverloo]]著, [TIME[2017-05-04 01:32:20 +09:00]])
<https://github.com/w3c/push-api/commit/350ee328178b1635f141412831892b16cb711305>