SDK Google Cloud para Delphi — FCM, Pub/Sub, Calendar y más
Un conjunto coherente de componentes Pascal para la plataforma Google Cloud: envía notificaciones push móviles con Firebase Cloud Messaging HTTP v1, recibe / publica mensajes en Cloud Pub/Sub, programa eventos en Google Calendar, firma JWTs de service account para cualquier servicio GCP, y genera clientes fuertemente tipados para cualquier API de Google desde su documento de discovery / OpenAPI — todo desde sgcWebSockets.
Sin bindings google-cloud de Python, sin JDK de Java, sin puente Node.js — sólo componentes Delphi que hablan HTTPS, HTTP/2 y OAuth2 directamente con los endpoints de Google.
Google Cloud Platform expone cientos de APIs REST — mensajería, almacenamiento, colas, identidad, mapas, machine learning, productividad (Calendar, Drive, Gmail, Docs), publicidad, analítica, facturación y más. Hasta ahora, llamarlas desde Delphi suponía escribir a mano firmadores JWT, refrescadores de token OAuth2, uploaders multipart y parsers SSE. sgcWebSockets incluye componentes de primera para las superficies más comunes — TsgcHTTP_API_GoogleFCM para Firebase Cloud Messaging HTTP v1, TsgcHTTP_API_GoogleCloudPubSub para Cloud Pub/Sub, TsgcHTTP_API_GoogleCalendar para Calendar API v3 — además de infraestructura reutilizable de OAuth2 + JWT de service account que controla cualquier otro endpoint de Google y el generador de código sgcOpenAPI para la larga cola.
La autenticación es uniforme: un proyecto de Google Cloud, una clave JSON de service account (o un cliente OAuth2 para flujos de usuario final), y los scopes https://www.googleapis.com/auth/... apropiados. El firmador JWT de la librería construye la aserción, solicita un access token a oauth2.googleapis.com/token y lo cachea / refresca de forma transparente. El mismo código corre sin modificaciones en Windows, macOS, Linux, iOS y Android, con interfaces VCL y FMX.
TsgcHTTP_API_GoogleFCM — envía notificaciones push a clientes Android, iOS y web con la moderna API FCM HTTP v1 basada en OAuth2. Targeting por topic / token / condición, payloads de datos, overrides de imagen / sonido / canal.
TsgcHTTP_API_GoogleCloudPubSub — publica mensajes en topics, hace pull desde suscripciones, ack / nack, envío por lotes, suscripciones HTTP estilo push con envoltorios firmados de extremo a extremo.
TsgcHTTP_API_GoogleCalendar — lista calendarios, CRUD de eventos, gestiona asistentes, reglas de recurrencia, consultas free/busy y ACLs — con consentimiento OAuth2 del usuario o delegación domain-wide de service account.
Google Cloud Storage
Subida / descarga de objetos, URLs firmadas, subidas reanudables y gestión de buckets vía HTTPS — funciona con cualquier bucket GCS y con interop S3-compatible.
Google AI y Gemini
Cliente nativo para los modelos generativos Gemini, embeddings y Vertex AI — streaming sobre SSE, function calling, salidas estructuradas en modo JSON.
Google Drive, Gmail, Sheets, Docs
SDKs generados con sgcOpenAPI — OAuth2 + los scopes de Workspace apropiados te dan clases Pascal para cada endpoint.
Google Maps Platform
Geocoding, directions, distance matrix, places y roads — HTTPS + API key u OAuth2.
sgcOpenAPI emite clases cliente Pascal para cualquier API REST de Google que publique un documento OpenAPI — Compute Engine, BigQuery, Cloud Functions, Cloud Run, Secret Manager y compañía.
Autenticación
OAuth2 + JWT de service account, en el servidor
La mayoría de las APIs de Google Cloud aceptan dos formas de credencial: una clave JSON de service account (JWT firmado RS256 intercambiado en oauth2.googleapis.com/token por un bearer token de corta vida, sin interacción del usuario) y un cliente OAuth2 con el flujo estándar de authorization-code o device-code para datos de usuario final (Calendar, Drive, Gmail). sgcWebSockets cubre ambos: TsgcJWTClient firma la aserción, TsgcOAuth2Client controla el flujo de usuario, y los componentes por servicio consumen la credencial que conectes. Los tokens se cachean en memoria y se refrescan antes de expirar, de modo que tu código de aplicación nunca toca un 401.
Guía Rápida
Envía un push FCM desde Delphi
Un fragmento de 25 líneas que se autentica con una clave JSON de service account y envía una notificación a un único token de dispositivo.
Cloud Pub/Sub es la fábrica de mensajería at-least-once globalmente distribuida de Google — la espina dorsal de innumerables arquitecturas event-driven. La misma credencial de service account controla ambos extremos; los publicadores hacen POST de mensajes a un topic, los suscriptores o bien hacen pull en un horario o bien aceptan entregas push en un endpoint HTTPS.
Suelta sgcWebSockets en tu IDE de Delphi o C++Builder — un paquete por versión de Delphi 7 hasta 13. Descarga la prueba.
2. Crear una service account
En la consola de Google Cloud, crea una service account, asígnale los roles adecuados (p. ej. Pub/Sub Publisher, Firebase Messaging Admin) y descarga la clave JSON.
3. Arrastra un componente
Para FCM usa TsgcHTTP_API_GoogleFCM, para Pub/Sub usa TsgcHTTP_API_GoogleCloudPubSub, para Calendar usa TsgcHTTP_API_GoogleCalendar — o genera un SDK personalizado con sgcOpenAPI.