📃WitnetRequestConsumer
Constructor
_witnetRequest
WitnetRequest
Address of the WitnetRequest instance to use as reference when querying data updates to WitnetOracle.
_baseFeeOverheadPercentage
uint16
Percentage over base fee to pay when querying new data updates.
_callbackGasLimit
uint24
Maximum gas expected to be spent by the callback methods.
Modifiers
onlyFromWitnet
To be added on callback methods for attending query results from the Wit/Oracle.
witnetQuerySolved(uint256 queryId)
Provides a convenient way for consuming contracts to block execution of the contract's logic until a particular randomness query gets ultimately reported from the Wit/Oracle blockchain.
Properties
__witnetBaseFeeOverheadPercentage
Internal
Percentage over base fee to pay when querying new data updates. Defaults to 33%.
__witnetCallbackGasLimit
Internal
Maximum gas expected to be spent by the callback methods.
__witnetDefaultSLA
Internal
Default Service Level Agreement parameters to be fulfilled by the Wit/Oracle blockchain when solving data updates.
__witnetRequestRadHash
Immutable internal
Immutable RAD hash identifying the actual sources and computations being solved by the Wit/Oracle upon every data update.
Internal methods
_witnetCheckQueryResponseStatus(uint256)
Check current WitnetV2.ResponseStatus
of the specified query.
_witnetCheckQueryResultAvailability(uint256)
Check if the specified query was already reported back from the Wit/Oracle blockchain.
_witnetCheckQueryResultError(uint256)
Get detailed Witnet.ResultError
for the specified query.
_witnetEstimateEvmReward()
Estimate the minimum reward required for posting a data request, using tx.gasprice
as a reference.
__witnetRequestData(uint256 _evmReward)
Post a data query in expectation that it will get eventually solved and reported from the Wit/Oracle blockchain, specifying how much fee to pay out from this contract's balance.
__witnetRequestData(uint256, RadonSLA)
Post a data query in expectation that it will get eventually solved and reported, specifying how much fee to pay and the SLA parameters to be fulfilled by the Wit/Oracle blockchain.
Events
WitnetQuery
address evmRequester
uint256 evmGasPrice
uint256 evmReward
uint256 queryId
bytes32 queryRadHash
RadonSLA querySLA
Emitted every time a new randomize query gets posted to the WitnetOracle contract.
WitnetQueryUpgrade
uint256 queryId
address evmSender
uint256 evmGasPrice
uint256 evmReward
Emitted if the EVM reward for solving a previously posted randomize is increased by anyone in any amount.
Last updated