Google Cloud Pub/Sub

Publish and pull messages from Google Cloud Pub/Sub topics from Delphi. Service-account JWT signing and typed Publish / Pull / Acknowledge methods.

TsgcHTTPGoogleCloud_PubSub_Client

Cliente REST do Google Cloud Pub/Sub — crie tópicos, publique mensagens, consuma assinaturas, confirme ou modifique prazos de confirmação a partir de um componente Delphi tipado.

Classe do componente

TsgcHTTPGoogleCloud_PubSub_Client

Protocolo

Pub/Sub REST API

Plataformas

Windows, macOS, Linux, iOS, Android

Edição

Standard / Professional / Enterprise

Carregue a conta de serviço, publique e consuma

Carregue o JSON da conta de serviço, defina o ID do projeto, chame Publish para enviar uma mensagem e Pull para consumir de uma assinatura.

uses
  sgcHTTP;

var
  PubSub: TsgcHTTPGoogleCloud_PubSub_Client;
begin
  PubSub := TsgcHTTPGoogleCloud_PubSub_Client.Create(nil);
  PubSub.GoogleCloudOptions.ServiceAccountJSON.LoadFromFile('service-account.json');

  // publish
  PubSub.Publish('projects/your-project/topics/topic-id',
    '{"event":"order_created","id":42}');

  // pull
  Memo1.Text := PubSub.Pull('projects/your-project/subscriptions/sub-id', 10);
end;
// uses: sgcHTTP
TsgcHTTPGoogleCloud_PubSub_Client *PubSub = new TsgcHTTPGoogleCloud_PubSub_Client(this);
PubSub->GoogleCloudOptions->ServiceAccountJSON->LoadFromFile("service-account.json");

PubSub->Publish("projects/p/topics/t", payload);
Memo1->Text = PubSub->Pull("projects/p/subscriptions/s", 10);

O que está incluído

Encapsula a interface REST do Pub/Sub com o fluxo de autenticação padrão por conta de serviço do Google.

Gerenciamento de tópicos

CreateTopic, DeleteTopic, GetTopic, ListTopics acessam a família de endpoints /projects/<id>/topics.

Publicar

Publish envia uma ou mais entradas PubsubMessage com atributos opcionais e chaves de ordenação, retornando os messageIds atribuídos.

Pull / Acknowledge

Pull(subscription, maxMessages) retorna mensagens recebidas com seus ackId; Acknowledge(subscription, ackIds) as finaliza, ModifyAckDeadline estende o tempo de processamento.

JWT de conta de serviço

Mesmo fluxo de autenticação dos componentes FCM e Calendar — carrega a chave JSON, assina um JWT RS256, troca por um token OAuth e renova quando necessário.

Gerenciamento de assinaturas

CreateSubscription, DeleteSubscription, UpdateSubscription, ListSubscriptions gerenciam o lado das assinaturas no Pub/Sub.

Push ou pull

Assinaturas pull são lidas com Pull; assinaturas push são configuradas para chamar seu endpoint — tipicamente uma instância de TsgcWebSocketHTTPServer atrás de uma URL pública.

Especificações e referências

Fontes autoritárias para a API implementada por este componente.

Documentação e Demos

Acesse a referência do componente, obtenha o projeto de demonstração pronto para executar e baixe a versão de avaliação.

Ajuda Online — Google Pub/Sub Client Referência completa de propriedades, métodos e eventos deste componente.
Projeto de Demo — Demos\20.HTTP_Protocol\03.Google Projeto de exemplo pronto para executar. Incluído no pacote sgcWebSockets — baixe a versão de avaliação abaixo.
Documento Técnico (PDF) Recursos, início rápido, exemplos de código para Delphi & C++ Builder e referências de fonte primária — somente este componente.
Manual do Usuário (PDF) Manual abrangente cobrindo todos os componentes da biblioteca.

Pronto para usar o Cloud Pub/Sub no Delphi?

Baixe a versão gratuita e integre o Google Cloud Pub/Sub em suas aplicações Delphi.