說明
使用 chrome.gcm
讓應用程式和擴充功能透過 Firebase 雲端通訊 (FCM) 傳送及接收訊息。
權限
gcm
屬性
MAX_MESSAGE_SIZE
訊息中所有鍵/值組的大小上限 (以位元組為單位)。
值
4096
方法
register()
chrome.gcm.register(
senderIds: string[],
): Promise<string>
向 FCM 註冊應用程式。註冊 ID 會由 callback
傳回。如果使用相同的 senderIds
清單再次呼叫 register
,系統會傳回相同的註冊 ID。
參數
-
senderIds
string[]
允許傳送訊息至應用程式的伺服器 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。
-
-