Comments (4)
BWT provides a real-time streaming API for wallet events (also available via WebHooks) and has an HTTP API that's somewhat similar to Esplora, but also different in some ways.
I can definitely see how it could be useful to make this available for elements. I will look into this, but it probably won't happen soon. Will gladly accept a PR if it doesn't overly complicate the codebase.
from bwt.
It's actually just the electrum server implementation (src/electrum/server.rs
) that's based on electrs, the index and query engines are separate, so it can't benefit much from bs/electrs's support for elements.
It should however be feasible do to this in a manner similar to how bs/electrs does it, with a compile time flag that switches the data types to elements's and adds some special-case behaviors for CT, issued assets and peg ins/outs.
Can you tell me a little more about the use-case? What are you looking to do with this?
from bwt.
For the time being Blockstream's fork of electrs (namely Esplora?) is the only explorer out there for elements. It's optimized for "enterprise" workflows, but as a "personal" indexer use cases a bit less (ie. too much resource hungry).
When I say personal, I mean "hey this is my xpub, please notify myself when new transactions are coming in related to this wallet, don't care about indexing others"
Therefore HTTP2 server-side sent push (or maybe gRPC streaming even more) would be very useful for couple of micro-services I run.
from bwt.
I think then at this point I would go with doing then a PoC that uses zmq notifications of an elements node to get blocks, and a custom block/tx parser that filters per script of a given xpub.
The idea is to keep the same exact RES API as Esplora plus server-side push/streaming, to make sure clients are cross-compatible
from bwt.
Related Issues (20)
- GPG key expired HOT 2
- document all RPC calls
- Cannot connect to server HOT 1
- Field keypoololdest returned from getwalletinfo should not be required
- rpc blockchain.relayfee peer panicked on 'Option::unwrap()' HOT 1
- Make polling less frequent when there are no connected clients
- Compatibility with Bitcoin Core v0.21 HOT 1
- Multi-arch docker images
- Use testmempoolaccept to determine if the transaction is valid prior to custom broadcast
- Switch WebHooks to use ureq/attohttpc
- `error for getwalletinfo: RpcError { code: -32601, message: "Method not found", data: None }` HOT 1
- code: -18, message: "No wallet is loaded" HOT 4
- Feature Request: Add tracked accounts at runtime HOT 2
- Optional ASCII-only console output HOT 3
- Add Taproot support HOT 10
- Support coinbase outputs HOT 2
- Connection via Bitcoin RPC fails in Bitcoin v23 rc2 HOT 7
- Fee field for getrawmempool has moved in Bitcoin v23 rc2
- Allow configuration of separate RPC socket connect timeout
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bwt.