WavesReproduce is a framework for reproducing transactions logic already applied to a Waves type blockchain.
- Automatically reconstructs on-chain state
- Watches multiple addresses
- Lets you attach custom logic to different transaction types
composer require deemru/wavesreproduce
use deemru\WavesKit;
use deemru\WavesReproduce;
$wk = new WavesKit;
$address = 'target_waves_address';
$rp = new WavesReproduce( $wk, $address );
$rp->update();
$handlers = [
// Data transactions (type = 12)
12 => [
$address => function( $tx ) {
// Handle data tx for this address
}
],
// Invoke transactions (type = 16)
16 => [
$address => function( $tx ) {
// Handle invoke tx for this address
}
],
];
// Replay all transactions of interest from the earliest recorded height
$rp->reproduce( $handlers );
// Access your replicated state
$state = $rp->state[$address];
- Consider to learn self tests: selftest.php