Seu ambiente de servidor e FCM
O lado do servidor do Firebase Cloud Messaging consiste em dois componentes:
- O back-end do FCM fornecido pelo Google.
- Seu servidor de aplicativos ou outro ambiente de servidor confiável onde a lógica do servidor é executada, como Cloud Functions para Firebase ou outros ambientes de nuvem gerenciados pelo Google.
Seu servidor de aplicativos ou ambiente de servidor confiável envia solicitações de mensagens para o back-end do FCM, que então roteia mensagens para aplicativos cliente em execução nos dispositivos dos usuários.
Requisitos para o ambiente de servidor confiável
O ambiente do servidor de aplicativos deve atender aos seguintes critérios:
- Capaz de enviar solicitações de mensagens formatadas corretamente para o back-end do FCM.
- Capaz de lidar com solicitações e reenviá-las usando back-off exponencial.
- Capaz de armazenar com segurança credenciais de autorização de servidor e tokens de registro de cliente.
Escolhendo uma opção de servidor
Você precisará decidir uma maneira de interagir com os servidores FCM: usando o SDK Admin do Firebase ou o protocolo bruto. Devido ao suporte a linguagens de programação populares e aos métodos convenientes para lidar com autenticação e autorização, o SDK Admin do Firebase é o método recomendado.
As opções para interagir com servidores FCM incluem o seguinte:
- O SDK Admin do Firebase, que oferece suporte para Node , Java , Python , C# e Go .
- A API FCM HTTP v1 , uma API REST com autorização segura e recursos flexíveis de mensagens entre plataformas (o SDK Admin do Firebase é baseado nesse protocolo e oferece todas as vantagens inerentes).
SDK Admin do Firebase para FCM
A API Admin FCM cuida da autenticação com o back-end e facilita o envio de mensagens e o gerenciamento de assinaturas de tópicos. Com o SDK Admin do Firebase, você pode:
- Envie mensagens para dispositivos individuais
- Envie mensagens para tópicos e instruções de condição que correspondam a um ou mais tópicos.
- Assinar e cancelar a assinatura de dispositivos de e para tópicos
- Construa cargas de mensagens personalizadas para diferentes plataformas de destino
O SDK Admin Node.js fornece métodos para enviar mensagens para grupos de dispositivos.
Para configurar o SDK Admin do Firebase, consulte Adicionar o SDK Admin do Firebase ao seu servidor . Se você já tem um projeto do Firebase, comece com Adicionar o SDK . Além disso, certifique-se de ativar a API Cloud Messaging na página de configurações do Cloud Messaging do seu projeto. Depois que o SDK Admin do Firebase estiver instalado, você poderá começar a escrever lógica para criar solicitações de envio .
Protocolo do servidor FCM
O FCM fornece a API FCM HTTP v1 para desenvolvedores que preferem um protocolo de servidor bruto.
Para enviar uma mensagem, o servidor do aplicativo emite uma solicitação POST com um cabeçalho HTTP e um corpo HTTP composto por pares de valores-chave JSON. Para obter detalhes sobre as opções de cabeçalho e corpo, consulte Criar solicitações de envio do servidor de aplicativos