Acompanhe tudo o que foi anunciado no Firebase Summit e saiba como usar o Firebase para acelerar o desenvolvimento de apps e executá-los com confiança. Saiba mais

Visão geral da arquitetura do FCM

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

O FCM conta com o seguinte conjunto de componentes que criam, transportam e recebem mensagens:

  1. Ferramentas para compor ou construir solicitações de mensagens. O compositor de notificações fornece uma opção baseada em GUI para criar solicitações de notificação. Para automação completa e suporte para todos os tipos de mensagem , você deve criar solicitações de mensagem em um ambiente de servidor confiável que suporte o Firebase Admin SDK ou os protocolos de servidor FCM. Esse ambiente pode ser Cloud Functions para Firebase, App Engine ou seu próprio servidor de aplicativos.

    Um diagrama das três camadas de arquitetura descritas nesta página.

  2. O back-end do FCM, que (entre outras funções) aceita solicitações de mensagens, realiza fanout de mensagens por meio de tópicos e gera metadados de mensagens, como o ID da mensagem.

  3. Uma camada de transporte no nível da plataforma, que roteia a mensagem para o dispositivo de destino, lida com a entrega da mensagem e aplica a configuração específica da plataforma quando apropriado. Esta camada de transporte inclui:

    • Camada de transporte Android (ATL) para dispositivos Android com serviços do Google Play
    • Serviço Apple Push Notification (APNs) para dispositivos Apple
    • Protocolo push da Web para aplicativos da Web

  4. O SDK do FCM no dispositivo do usuário, onde a notificação é exibida ou a mensagem é tratada de acordo com o estado de primeiro plano/segundo plano do aplicativo e qualquer lógica de aplicativo relevante.

Fluxo do ciclo de vida

  • Cadastrar dispositivos para receber mensagens do FCM . Uma instância de um aplicativo cliente se registra para receber mensagens, obtendo um token de registro que identifica exclusivamente a instância do aplicativo.
  • Enviar e receber mensagens downstream .
    • Envie uma mensagem. O servidor de aplicativos envia mensagens para o aplicativo cliente:
      1. A mensagem é composta, no compositor de Notificações ou em um ambiente confiável, e uma solicitação de mensagem é enviada ao back-end do FCM.
      2. O back-end FCM recebe a solicitação de mensagem, gera um ID de mensagem e outros metadados e os envia para a camada de transporte específica da plataforma.
      3. Quando o dispositivo está online, a mensagem é enviada por meio da camada de transporte específica da plataforma para o dispositivo.
      4. No dispositivo, o aplicativo cliente recebe a mensagem ou notificação.