Delphi Google Cloud SDK — FCM, Pub/Sub, Calendar & 그 외

Google Cloud 플랫폼용 응집력 있는 Pascal 컴포넌트 세트: Firebase Cloud Messaging HTTP v1으로 모바일 알림 푸시, Cloud Pub/Sub에서 메시지 풀 / 게시, Google Calendar에서 이벤트 예약, 모든 GCP 서비스에 대한 서비스 계정 JWT 서명, 디스커버리 / OpenAPI 문서에서 모든 Google API에 대한 강력하게 타입이 지정된 클라이언트 생성 — 모두 sgcWebSockets에서.

모든 GCP 표면을 위한 네이티브 컴포넌트

Python google-cloud 바인딩, Java JDK, Node.js 브리지 없음 — Google의 엔드포인트에 직접 HTTPS, HTTP/2 및 OAuth2를 사용하는 Delphi 컴포넌트일 뿐이에요.

Google Cloud Platform은 수백 개의 REST API — 메시징, 스토리지, 큐잉, 신원, 매핑, 머신러닝, 생산성(Calendar, Drive, Gmail, Docs), 광고, 분석, 청구 등 — 를 노출해요. 지금까지 Delphi에서 호출하려면 JWT 서명자, OAuth2 토큰 새로 고침 도구, 멀티파트 업로더 및 SSE 파서를 수동으로 작성해야 했어요. sgcWebSockets는 가장 일반적인 표면을 위한 일류 컴포넌트를 제공해요 — Firebase Cloud Messaging HTTP v1용 TsgcHTTP_API_GoogleFCM, Cloud Pub/Sub용 TsgcHTTP_API_GoogleCloudPubSub, Calendar API v3용 TsgcHTTP_API_GoogleCalendar — 그리고 다른 모든 Google 엔드포인트를 구동하는 재사용 가능한 OAuth2 + 서비스 계정 JWT 인프라와 긴 꼬리를 위한 sgcOpenAPI 코드 생성기.

인증은 균일해요: Google Cloud 프로젝트, 서비스 계정 JSON 키(또는 최종 사용자 흐름용 OAuth2 클라이언트) 및 적절한 https://www.googleapis.com/auth/... 범위. 라이브러리의 JWT 서명자는 어설션을 빌드하고, oauth2.googleapis.com/token에서 액세스 토큰을 요청하고, 투명하게 캐시 / 새로 고침해요. 동일한 코드가 VCL 및 FMX UI 계층 모두에서 Windows, macOS, Linux, iOS 및 Android에서 수정 없이 실행돼요.

핵심 컴포넌트

TsgcHTTP_API_GoogleFCM, TsgcHTTP_API_GoogleCloudPubSub, TsgcHTTP_API_GoogleCalendar, TsgcOAuth2Client, TsgcJWTClient.

전송

TLS 1.3이 있는 HTTPS / HTTP/2, OAuth2 + 서비스 계정 JWT (RS256), Bearer 토큰 캐싱.

플랫폼

Windows, macOS, Linux, iOS, Android, .NET.

코드 생성기

sgcOpenAPI는 모든 Google 디스커버리 / OpenAPI 문서를 사용하여 Pascal 클라이언트 클래스를 내보내요.

일류 래퍼 + 생성된 SDK

Firebase Cloud Messaging (HTTP v1)

TsgcHTTP_API_GoogleFCM — 최신 OAuth2 기반 FCM HTTP v1 API로 Android, iOS 및 웹 클라이언트에 푸시 알림 보내기. 토픽 / 토큰 / 조건 타겟팅, 데이터 페이로드, 이미지 / 사운드 / 채널 재정의.

Cloud Pub/Sub

TsgcHTTP_API_GoogleCloudPubSub — 토픽에 메시지 게시, 구독에서 풀, ack / nack, 일괄 전송, 종단 간 서명된 엔벨로프가 있는 푸시 스타일 HTTP 구독.

Google Calendar API v3

TsgcHTTP_API_GoogleCalendar — 캘린더 나열, 이벤트 CRUD, 참석자 관리, 반복 규칙, 자유/바쁨 쿼리 및 ACL — OAuth2 사용자 동의 또는 서비스 계정 도메인 전체 위임 포함.

Google Cloud Storage

HTTPS를 통한 객체 업로드 / 다운로드, 서명된 URL, 재개 가능한 업로드 및 버킷 관리 — 모든 GCS 버킷 및 S3 호환 상호 운용성과 작동.

Google AI & Gemini

Gemini 생성 언어 모델, 임베딩 및 Vertex AI용 네이티브 클라이언트 — SSE를 통한 스트리밍, 함수 호출, JSON 모드 구조화된 출력.

Google Drive, Gmail, Sheets, Docs

sgcOpenAPI를 통한 생성된 SDK — OAuth2 + 적절한 Workspace 범위가 모든 엔드포인트에 대한 Pascal 클래스를 제공해요.

Google Maps Platform

지오코딩, 길찾기, 거리 매트릭스, 장소 및 도로 — HTTPS + API 키 또는 OAuth2.

생성된 Google Cloud SDK

sgcOpenAPI는 OpenAPI 문서를 게시하는 모든 Google REST API에 대해 Pascal 클라이언트 클래스를 내보내요 — Compute Engine, BigQuery, Cloud Functions, Cloud Run, Secret Manager 및 친구들.

