Skip to content

worldwide-asset-exchange/eosio-statereceiver

 
 

Repository files navigation

EOSIO state receiver

example workflow codecov

const StateReceiver = require('@waxio/eosio-statereceiver');

const sr = new StateReceiver({
  startBlock: 200,
  socketAddresses: [process.env.SOCKET_ADDRESS || 'ws://localhost:8080'],
  eosEndpoint: process.env.EOS_ENDPOINT || 'http://localhost:8888',
  deserializerActions: ['eosio.token::transfer'],
});

// sample trace handler
sr.registerTraceHandler({
  contractName: 'eosio.token',
  actionName: 'transfer',
  async processTrace(block_num, traces, block_time) {
    //
  },
});

sr.onError = (err) => {
  sr.stop();
  console.error(`State receiver stop due to ERROR:`, err);
};

sr.start();

Example can be found in state-receiver.js.

Running example:

export SOCKET_ADDRESS=http://localhost:8080
export EOS_ENDPOINT=http://localhost:8888

npm run dev

sample working log

$ npm run dev

> @waxio/[email protected] dev /home/ubuntu/eosio-statereceiver
> npm run state-receiver


> @waxio/[email protected] state-receiver /home/ubuntu/eosio-statereceiver
> node ./examples/state-receiver.js

Creating eosApi with endpoint: http://state-node-host:8888
Websocket connecting to: http://state-node-host:8080
Receiving abi...
Requesting blocks, Start : 20284880, End : 4294967295, Max Messages In Flight : 5
20284884 bridge.wax::nft2wax hg.wam
20284890 bridge.wax::nft2wax hg.wam
Received 918 B/s; Queue size: 20
Received 946.5 B/s; Queue size: 39
25077 returnvalue::returnstruct return value {"value1":"test value1 value1","value2":35594}
25264 returnvalue::returnstring return value "test test action return string"
...

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 99.9%
  • Shell 0.1%