Você pode enviar e receber mensagens para usuários finais com chrome.gcm (em inglês). Como ele foi construído sobre Firebase Cloud Messaging (FCM): depende de um serviço externo de que você precisa; para configurar. Este guia de instruções orienta você em todas as etapas necessárias para obter está funcionando na sua extensão.
Embora o chrome.gcm
ainda seja compatível, ele foi criado há mais de uma década
padrão Push. Em geral, é sempre uma prática recomendada usar a Web
em vez de uma API específica para extensões. A menos que você tenha uma necessidade específica
para usar chrome.gcm
, recomendamos usar Push.
Pré-requisitos
Para usar o chrome.gcm
, você precisa configurar uma conta do Firebase
do Compute Engine.
Depois de criar uma conta, abra sua conta do Firebase console e selecione um projeto existente para usar ou crie um novo para sua extensão.
Prossiga para a página de configurações do Cloud Messaging.
Se você já tem uma conta de mensagens na nuvem neste projeto, copie o ID numérico do remetente listado.
Se você não tiver ativado as mensagens na nuvem, será necessário ativar a API Firebase API Cloud Messaging para o projeto dentro do Google Cloud. Nos seguintes imagem, você poderá ver onde há um link diretamente para essa página na página configurações.
Depois de ativar, volte à página de configurações do Cloud "Mensagens" e copie o ID do remetente.
Configurar o chrome.gcm
Agora que você tem o ID de remetente do Firebase, pode configurar sua extensão
para detectar mensagens. Para começar, verifique se você adicionou o gcm
permissão ao manifest.json
da sua extensão
{
"manifest_version": 3,
...
"permissions": ["gcm"]
Agora você tem acesso à API chrome.gcm
. Você pode se registrar para ouvir notificações push
mensagens chamando chrome.gcm.register
Ouvir mensagens
Depois que a extensão registrar seu ID de remetente, você precisará adicionar um código para processar as mensagens recebidas.
Firebase sem Firebase
Embora o chrome.gcm
sempre passe pelo Firebase, ele pode ser configurado para
atuam como um proxy para fornecedores externos de mensagens push. Normalmente, os fornecedores
explicitamente o suporte para extensões do Google Chrome, mas qualquer fornecedor que ofereça
As notificações push legadas do Firebase devem funcionar. Se o provedor listar
suporte para notificações push legadas do Firebase, faça um teste. Se você tiver
problemas, o suporte dos provedores deve ser capaz de esclarecer quaisquer restrições que
estaria em vigor.
Em canais e tópicos
chrome.gcm
está usando as APIs legadas do Firebase Messaging. Isso é importante
porque a API legada não é compatível com canais de mensagens. Todas as mensagens
push vai para todos os clientes. Se a extensão de um usuário só tiver interesse em um
subconjunto de mensagens, faça a filtragem por conta própria.
Embora o Firebase tenha começado como uma conta sem custo financeiro, você será cobrado quando ultrapassar um um determinado limite de uso. Se você planeja enviar mensagens para grupos específicos, a filtragem do lado do cliente pode acabar custando mais do que o garantido. Você pode contorná-lo criando vários projetos para replicar canais individuais (um projeto e um ID de remetente para cada canal). Qualquer extensão pode registrar-se para vários IDs de remetente, até 100.
Como alternativa, se você precisar do suporte para canais ou quiser usar as notificações push sem passar pelo Firebase, é possível usar a API Push.