Firebase Cloud Messaging (FCM)
Sende Firebase-Cloud-Messaging-V1-Push-Benachrichtigungen aus Delphi. Service-Account-JWT-Signierung, OAuth-2.0-Token-Austausch und typisierte FCM-Nachrichtenerstellung in einer Komponente.
Sende Firebase-Cloud-Messaging-V1-Push-Benachrichtigungen aus Delphi. Service-Account-JWT-Signierung, OAuth-2.0-Token-Austausch und typisierte FCM-Nachrichtenerstellung in einer Komponente.
FCM-HTTP-V1-Client — lädt dein Google-Service-Account-JSON, signiert ein RS256-JWT, tauscht es gegen ein OAuth-Access-Token und sendet die FCM-Nachricht per POST an fcm.googleapis.com/v1/projects/<id>/messages:send.
TsgcHTTPGoogleCloud_FCM_Client
Windows, macOS, Linux, iOS, Android
Standard / Professional / Enterprise
Lade dein Firebase-Service-Account-JSON, setze die Projekt-ID und rufe dann SendMessage mit der FCM-Payload auf (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");
Spricht den FCM-HTTP-v1-Endpunkt an — der alte Endpunkt fcm.googleapis.com/fcm/send wurde von Google als veraltet eingestuft.
Lädt das standardmäßige Firebase-Service-Account-JSON, signiert ein RS256-JWT mit dem enthaltenen privaten Schlüssel und tauscht es dann unter oauth2.googleapis.com/token gegen ein Access Token ein.
Die SendMessage-Überladungen akzeptieren ein Registrierungstoken, einen Topic-Namen (/topics/news) oder einen Topic-Bedingungsausdruck. SendBroadcast adressiert ein Topic für die Verteilung.
Sowohl das notification-Objekt (Titel/Text/Bild) als auch das freie data-Dictionary werden bereitgestellt, einschließlich plattformspezifischer Overrides (Android android, iOS apns, Web webpush).
Access-Token werden zwischengespeichert und nur bei Ablauf erneuert, sodass Sender mit hohem Volumen den OAuth-Endpunkt nicht überlasten.
Verwendet den standardmäßigen HTTP-Client des Projekts — kombiniere ihn mit Proxys, TLS-Einstellungen und Rate-Limitern wie bei jeder anderen HTTP-Anfrage.
OnSendError meldet HTTP- und FCM-spezifische Fehler (nicht registriertes Token, ungültiges Argument, Kontingent überschritten), sodass du tote Tokens entfernen oder zurückfahren kannst.
Maßgebliche Quellen für die API, die diese Komponente implementiert.
Springe direkt zur Komponentenreferenz, lade das einsatzbereite Demo-Projekt herunter und teste die Testversion.
| Online-Hilfe — FCM Client Vollständige Eigenschaften-, Methoden- und Ereignisreferenz für diese Komponente. | Öffnen | |
| Demo-Projekt — Demos\20.HTTP_Protocol\03.Google Einsatzbereites Beispielprojekt. Im sgcWebSockets-Paket enthalten — lade unten die Testversion herunter. | Öffnen | |
| Technisches Dokument (PDF) Funktionen, Schnellstart, Codebeispiele für Delphi & C++ Builder und Primärquellenreferenzen — nur für diese Komponente. | Öffnen | |
| Benutzerhandbuch (PDF) Umfassendes Handbuch zu jeder Komponente der Bibliothek. | Öffnen |