Crate electrum_client
source ·Expand description
This library provides an extendable Bitcoin-Electrum client that supports batch calls, notifications and multiple transport methods.
By default this library is compiled with support for SSL servers using rustls and support for
plaintext connections over a socks proxy, useful for Onion servers. Using different features,
the SSL implementation can be removed or replaced with openssl.
A minimal configuration is also provided, which only includes the plaintext TCP client.
Example
use electrum_client::{Client, ElectrumApi};
let mut client = Client::new("tcp://electrum.blockstream.info:50001")?;
let response = client.server_features()?;Re-exports
Modules
- Electrum Client
- Raw client
- SOCKS proxy clients
Structs
- Helper structure that caches all the requests before they are actually sent to the server.
- Config Builder
- Response to a
script_get_balancerequest. - Response to a
server_featuresrequest. - Response to a
script_get_historyrequest. - Response to a
transaction_get_merklerequest. - Notification of a new block header
- Response to a
script_list_unspentrequest. - Notification of a new block header with the header encoded as raw bytes
- A request that can be sent to the server
- Notification of the new status of a script
- Response to a
server_featuresrequest. - Configuration for Socks5
Enums
- Errors
- A single parameter of a
Request
Traits
- API calls exposed by an Electrum client
- Trait used to convert a struct into the Electrum representation of an address
Type Definitions
- Format used by the Electrum server to identify an address. The reverse sha256 hash of the scriptPubKey. Documented here.
- Binary blob that condenses all the activity of an address. Used to detect changes without having to compare potentially long lists of transactions.