Firebase Cloud Messaging (FCM)

Verstuur Firebase Cloud Messaging V1-pushmeldingen vanuit Delphi. Service-account JWT-ondertekening, OAuth 2.0-tokenuitwisseling en getypeerde FCM-berichtopbouw in één component.

TsgcHTTPGoogleCloud_FCM_Client

FCM HTTP V1-client — laadt je Google service-account-JSON, ondertekent een RS256-JWT, wisselt deze in voor een OAuth-access-token en POST het FCM-bericht naar fcm.googleapis.com/v1/projects/<id>/messages:send.

Componentklasse

TsgcHTTPGoogleCloud_FCM_Client

Platforms

Windows, macOS, Linux, iOS, Android

Editie

Standard / Professional / Enterprise

Laad service-account, verstuur push

Laad je Firebase service-account-JSON, stel de project-id in, roep daarna SendMessage aan met de FCM-payload (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");

Wat zit erin

Richt zich op het FCM HTTP v1-endpoint — het legacy-endpoint fcm.googleapis.com/fcm/send is door Google afgeschaft.

Service-account-authenticatie

Laadt de standaard Firebase service-account-JSON, ondertekent een RS256-JWT met de daarin opgenomen privésleutel en wisselt deze bij oauth2.googleapis.com/token in voor een access-token.

Versturen naar token / topic / condition

De overloads van SendMessage accepteren een registratietoken, een topic-naam (/topics/news) of een topic-condition-expressie. SendBroadcast richt zich op een topic voor fan-out.

Notification- + data-payloads

Zowel het notification-object (titel/body/afbeelding) als de vrij invulbare data-dictionary zijn beschikbaar, inclusief platformspecifieke overrides (Android android, iOS apns, Web webpush).

Token-caching

Access-tokens worden gecached en pas vernieuwd als ze verlopen, zodat verzenders met groot volume het OAuth-endpoint niet onnodig belasten.

HTTP-transport

Gebruikt de standaard HTTP-client van het project — combineer met proxy's, TLS-instellingen en rate limiters zoals bij elk ander HTTP-verzoek.

Getypeerde fouten

OnSendError rapporteert HTTP- en FCM-specifieke fouten (niet-geregistreerd token, ongeldig argument, quota overschreden) zodat je dode tokens kunt opschonen of kunt back-offen.

Specificaties & referenties

Gezaghebbende bronnen voor de API die dit component implementeert.

Documentatie & demo's

Deep-link naar de componentreferentie, pak het direct uitvoerbare demoproject en download de proefversie.

Online help — FCM-client Volledige property-, methode- en event-referentie voor dit component.
Demoproject — Demos\20.HTTP_Protocol\03.Google Direct uitvoerbaar voorbeeldproject. Zit in het sgcWebSockets-package — download de proefversie hieronder.
Technisch document (PDF) Functies, snelstart, codevoorbeelden voor Delphi & C++ Builder en primaire bronreferenties — alleen dit component.
Gebruikershandleiding (PDF) Uitgebreide handleiding die elk component in de bibliotheek behandelt.

Klaar om FCM-pushes vanuit Delphi te versturen?

Download de gratis proefversie en integreer Firebase Cloud Messaging in je Delphi-toepassingen.