Gebruik Firebase Cloud Messaging (FCM) met chrome.gcm

Met chrome.gcm kunt u berichten verzenden en ontvangen naar eindgebruikers. Omdat het bovenop Firebase Cloud Messaging (FCM) is gebouwd, is het afhankelijk van een externe service die u moet instellen. Deze handleiding leidt u door alle noodzakelijke stappen om het in uw extensie te laten werken.

Hoewel chrome.gcm nog steeds wordt ondersteund, is het meer dan tien jaar geleden gemaakt vóór de Push- standaard. Over het algemeen is het altijd het beste om de webstandaard te gebruiken, in plaats van een extensiespecifieke API. Tenzij u een specifieke behoefte heeft om chrome.gcm te gebruiken, raden wij u aan Push te gebruiken.

Vereisten

Om chrome.gcm te kunnen gebruiken, moet u een Firebase- account instellen.

Firebase.com-startpagina.
Firebase.com-startpagina

Nadat u een account heeft aangemaakt, wilt u uw Firebase-console openen en een bestaand project selecteren dat u wilt gebruiken, of een nieuw project maken voor uw extensie.

Schermafbeelding van de projectvermeldingen in de Firebase-console.
Projectvermeldingen op de Firebase-console

Ga door naar de instellingenpagina voor Cloud Messaging.

Schermafbeelding van een Firebase Cloud Messaging-instellingenpagina.
Firebase Cloud Messaging-instellingenpagina

Als u een bestaand cloud-berichtenaccount voor dit project heeft, wilt u de numerieke afzender-ID kopiëren.

Als u cloudberichten niet heeft ingeschakeld, moet u de Firebase Cloud Messaging API inschakelen voor het project in Google Cloud. In de volgende afbeelding kunt u zien waar er een link rechtstreeks naar deze pagina is in de Firebase-instellingen.

Schermafbeelding van de locatie van de link om de Firebase Messaging API in Google Cloud in te schakelen.
De link Google Cloud-instellingen openen in Firebase

Eenmaal ingeschakeld, keert u terug naar de instellingenpagina voor Cloud Messaging en kopieert u de afzender-ID.

Configureer chrome.gcm

Nu u uw afzender-ID van Firebase heeft, kunt u uw extensie configureren om naar berichten te luisteren. Zorg er om te beginnen voor dat u de gcm machtiging hebt toegevoegd aan manifest.json van uw extensie

  {
    "manifest_version": 3,
    ...
    "permissions": ["gcm"]

U heeft nu toegang tot de chrome.gcm API. U kunt zich registreren om naar pushberichten te luisteren door chrome.gcm.register te bellen

Luister naar berichten

Zodra de extensie uw afzender-ID heeft geregistreerd, moet u code toevoegen om inkomende berichten te verwerken.

Firebase zonder Firebase

Hoewel chrome.gcm altijd via Firebase loopt, kan Firebase worden geconfigureerd om als proxy te fungeren voor externe leveranciers van pushberichten. Meestal vermelden leveranciers expliciet de ondersteuning voor Chrome-extensies, maar elke leverancier die de verouderde pushmeldingen van Firebase ondersteunt, zou moeten werken. Als uw provider ondersteuning biedt voor de oudere pushmeldingen van Firebase, probeer het dan eens. Als u problemen ondervindt, moet de ondersteuningsprovider eventuele beperkingen kunnen ophelderen.

Over kanalen en onderwerpen

chrome.gcm gebruikt de verouderde Firebase Messaging API's. Dit is belangrijk omdat de oude API geen berichtkanalen ondersteunt . Elk gepusht bericht gaat naar elke klant. Als de extensie van een gebruiker alleen geïnteresseerd is in een subset van berichten, moet u uzelf filteren.

Hoewel Firebase begint als een gratis account, worden er kosten in rekening gebracht zodra u een bepaalde gebruiksdrempel overschrijdt. Als u van plan bent berichten naar specifieke groepen te sturen, kan het filteren aan de clientzijde uiteindelijk meer kosten dan gerechtvaardigd is. U kunt dit omzeilen door meerdere projecten te maken om individuele kanalen te repliceren (één project en één afzender-ID voor elk kanaal). Elke extensie kan zich registreren voor meerdere afzender-ID's, maximaal 100.

Als u ondersteuning voor kanalen nodig heeft of pushmeldingen wilt gebruiken zonder Firebase te gebruiken, kunt u ook de Push API gebruiken.