VID Pool Software
Software for sharing transcoder rewards with delegators.
Background
VideoCoin Network workers get rewarded for the work they do. The amount of work they will get is related to the amount of VID tokens staked to the workers, including staked tokens from delegators. In order to incentivize delegators workers have to share payouts with them.
The Software in this repository is meant to share rewards with delegators and should be run by transcoder periodically.
Install
Use docker pull registry.videocoin.net/vidpool/vidpool:latest
.
Build
To build use:
You will get a binary for the current platform.
Or build a docker image with:
Configuration
Config example:
DataDir
Application will need to store small amount of the persistent data, for transactions recovery and latest processed block.
KeyFile
Key in ethereum v3 format, encrypted with Password. It will be used for transactions on PaymentsChain.
Path must be absolute or relative to configuration file.
StreamManagerAddress
Used as a source for rewards.
StakingManagerAddress
Used as a source for delegation shares and transcoder reward.
BlockContractAddress
Application needs to store last processed block in a safe place. By default we will store this block in a file inside DataDir, but there is also an option to deploy a contract on videocoin blockchain and use it for storage.
To deploy:
Output:
If BlockContractAddress is defined application will be using a specified contract, otherwise, it will fall back to a file.
WorkerChainURL
ETH blockchain with StreamManager and StakingManager, in practice VideoCoin blockchain.
PaymentsChainURL
ETH blockchain where a worker has funds, in practice PublicMint blockchain.
Auth
ClientID is the one worker received in the VideoCoin console.
Setup
Check out the dedicated guide for worker setup at Setup.
Usage
Public Mint integration
To share payments with delegators you can use:
With --dry-run
option transactions will be created but they won't be sent to blockchain To send transactions - remove --dry-run
option.
User can specify --csv=<file to path>
flag, in such case detailed information will be saved into csv file. If the file already exists - the file will be truncated, if doesn't exist - file will be created.
Ethereum mainnet integration
Since v0.2.0 release we support paying out to stakers flat percent over the period of time. For example, 8% over a year.
To learn more about the inner structure of such payments see flat-payments.
To make payments, setup configuration, and run:
To see amounts before making payments use:
License
Last updated