OAuth2 + 서비스 계정 JWT, 서버 측

대부분의 Google Cloud API는 두 가지 형태의 자격 증명을 수락해요: 서비스 계정 JSON 키(oauth2.googleapis.com/token에서 단기 베어러 토큰으로 교환되는 RS256 서명 JWT, 사용자 상호 작용 없음)와 최종 사용자 데이터(Calendar, Drive, Gmail)용 표준 권한 부여 코드 또는 장치 코드 흐름이 있는 OAuth2 클라이언트. sgcWebSockets는 두 가지를 모두 다뤄요: TsgcJWTClient는 어설션에 서명하고, TsgcOAuth2Client는 사용자 흐름을 구동하며, 서비스별 컴포넌트는 연결한 자격 증명을 사용해요. 토큰은 메모리에 캐시되고 만료 전에 새로 고쳐지므로 애플리케이션 코드는 401에 절대 닿지 않아요.

Delphi에서 FCM 푸시 보내기

서비스 계정 JSON 키로 인증하고 단일 장치 토큰에 알림을 푸시하는 25줄 스니펫.

uses
  sgcHTTP_API_GoogleFCM, sgcHTTP_API_GoogleFCM_Types;

var
  vFCM:     TsgcHTTP_API_GoogleFCM;
  vMessage: TsgcGoogleFCMMessage;
begin
  vFCM := TsgcHTTP_API_GoogleFCM.Create(nil);
  try
    vFCM.ProjectId            := 'my-firebase-project';
    vFCM.ServiceAccountFile   := 'C:\keys\my-project-fcm.json';

    vMessage := TsgcGoogleFCMMessage.Create;
    try
      vMessage.Token             := 'eXampleDeviceTokenFromAndroidOrIOSClient...';
      vMessage.Notification.Title := 'New order';
      vMessage.Notification.Body  := 'Order #1234 has been confirmed.';
      vMessage.Data.AddPair('orderId', '1234');
      vMessage.Android.Priority   := fpHigh;

      vFCM.SendMessage(vMessage);
    finally
      vMessage.Free;
    end;
  finally
    vFCM.Free;
  end;
end;

메시지 게시 및 풀

Cloud Pub/Sub은 Google의 글로벌 분산, 적어도 한 번 메시징 패브릭이에요 — 수많은 이벤트 기반 아키텍처의 백본. 동일한 서비스 계정 자격 증명이 양쪽 끝을 구동해요; 발행자는 토픽에 메시지를 POST하고, 구독자는 일정에 따라 풀하거나 HTTPS 엔드포인트에서 푸시 전달을 수락해요.

uses
  sgcHTTP_API_GoogleCloudPubSub;

var
  vPubSub: TsgcHTTP_API_GoogleCloudPubSub;
begin
  vPubSub := TsgcHTTP_API_GoogleCloudPubSub.Create(nil);
  try
    vPubSub.ProjectId          := 'my-project';
    vPubSub.ServiceAccountFile := 'C:\keys\my-project-pubsub.json';

    // Publish
    vPubSub.Publish('orders', '{"orderId":1234,"total":42.50}');

    // Pull
    vPubSub.OnMessageReceived := DoMessageReceived;
    vPubSub.Subscribe('orders-worker');  // long-running pull loop
  finally
    vPubSub.Free;
  end;
end;

첫 GCP 호출까지 세 단계

1. 설치

sgcWebSockets를 Delphi 또는 C++Builder IDE에 드롭하세요 — Delphi 버전 7부터 13까지 버전당 하나의 패키지. 체험판 다운로드.

2. 서비스 계정 생성

Google Cloud 콘솔에서 서비스 계정을 생성하고, 올바른 역할(예: Pub/Sub Publisher, Firebase Messaging Admin)을 부여하고, JSON 키를 다운로드하세요.

3. 컴포넌트 드롭

FCM의 경우 TsgcHTTP_API_GoogleFCM을 사용하고, Pub/Sub의 경우 TsgcHTTP_API_GoogleCloudPubSub을 사용하고, Calendar의 경우 TsgcHTTP_API_GoogleCalendar를 사용하세요 — 또는 sgcOpenAPI로 사용자 정의 SDK를 생성하세요.

관련 블로그 게시물

Delphi Google Cloud SDK

sgcWebSockets가 Pascal 개발자에게 Google Cloud 표면을 노출하는 방법 개요.

Delphi의 Firebase Cloud Messaging HTTP v1

최신 FCM API의 단계별 워크스루와 레거시 서버 키를 대체하는 방법.

Google Cloud Pub/Sub Delphi 컴포넌트

Pub/Sub 컴포넌트로 메시지 게시, 풀 및 확인.

Google Calendar API v3

VCL 또는 FMX 애플리케이션에서 이벤트 생성 및 업데이트.

Google API 키 + OAuth2

API 키와 OAuth2와 서비스 계정 자격 증명을 언제 사용할지.

오늘 Delphi 앱에 Google Cloud 통합을 출시하세요

체험판을 다운로드하세요 — FCM, Pub/Sub 및 Calendar 데모가 컴파일 준비가 되어 있어요.