sdk_relay
Description
sdk_relay est un service Rust qui relaye des messages et événements autour de Bitcoin en s’adossant à:
- RPC Bitcoin Core (lecture chaîne, mempool, transactions, PSBT)
- ZMQ de Bitcoin Core (sujets
rawtx,hashblock) - Blindbit (scan filtré BIP158 via
sdk_common) - WebSocket (serveur « fanout » et diffusion contrôlée)
Fonctionnalités
- Serveur WebSocket configurable (
ws_url) - Endpoint de santé HTTP (
/healthsur port 8091) - Gestion d’état locale dans
~/<data_dir>(par défaut.4nk) - Diffusion des messages réseau
sdk_common(Handshake, NewTx, Commit, Cipher, etc.) - Persistance de portefeuille Silent Payments et des processus/membres
Configuration
Créer un fichier de configuration et le fournir via --config (voir docs/ANALYSE.md):
core_url,core_wallet?,ws_url,wallet_name,network,blindbit_url,zmq_url,data_dir,bootstrap_url?,bootstrap_faucet
Build
Pré-requis: Rust stable. Compilation locale simple:
cargo build
Compilation par conteneur: voir Dockerfile (multi‑étapes; binaire sdk_relay).
Exécution
Le binaire expose:
- WebSocket sur
ws_url(ex.:0.0.0.0:8090) /healthsur8091renvoyant{"status":"ok"}
Tests
- Tests réseau:
tests/ws_connect.rs(nécessite un service en écoute surSDK_RELAY_WS_URLouws://localhost:8090) - Vérification santé:
tests/health_check.sh
Documentation
Voir docs/ANALYSE.md (architecture) et docs/VALIDATION.md (parcours de validation et dépannage).
Licence et contributions
Voir LICENSE, CONTRIBUTING.md, CODE_OF_CONDUCT.md.
Journal de changements
Voir CHANGELOG.md.
Description