說明
使用 chrome.gcm 讓應用程式和擴充功能透過 Firebase 雲端通訊 (FCM) 傳送及接收訊息。
權限
gcm屬性
MAX_MESSAGE_SIZE
訊息中所有鍵/值組的大小上限 (以位元組為單位)。
值
4096 
 
方法
register()
chrome.gcm.register(
senderIds: string[],
): Promise<string>
向 FCM 註冊應用程式。註冊 ID 會由 callback 傳回。如果使用相同的 senderIds 清單再次呼叫 register,系統會傳回相同的註冊 ID。
參數
- 
    senderIdsstring[] 允許傳送訊息至應用程式的伺服器 ID 清單。檔案中至少要包含一個寄件者 ID,最多不得超過 100 個。 
傳回
- 
            Promise<string> Chrome 116 以上版本
send()
chrome.gcm.send(
message: object,
): Promise<string>
根據內容傳送訊息。
參數
- 
    訊息物件 透過 FCM 傳送給對方的訊息。 - 
    資料物件 要傳送至伺服器的訊息資料。不允許使用不區分大小寫的 goog.和google,以及區分大小寫的collapse_key做為鍵前置字元。所有鍵/值組合的總和不得超過gcm.MAX_MESSAGE_SIZE。
- 
    destinationId字串 要將訊息傳送至的伺服器 ID,由 Google API 控制台指派。 
- 
    messageId字串 訊息的 ID。應用程式範圍內的每則訊息都必須有專屬 ID。如需選取及處理 ID 的建議,請參閱 Cloud Messaging 說明文件。 
- 
    timeToLive號碼 選填 訊息的存留時間 (以秒為單位)。如果無法在該時間內傳送訊息,系統會引發 onSendError 事件。存留時間為 0 表示訊息應立即傳送,如果無法傳送則應失敗。存留時間的預設值為 86,400 秒 (1 天),最大值為 2,419,200 秒 (28 天)。 
 
- 
    
傳回
- 
            Promise<string> Chrome 116 以上版本
unregister()
chrome.gcm.unregister(): Promise<void>
從 FCM 取消註冊應用程式。
傳回
- 
            Promise<void> Chrome 116 以上版本
事件
onMessage
chrome.gcm.onMessage.addListener(
callback: function,
)
透過 FCM 收到訊息時觸發。
參數
- 
    callback函式 callback參數如下:(message: object) => void - 
    訊息物件 - 
    collapseKey字串 選填 訊息的收合鍵。詳情請參閱「不可摺疊和可摺疊的訊息」。 
- 
    資料物件 訊息資料。 
- 
    來自字串 選填 發出訊息的傳送者。 
 
- 
    
 
- 
    
onMessagesDeleted
chrome.gcm.onMessagesDeleted.addListener(
callback: function,
)
當 FCM 伺服器必須刪除應用程式伺服器傳送給應用程式的訊息時,就會觸發此事件。如要瞭解如何處理這項事件,請參閱「訊息生命週期」。
參數
- 
    callback函式 callback參數如下:() => void 
onSendError
chrome.gcm.onSendError.addListener(
callback: function,
)
無法將訊息傳送至 FCM 伺服器時觸發。
參數
- 
    callback函式 callback參數如下:(error: object) => void - 
    錯誤物件 - 
    詳細資料物件 與錯誤相關的其他詳細資料 (如有)。 
- 
    errorMessage字串 描述問題的錯誤訊息。 
- 
    messageId字串 選填 如果錯誤與特定訊息相關,則為該訊息的 ID。 
 
- 
    
 
-