Firebase Cloud Messaging (FCM)
Envía notificaciones push de Firebase Cloud Messaging V1 desde Delphi. Firma JWT de cuenta de servicio, intercambio de tokens OAuth 2.0 y construcción tipada de mensajes FCM en un solo componente.
Envía notificaciones push de Firebase Cloud Messaging V1 desde Delphi. Firma JWT de cuenta de servicio, intercambio de tokens OAuth 2.0 y construcción tipada de mensajes FCM en un solo componente.
Cliente FCM HTTP V1 — carga el JSON de tu cuenta de servicio de Google, firma un JWT RS256, lo intercambia por un access token OAuth y hace un POST del mensaje FCM a fcm.googleapis.com/v1/projects/<id>/messages:send.
TsgcHTTPGoogleCloud_FCM_Client
Windows, macOS, Linux, iOS, Android
Standard / Professional / Enterprise
Carga el JSON de tu cuenta de servicio de Firebase, establece el id del proyecto y llama a SendMessage con el 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");
Usa el endpoint FCM HTTP v1: Google dejó obsoleto el endpoint heredado fcm.googleapis.com/fcm/send.
Carga el JSON estándar de cuenta de servicio de Firebase, firma un JWT RS256 con la clave privada que contiene y lo intercambia en oauth2.googleapis.com/token por un access token.
SendMessage aceptan un registration token, un nombre de topic (/topics/news) o una expresión de condición de topic. SendBroadcast apunta a un topic para el envío masivo.
Se exponen tanto el objeto notification (título/cuerpo/imagen) como el diccionario libre data, incluidas las sobrescrituras específicas de plataforma (Android android, iOS apns, Web webpush).
Los access tokens se guardan en caché y se renuevan solo cuando caducan, así los emisores de alto volumen no saturan el endpoint OAuth.
Usa el cliente HTTP estándar del proyecto — combínalo con proxies, ajustes TLS y limitadores de tasa como con cualquier otra petición HTTP.
OnSendError informa de errores HTTP y específicos de FCM (token no registrado, argumento no válido, cuota excedida) para que puedas eliminar tokens caducados o espaciar los reintentos.
Fuentes de referencia de la API que implementa este componente.
Enlace directo a la referencia del componente, descarga el proyecto demo listo para ejecutar y la prueba gratuita.
| Online Help — FCM Client Referencia completa de propiedades, métodos y eventos de este componente. | Abrir | |
| Demo Project — Demos\20.HTTP_Protocol\03.Google Proyecto de ejemplo listo para ejecutar. Se incluye en el paquete sgcWebSockets — descarga la prueba gratuita más abajo. | Abrir | |
| Documento técnico (PDF) Características, inicio rápido, ejemplos de código para Delphi y C++ Builder y referencias de fuentes primarias — solo este componente. | Abrir | |
| Manual de usuario (PDF) Manual completo que cubre todos los componentes de la biblioteca. | Abrir |