Delphi Google Cloud SDK — FCM, Pub/Sub, Calendar & meer
Een samenhangende set Pascal-componenten voor het Google Cloud-platform: stuur mobiele push-meldingen met Firebase Cloud Messaging HTTP v1, pull / publish berichten op Cloud Pub/Sub, plan events in Google Calendar, onderteken service-account JWT’s voor elke GCP-service en genereer sterk getypeerde clients voor elke Google-API uit het discovery-/OpenAPI-document — allemaal vanuit sgcWebSockets.
Geen Python google-cloud bindings, geen Java JDK, geen Node.js-bridge — alleen Delphi-componenten die rechtstreeks HTTPS, HTTP/2 en OAuth2 spreken met de endpoints van Google.
Google Cloud Platform biedt honderden REST-API’s — messaging, storage, queueing, identity, mapping, machine learning, productiviteit (Calendar, Drive, Gmail, Docs), advertising, analytics, billing en meer. Tot nu toe betekende ze aanroepen vanuit Delphi handmatig JWT-signers, OAuth2 token-refreshers, multipart-uploaders en SSE-parsers schrijven. sgcWebSockets levert first-class componenten voor de meest voorkomende oppervlakken — TsgcHTTP_API_GoogleFCM voor Firebase Cloud Messaging HTTP v1, TsgcHTTP_API_GoogleCloudPubSub voor Cloud Pub/Sub, TsgcHTTP_API_GoogleCalendar voor de Calendar API v3 — plus herbruikbare OAuth2- + service-account-JWT-infrastructuur die elke andere Google-endpoint aanstuurt, en de sgcOpenAPI-codegenerator voor de long tail.
Authenticatie is uniform: een Google Cloud-project, een service-account JSON-key (of een OAuth2-client voor eindgebruikersflows) en de juiste https://www.googleapis.com/auth/...-scopes. De JWT-signer van de library bouwt de assertion, vraagt een access token op bij oauth2.googleapis.com/token en cached / refresht het transparant. Dezelfde code draait ongewijzigd op Windows, macOS, Linux, iOS en Android, met zowel VCL- als FMX-UI-lagen.
TsgcHTTP_API_GoogleFCM — stuur push-meldingen naar Android-, iOS- en webclients met de moderne OAuth2-gebaseerde FCM HTTP v1-API. Targeting per topic / token / condition, data-payloads, image- / sound- / channel-overrides.
TsgcHTTP_API_GoogleCalendar — agenda’s opvragen, CRUD op events, beheer van deelnemers, recurrence rules, free/busy-queries en ACL’s — met OAuth2-gebruikerstoestemming of service-account domain-wide delegation.
Google Cloud Storage
Upload / download van objecten, signed URLs, resumable uploads en bucketbeheer via HTTPS — werkt met elke GCS-bucket en met S3-compatibele interop.
Google AI & Gemini
Native client voor de generatieve Gemini-modellen, embeddings en Vertex AI — streaming over SSE, function calling, gestructureerde JSON-mode-output.
Google Drive, Gmail, Sheets, Docs
SDK’s gegenereerd via sgcOpenAPI — OAuth2 + de juiste Workspace-scopes geven je Pascal-klassen voor elke endpoint.
Google Maps Platform
Geocoding, directions, distance matrix, places en roads — HTTPS + API key of OAuth2.
sgcOpenAPI levert Pascal-clientklassen voor elke Google REST-API die een OpenAPI-document publiceert — Compute Engine, BigQuery, Cloud Functions, Cloud Run, Secret Manager en vrienden.
Authenticatie
OAuth2 + service-account JWT, server-side
De meeste Google Cloud-API’s accepteren twee vormen van credential: een service-account JSON-key (RS256-ondertekende JWT die op oauth2.googleapis.com/token wordt geruild voor een kortlevende bearer-token, zonder gebruikersinteractie) en een OAuth2-client met de standaard authorisation-code- of device-code-flow voor eindgebruikersdata (Calendar, Drive, Gmail). sgcWebSockets dekt beide: TsgcJWTClient ondertekent de assertion, TsgcOAuth2Client stuurt de gebruikersflow, en de per-service-componenten gebruiken het credential dat je inhangt. Tokens worden in-memory gecached en vóór het verlopen ververst, zodat je applicatiecode nooit een 401 raakt.
Snelstart
Verstuur een FCM-push vanuit Delphi
Een snippet van 25 regels dat zich authenticeert met een service-account JSON-key en een melding pusht naar één device-token.
Cloud Pub/Sub is Google’s wereldwijd gedistribueerde, at-least-once messaging-laag — de ruggengraat van talloze event-driven architecturen. Hetzelfde service-account credential stuurt beide kanten aan; publishers POSTen berichten naar een topic, subscribers pullen op een planning of accepteren push-deliveries op een HTTPS-endpoint.
Plaats sgcWebSockets in je Delphi- of C++Builder-IDE — één package per Delphi-versie 7 tot en met 13. Download de proefversie.
2. Maak een service account
Maak in de Google Cloud-console een service account, geef het de juiste rollen (bv. Pub/Sub Publisher, Firebase Messaging Admin) en download de JSON-key.
3. Plaats een component
Voor FCM gebruik je TsgcHTTP_API_GoogleFCM, voor Pub/Sub TsgcHTTP_API_GoogleCloudPubSub, voor Calendar TsgcHTTP_API_GoogleCalendar — of genereer een eigen SDK met sgcOpenAPI.