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