txq
Version:
TXQ: Bitcoin Transaction Storage Queue Service
82 lines (79 loc) • 3.21 kB
HTML
<html>
<head>
<style>
body {
margin: 0;
}
.flex {
display: flex;
height: 100%;
border: none;
}
.flex textarea {
padding: 10px;
box-sizing: border-box;
flex-grow: 1;
background: rgba(0,0,0,0.8);
color: rgba(255,255,255,0.9);
border: none;
height: 100%;
}
</style>
</head>
<body>
<div class='flex'>
<textarea id='mempool' readonly>
querying mempool.com...
</textarea>
<textarea id='taal' readonly>
querying taal.com...
</textarea>
</div>
<script src="../dist/minercraft.min.js"></script>
<script>
var Miners = {
"mempool": {
"url": "https://www.ddpurse.com/openapi",
"headers": {
"token": "561b756d12572020ea9a104c3441b71790acbbce95a6ddbf7e0630971af9424b",
'Content-Type': 'application/json'
}
},
// "taal2": {
// "url": "https://galt.bitcoinscaling.io:9004"
// },
"taal": {
"url": "https://merchantapi.taal.com",
"headers": {
'Content-Type': 'application/json'
}
}
}
const run = async (name) => {
let config = Miners[name];
const miner = new Minercraft(config)
const vrate = await miner.fee.rate({ verbose: true })
console.log("vrate = ", vrate)
const rate = await miner.fee.rate()
let ta = document.querySelector("#"+name)
if (!ta) return;
let div = document.createElement("div")
let r = "rate for " + name + ": " + JSON.stringify(rate, null, 2)
let fee = miner.fee.get({
rate: rate.mine,
tx: "0100000001648ed7d1c1a27ec923445c8d404e227145218c4ce01cf958a898c5a048e8f264020000006a47304402207dc1953455be091c8df18e7f7e1424bc4efdced3e400642f8316e3ef298c3f30022062d833b3f1b94593ec7c088b930e2987475c7d99bf19f5714b12a9facff100df41210273f105be3e7ca116e96c7c40f17267ae05ede7160eb099aa2146a88b6328f4ecffffffff030000000000000000fdc901006a223144535869386876786e36506434546176686d544b7855374255715337636e7868770c57544458565633505a4b474414e5ae89e5bebd2fe585ade5ae892fe99c8de982b119323032302d30342d30365430363a30303a30302b30383a30304c697b22617169223a223538222c22706d3235223a223332222c22706d3130223a223636222c22736f32223a2235222c226e6f32223a223235222c22636f223a22302e373530222c226f33223a223635222c22706f6c223a22504d3130222c22717561223a22e889af227d4cfb78da75d1c16a02311006e077c959964cb29944dfa1d07bf1209e0a6b57b137114aaf2d2d5e446d7b29d59e3c492f22f834d9ea5b3859e826bba4b73fc34cf898b999b0dee89675184ad662c3815094a5293370ca1a298f73415151ba2b9370cdfd9c124f34c55c563fe419c5eb2b9aa5b1fb1e3d7edf66c5cf93fdfa2ed6072a66ae2621d15203775d99fb070013c50da7cab45599c09b04062688999437993f53d91933ade6a7f5d16e37e7e5676842307553aa1b2685c19e02137a93a94c92c74c69dc54bc7f9c173bfbf21882745b379784a60e0a0f071ea4fce1a45f521a399cfae770f6f0605f67f6795f0381688010dd1da7dd0b690c97db22020000000000001976a914666675d887a7ae09835af934096d9fcbbb70eed288ac61290000000000001976a9149e7520bc258934a3d58704ab98ed0200e2c1bb9688ac00000000"
})
let f = "calculated fee for " + name + ": " + fee
const txid = "177b4087cf6ef58e7a93a2791762688a848edbc5169166bc4fd128fba84ff8ba"
let status = await miner.tx.status(txid, { verbose: true })
let s = "Transaction status for " + txid + ": " + JSON.stringify(status, null, 2)
ta.value = r + "\n\n" + f + "\n\n" + s
}
(async () => {
for(let name in Miners) {
run(name)
}
})()
</script>
</body>
</html>