cashscript icon indicating copy to clipboard operation
cashscript copied to clipboard

add a 'BchdGrpcNetworkProvider'

Open mr-zwets opened this issue 10 months ago • 2 comments

We might also want to add a BchdGrpcNetworkProvider

I experimented with the BCHD grpc years ago, i used the library @improbable-eng/grpc-web back then but now grpc-web seems to be the standard. I simply copy/pasted the bchrpc folder from bchd-block-explorer back then.

There's old documentation in the BCHD repo, but it's probably out-of-date: https://github.com/gcash/bchd/tree/master/bchrpc/documentation/client-usage-examples/nodejs-grpc

I used

import * as pb from "./bchrpc/bchrpc_pb_service";
import { GetAddressTransactionsRequest } from "./bchrpc/bchrpc_pb";

const client = new pb.bchrpcClient("https://ryzen.electroncash.de:8335");

and then something like

let getAddressTransactionsRequest = new GetAddressTransactionsRequest();
getAddressTransactionsRequest.setAddress(address);

console.log("getAddressTransactions");

const cancel = client.getAddressTransactions(getAddressTransactionsRequest, headers, function (error, response) {
    if (error) {
        // todo: show error modal
        console.log("error getAddressTransactions:", error.code, error.message);
    } else {
        console.log("getAddressTransactions");
        let message = new GetAddressTransactionsResponse();
        message = response;
    }
});

mr-zwets avatar Dec 20 '24 17:12 mr-zwets