* 仕様書

[REFS[
- [1] [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#section-5.3>
]REFS]

* 意味

[4] 
[RUBYB[緊急度][urgency]]を示します。
[SRC[>>1 5.3.]]

[2] 
[[プッシュメッセージ]]には緊急度を設定できます。
資源の乏しい装置では節約のため重要な[[プッシュメッセージ]]を優先的に受信したいことがあり、
緊急度を利用できます。
[SRC[>>1 5.3.]]

* 文脈

[3] 
[[Web Push]] [[アプリケーションサーバー]]は、
[[プッシュ資源]]への[[要求]]に、
[[プッシュメッセージ]]の緊急度を示す
[CODE[Urgency:]] 
[[ヘッダー]]を指定できます。
指定無き場合の既定値は
[CODE[normal]] です。
[SRC[>>1 5.3.]]

[6] 
[[利用者エージェント]]は、
[[プッシュメッセージ]]の監視の際、
受信したい最低緊急度を示す
[CODE[Urgency:]]
[[ヘッダー]]を指定できます。
指定無き場合は制限なしです。
[SRC[>>1 5.3., 6., 6.1.]]
[SEE[ [[プッシュメッセージ購読]]、[[プッシュメッセージ購読集合]] ]]

* 構文

[8] 次の値のいずれかを指定できます。
[[ASCII大文字・小文字不区別]]です。
[SRC[>>1 5.3.]]

[FIG(table)[

:v: 値
:s: 配送状態
:x: 利用例

:v: [DFN[[CODE[very-low]]]]
:s: [[電源]]接続中かつ [[Wi-Fi]] 接続あり
:x: [[広告]]

:v: [DFN[[CODE[low]]]]
:s: [[電源]]接続中または [[Wi-Fi]] 接続中
:x: 新しい話題

:v: [DFN[[CODE[normal]]]]
:s: [[電源]]も [[Wi-Fi]] もない
:x: [[チャット]]や[[カレンダー]]の通知

:v: [DFN[[CODE[high]]]]
:s: [[バッテリー]]低残量
:x: [[電話]]着信、
[[時刻]]が重要なお知らせ

]FIG]

[9] 
[[複数指定][# (HTTP)]]しては[MUST[なりません]]
p[SRC[>>1 5.3.]]。

* 処理

[5] [[プッシュサービス]]は、[[プッシュメッセージ]]に指定された
[CODE[Urgency:]] [[ヘッダー]]を[[利用者エージェント]]に[[転送]]しては[MUST[なりません]]
[SRC[>>1 5.3.]]。

[7] 
[[プッシュサービス]]は、
[[利用者エージェント]]から 
[CODE[Urgency:]]
を指定された時、
それ未満の緊急度の[[プッシュメッセージ]]を配送しては[MUST[なりません]]。
[SRC[>>1 5.3., 6., 6.1.]]

[10] 
[[複数指定][# (HTTP)]]されたとき、
[CODE[400]]
[[応答]]を返さなければ[MUST[なりません]]
[SRC[>>1 5.3.]]。

[11] 
未知の値が指定された時の扱いは不明です。

* メモ