API WebSocket Blockchain.com

Reçois en temps réel les notifications de transactions Bitcoin, les événements de nouveaux blocs et l'activité d'adresses via la passerelle WebSocket publique Blockchain.com.

TsgcWebSocketClient

L'endpoint WebSocket Blockchain.com est un canal de commandes JSON public — utilise le TsgcWebSocketClient générique pour envoyer des messages op et recevoir des événements utx/block.

Classe du composant

TsgcWebSocketClient

Plateformes

Windows, macOS, Linux, iOS, Android

Édition

Standard / Professional / Enterprise

Connecte, abonne, parse

Ouvre un TsgcWebSocketClient sur wss://ws.blockchain.info/inv, envoie les commandes JSON d'abonnement et parse les événements utx et block entrants.

uses
  sgcWebSocket, sgcJSON;

var
  WSClient: TsgcWebSocketClient;
begin
  WSClient := TsgcWebSocketClient.Create(nil);
  WSClient.URL := 'wss://ws.blockchain.info/inv';

  WSClient.OnMessage := procedure(Connection: TsgcWSConnection; const Text: string)
  begin
    Memo1.Lines.Add(Text);
  end;

  WSClient.OnConnect := procedure(Connection: TsgcWSConnection)
  begin
    // Subscribe to all new bitcoin transactions
    Connection.WriteData('{"op":"unconfirmed_sub"}');

    // Receive new blocks
    Connection.WriteData('{"op":"blocks_sub"}');

    // Subscribe to a specific address
    Connection.WriteData('{"op":"addr_sub","addr":"1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa"}');
  end;

  WSClient.Active := True;
end;
// uses: sgcWebSocket
TsgcWebSocketClient *WSClient = new TsgcWebSocketClient(this);
WSClient->URL = "wss://ws.blockchain.info/inv";

// Hook OnMessage and OnConnect, then subscribe:
//   WSClient->WriteData("{\"op\":\"unconfirmed_sub\"}");
//   WSClient->WriteData("{\"op\":\"blocks_sub\"}");
WSClient->Active = true;

Ce qu'il contient

Blockchain.com expose un simple canal op JSON sur WebSocket — utilise TsgcWebSocketClient directement.

Transactions non confirmées

Envoie {"op":"unconfirmed_sub"} après la connexion pour recevoir chaque nouvelle transaction du mempool sous la forme d'une enveloppe {"op":"utx", "x":{...}}.

Nouveaux blocs

{"op":"blocks_sub"} s'abonne aux notifications de nouveaux blocs — un {"op":"block", "x":{...}} arrive par bloc miné (note que le protocole peut publier plus d'un événement en cas de fork de chaîne).

Surveillance d'adresses

{"op":"addr_sub","addr":"<bitcoin-address>"} s'abonne aux transactions entrantes/sortantes pour une seule adresse. Utilise "addr_unsub" pour arrêter.

Trames WebSocket génériques

Comme Blockchain.com utilise un simple canal de commandes JSON, le composant TsgcWebSocketClient suffit — aucune classe Delphi spécifique à un exchange n'est requise.

Résilience

Configure WatchDog sur le client pour la reconnexion automatique sur coupure réseau et HeartBeat avec un ping TCP pour garder la connexion active à travers les timeouts NAT.

Parsing JSON

Reçois chaque trame dans OnMessage, puis parse avec sgcJSON ou ta bibliothèque JSON préférée. Le corps de la transaction se trouve sous le champ x de l'enveloppe.

Spécifications et références

Sources de référence pour les APIs auxquelles ce composant se connecte.

Documentation et démos

Accès direct à la référence du composant, récupère le projet de démo prêt à l'emploi et télécharge l'essai.

Aide en ligne — API_Blockchain Notes sur la connexion à la passerelle WebSocket Blockchain.com depuis Delphi.
Essai gratuit — sgcWebSockets Télécharge le paquet d'essai pour utiliser TsgcWebSocketClient sur n'importe quel endpoint WebSocket public.
Document technique (PDF) Fonctionnalités, démarrage rapide, exemples de code pour Delphi et C++ Builder et références aux sources primaires — ce composant uniquement.
Manuel utilisateur (PDF) Manuel complet couvrant tous les composants de la bibliothèque.

Prêt à surveiller le réseau Bitcoin ?

Télécharge l'essai gratuit et diffuse les événements Blockchain.com dans tes applications Delphi.