Reporting With Telliot
Learn how to automatically report data using a command line tool.
Reporting a Price
You can start reporting through Telliot by running the following Telliot command:
This will make a PLS/USD price report (without checking for 'tips') with the liquidity weighted average price (LWAP) default configuration:
Note: When using the report
command, Telliot will automatically attempt to stake the minimum required to report. Use the Fetch Dashboard to check the current minimum stake amount.
Always confirm the correct settings when prompted and read chain-specific usage sections before setting up your reporter!
Always include --fetch-flex
on the CLI for reporting to FetchFlex contract.
There are also additional flags you can pass to use a specific strategy for calculating maxFeePerGas
and maxPriorityFeePerGas
for EIP-1559 transactions. To learn more, view the Fees Estimation section of this documentation.
Help Flag
Use the help flag to view all available commands and option flags:
For details on all available ENV configurations available in Telliot, please review the Appendix.
Always make config changes using the .env
file in the ~/fetchoracle/disputable-values-monitor/ if you installed from the installation script.
If you installed -core and -feeds as standalones, change the .env in their respective folders.
Reporting Options
This section covers the various ways to report using Telliot.
Basic Report
The basic command line to report is:
You can use the -ncr
'no check rewards' option to submit anytime. Otherwise, it will not report unless there are tips available for the QueryID
you want to report.
A full command line would look like this:
By default, Telliot will try to report to your chosen query every 7 seconds.
Custom Staking for Reporting
When reporting to Fetch Oracle, reporters can stake multiple times. The minimum value for each stake will be given by the minimum stake amount as configured in the Oracle contract.
You can find the current minimum stake amount for reporting to Fetch Oracle on the Fetch Dashboard.
The reporter will automatically attempt to stake the required amount, but if you'd like to stake more than the current minimum you can use the --stake/-s
flag like so:
In the above example, Telliot will try to stake 500,000 FETCH
tokens and then report immediately afterwards. If you just want to stake the tokens, press ctrl + c right after the stake is confirmed.
NOTE: If the reporter account's actual stake is reduced after a dispute, the reporter will attempt to stake the difference in FETCH to return to the original desired stake amount.
To avoid this, run it without the -s flag. It will stop reporting when it detects a deduction in stake amount, which may mean it got disputed.
To continue reporting when disputed use the --continue-reporting-on-dispute flag.
It is not possible to unstake FETCH using the Telliot command line. Instead you can use the Fetch Dashboard to unstake your FETCH at any time after the initial 7-day period.
Single Report
To submit a simple single report, add the --submit-once
flag, like this:
After one value is submitted to Fetch Oracle, the Telliot process will terminate.
Reporting in Intervals
To stop trying to report every 7 seconds, we can use the -wp option and specify what interval, in seconds, we want Telliot to try to submit a report. Here' how:
Here, Telliot will submit the first report and then wait 3,600 seconds (1 hour) to try to submit the next one. If you are out of lock period it will succeed, otherwise, it will try again 3,600 seconds later.
Last updated