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.

TsgcHTTPGoogleCloud_FCM_Client

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.

Clase del componente

TsgcHTTPGoogleCloud_FCM_Client

Plataformas

Windows, macOS, Linux, iOS, Android

Edición

Standard / Professional / Enterprise

Carga la cuenta de servicio y envía el push

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");

Qué incluye

Usa el endpoint FCM HTTP v1: Google dejó obsoleto el endpoint heredado fcm.googleapis.com/fcm/send.

Autenticación con cuenta de servicio

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.

Envío a token / tema / condición

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.

Payloads de notificación + datos

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).

Caché de tokens

Los access tokens se guardan en caché y se renuevan solo cuando caducan, así los emisores de alto volumen no saturan el endpoint OAuth.

Transporte HTTP

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.

Errores tipados

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.

Especificaciones y referencias

Fuentes de referencia de la API que implementa este componente.

Documentación y Demos

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.
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.
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.
Manual de usuario (PDF) Manual completo que cubre todos los componentes de la biblioteca.
La mejor opción: All-AccessTodos los productos de eSeGeCe, con Premium Support incluido, desde €1,059 al año.
Ver precios de All-Access

¿Listo para enviar notificaciones push FCM desde Delphi?

Descarga la prueba gratuita e integra Firebase Cloud Messaging en tus aplicaciones Delphi.