Firebase Cloud Messaging (FCM)
Envie notificações push Firebase Cloud Messaging V1 a partir do Delphi. Assinatura de JWT com service-account, troca de token OAuth 2.0 e construção tipada de mensagens FCM em um único componente.
Envie notificações push Firebase Cloud Messaging V1 a partir do Delphi. Assinatura de JWT com service-account, troca de token OAuth 2.0 e construção tipada de mensagens FCM em um único componente.
Cliente FCM HTTP V1 — carrega seu JSON de service-account do Google, assina um JWT RS256, troca por um access token OAuth e faz POST da mensagem FCM para fcm.googleapis.com/v1/projects/<id>/messages:send.
TsgcHTTPGoogleCloud_FCM_Client
Windows, macOS, Linux, iOS, Android
Standard / Professional / Enterprise
Carregue seu JSON de service-account do Firebase, defina o project id e chame SendMessage com o payload FCM (token / topic / condition).
uses
sgcHTTP;
var
FCM: TsgcHTTPGoogleCloud_FCM_Client;
begin
FCM := TsgcHTTPGoogleCloud_FCM_Client.Create(nil);
FCM.GoogleCloudOptions.ServiceAccountJSON.LoadFromFile('service-account.json');
FCM.SendMessage(
'fcm-device-token-here',
'Hello from Delphi',
'This is a test FCM push');
end;
// uses: sgcHTTP
TsgcHTTPGoogleCloud_FCM_Client *FCM = new TsgcHTTPGoogleCloud_FCM_Client(this);
FCM->GoogleCloudOptions->ServiceAccountJSON->LoadFromFile("service-account.json");
FCM->SendMessage(
"fcm-device-token-here",
"Hello from Delphi",
"This is a test FCM push");
Utiliza o endpoint FCM HTTP v1 — o endpoint legado fcm.googleapis.com/fcm/send foi descontinuado pelo Google.
Carrega o JSON padrão de service-account do Firebase, assina um JWT RS256 com a chave privada contida e o troca em oauth2.googleapis.com/token por um access token.
As sobrecargas de SendMessage aceitam um registration token, um nome de topic (/topics/news) ou uma expressão condition de topic. SendBroadcast direciona para um topic para fan-out.
Tanto o objeto notification (title/body/image) quanto o dicionário livre data são expostos, incluindo substituições específicas por plataforma (Android android, iOS apns, Web webpush).
Os access tokens são armazenados em cache e atualizados somente quando expiram, para que remetentes de alto volume não sobrecarreguem o endpoint OAuth.
Usa o cliente HTTP padrão do projeto — combine com proxies, configurações TLS e limitadores de taxa como qualquer outra requisição HTTP.
OnSendError reporta erros HTTP e específicos do FCM (token não registrado, argumento inválido, quota excedida) para que você possa remover tokens inválidos ou recuar.
Fontes oficiais da API implementada por este componente.
Acesse a referência do componente, obtenha o projeto de demo pronto para executar e baixe o trial.
| Ajuda Online — FCM Client Referência completa de propriedades, métodos e eventos deste componente. | Open | |
| Projeto de Demo — Demos\20.HTTP_Protocol\03.Google Projeto de exemplo pronto para executar. Incluído no pacote sgcWebSockets — baixe o trial abaixo. | Open | |
| Documento Técnico (PDF) Recursos, quick start, exemplos de código para Delphi & C++ Builder e referências primárias — somente este componente. | Open | |
| Manual do Usuário (PDF) Manual abrangente cobrindo todos os componentes da biblioteca. | Open |