先訂閱一台裝置的網路類型。裝置在 2G、3G、4G、5G 之間切換時,電信主動通知,附上目前的類型。
A進入 5G 範圍
電信通知5G
裝置改連 5G,電信推送事件,附上目前的類型。
B進入室內改連 4G
電信通知4G
同一種事件,附上新的網路類型 4G。
C達到通知上限
電信通知訂閱結束
通知次數達到設定的上限,訂閱結束並通知原因。
一種事件網路類型一改變就通知,附上目前的類型。
通知上限可以設定通知次數上限,達到後訂閱結束並通知。
連線網路類型訂閱:運作原理
- 建立訂閱服務方送出接收通知的網址與一種事件類型;裝置由授權權杖識別,或在請求中指定。可設定到期時間與通知次數上限。
- 等待事件訂閱生效後,電信持續留意這台裝置連線的網路類型。
- 推送通知事件發生時,電信把通知送到指定的網址;訂閱結束時也會通知。
連線網路類型訂閱:API 規格
規格名稱
Connected Network Type Subscriptions(CAMARA 開源規格)
呼叫方式
POST /subscriptions 建立;GET /subscriptions 列出;GET/DELETE /subscriptions/{subscriptionId} 查詢或刪除輸入
protocol(HTTP)、sink 接收網址、types(一種事件類型)、config.subscriptionDetail.device 裝置(使用三方授權權杖時由權杖識別,不另外帶)事件
network-type-changed;另有 subscription-started、subscription-updated、subscription-ended
訂閱設定
config.subscriptionExpireTime 到期時間、config.subscriptionMaxEvents 通知次數上限;config.initialEvent 設為 true 時,建立後立刻通知目前的網路類型,無法判斷時為 UNKNOWN(這次通知也計入次數上限)典型用途
依網路類型即時調整 App,例如影片畫質或同步頻率
| 事件內容 | 意思 | 範例 |
|---|---|---|
| data.connectedNetworkType | 目前的網路類型:2G、3G、4G、5G、UNKNOWN | 5G |
| data.subscriptionId | 對應的訂閱編號 | 550e8400-… |
| data.terminationReason | 訂閱結束的原因:MAX_EVENTS_REACHED、NETWORK_TERMINATED、SUBSCRIPTION_EXPIRED、ACCESS_TOKEN_EXPIRED、SUBSCRIPTION_DELETED | SUBSCRIPTION_EXPIRED |
三個情境的回覆內容(節錄)
A進入 5G 範圍
type
org.camaraproject.connected-network-type-subscriptions.v0.network-type-changed網路類型改變data.connectedNetworkType
5G目前的網路類型B進入室內改連 4G
type
org.camaraproject.connected-network-type-subscriptions.v0.network-type-changed網路類型改變data.connectedNetworkType
4G目前的網路類型C達到通知上限
type
org.camaraproject.connected-network-type-subscriptions.v0.subscription-ended訂閱結束data.terminationReason
MAX_EVENTS_REACHED達到通知次數上限規格來源:CAMARA ConnectedNetworkType r1.2(Connected Network Type Subscriptions v0.2.0)