這個介面代表透過 FCM 舊版 API 傳送訊息時可提供哪些選項。
如需程式碼範例和詳細說明文件,請參閱「建構傳送要求」。
簽名:
export interface MessagingOptions
屬性
屬性 | 類型 | 說明 |
---|---|---|
收合鍵 | 字串 | 識別一組可收合的訊息 (例如「有可用的更新」) 的字串,只傳送最後一則訊息並且繼續傳送。這項功能的用途是在裝置恢復連線或恢復使用時,避免傳送過多相同的訊息。我們無法保證訊息的傳送順序。一次最多允許四個不同的收合鍵。這表示 FCM 伺服器可以為每個用戶端應用程式同時儲存四則不同的傳送要同步處理訊息。如果超過這個數量,FCM 伺服器不一定會保留四個收合鍵。**預設值:** 無 |
可用內容 | 布林值 | 在 iOS 上,使用這個欄位代表 APN 酬載中的 content-available 。當系統傳送通知或資料訊息並設為 true 時,就會喚醒閒置的用戶端應用程式。根據預設,Android 裝置的資料訊息會喚醒應用程式。Chrome 目前不支援這個標記。**預設值:** false |
dryRun | 布林值 | 訊息是否應實際傳送。如果設為 true ,開發人員即可在不實際傳送訊息的情況下測試要求。如果設為 false ,就會傳送訊息。**預設值:** false |
mutableContent | 布林值 | 在 iOS 上,使用這個欄位代表 APN 酬載中的 mutable-content 。將通知設為 true 並設為 true 後,就能使用通知服務應用程式額外資訊,修改通知內容再顯示。在 Android 和網頁版上,系統會忽略這個參數。**預設值:** false |
優先順序 | 字串 | 訊息的優先順序。在 iOS 上,有效值為 "normal" 和 "high". ,這些對 APN 的優先順序 5 和 10 相對應。根據預設,通知訊息會以高優先順序傳送,而資料訊息會以一般優先順序傳送。「一般優先順序」會最佳化用戶端應用程式的電池消耗量。除非需要立即推送,否則一律使用這種優先等級。如果是設為一般優先順序的訊息,應用程式可能會收到未指定延遲時間的訊息。如果訊息以高優先順序傳送,系統就會立即傳送,這時應用程式可以喚醒處於休眠狀態的裝置,並開啟連至伺服器的網路連線。詳情請參閱設定訊息優先順序。**預設值:** "high" 的資料訊息為 "normal" |
restrictedPackageName | 字串 | 註冊符記必須相符,才能接收訊息的應用程式套件名稱。**預設值:** 無 |
timeToLive | 數字 | 裝置離線時,訊息應保留在 FCM 儲存空間的時間長度 (以秒為單位)。上線時間上限是四週,預設值也是四週。詳情請參閱設定訊息的效期。**預設值:** 2419200 (代表四週,以秒為單位) |
MessagingOptions.{/3}
識別一組可收合的訊息 (例如「有可用的更新」) 的字串,只傳送最後一則訊息並且繼續傳送。這是為了避免在裝置恢復連線或恢復連線時傳送過多相同的訊息。
我們無法保證訊息的傳送順序。
一次最多只能使用四個不同的收合鍵。這表示 FCM 伺服器可以為每個用戶端應用程式同時儲存四則不同的傳送要同步處理訊息。如果超過這個數量,FCM 伺服器不一定會保留四個收合金鑰。
**預設值:** 無
簽名:
collapseKey?: string;
MessagingOptions.contentAvailable
在 iOS 上,使用這個欄位代表 APN 酬載中的 content-available
。當系統傳送通知或資料訊息並設為 true
時,就會喚醒閒置的用戶端應用程式。根據預設,Android 裝置的資料訊息會喚醒應用程式。Chrome 目前不支援這個標記。
**預設值:** false
簽名:
contentAvailable?: boolean;
MessagingOptions.dryRun
訊息是否應實際傳送。如果設為 true
,開發人員即可在不實際傳送訊息的情況下測試要求。如果設為 false
,系統就會傳送訊息。
**預設值:** false
簽名:
dryRun?: boolean;
MessagingOptions.mutableContent
在 iOS 上,使用這個欄位代表 APN 酬載中的 mutable-content
。當通知發送且設為 true
時,使用通知服務應用程式額外資訊,即可在顯示通知之前修改通知內容。
在 Android 和網頁版上,系統會忽略這個參數。
**預設值:** false
簽名:
mutableContent?: boolean;
MessagingOptions.Priority
訊息的優先順序。在 iOS 上,有效值為 "normal"
和 "high".
,這些值與 APN 優先順序 5
和 10
相對應。
預設情況下,通知訊息的優先程度較高,資料訊息則會以一般優先順序傳送。「一般優先順序」會最佳化用戶端應用程式的電池耗電量。除非需要立即推送,否則一律使用這種優先等級。如果郵件的優先順序為一般,應用程式可能會收到沒有指定的延遲訊息。
如果訊息以高優先順序傳送,系統就會立即傳送該訊息,而應用程式可以喚醒休眠的裝置,並且開啟連至伺服器的網路連線。
詳情請參閱設定郵件優先順序。
**預設值:** 通知訊息使用 "high"
,"normal"
代表資料訊息
簽名:
priority?: string;
MessagingOptions.restrictedPackageName
註冊符記必須相符,才能接收訊息的應用程式套件名稱。
**預設值:** 無
簽名:
restrictedPackageName?: string;
MessagingOptions.timeToLive
裝置離線時,訊息應保留在 FCM 儲存空間的時間長度 (以秒為單位)。上線時間上限是四週,預設值也是四週。詳情請參閱「設定訊息的效期」。
**預設值:** 2419200
(代表四週,以秒為單位)
簽名:
timeToLive?: number;