๐Ÿ“ƒUsingWitnetRequestTemplate

๐Ÿง™Solidity Wizard

Constructor

Parameters
Type
Description

_witnetRequestTemplate

WitnetRequestTemplate

Address of the WitnetRequestTemplate from which concrete data requests will get built from this contract.

_baseFeeOverHeadPercentage

uint16

Percentage over base fee to pay when querying new data updates.

Properties

Name
Visibility
Description

dataRequestTemplate

Immutable public

Address of the WitnetRequestTemplate passed in constructor.

__witnet

Immutable internal

Address of the WitnetOracle instance to directly interact with.

__witnetBaseFeeOverheadPercentage

Internal

Percentage over base fee to pay when querying new data updates. Defaults to 33%.

__witnetDefaultSLA

Internal

Default Service Level Agreement parameters to be fulfilled by the Wit/Oracle blockchain when solving data updates.

Internal methods

Methods
Description

_witnetBuildRadHash(string[][])

Creates a unique RAD hash that identifies the resulting Radon Request after applying the given parameters to the dataRequestTemplate.

_witnetBuildRequest(string[][])

Creates a counter-factual WitnetRequest instance that contains the resulting RAdon Request after applying the given parameters to the dataRequestTemplate.

_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, string[][])

Query the Wit/Oracle to solve the resulting Radon Request after applying the given parameters to the dataRequestTemplate, specifying also how much fee to pay out from this contract's balance.

__witnetRequestData(u256,string[][],RadonSLA)

Query the Wit/Oracle to solve the resulting Radon Request after applying the given parameters to the dataRequestTemplate, specifying how much fee to pay and the SLA parameters to be fulfilled by the Wit/Oracle blockchain.

Events

Events
Arguments
Description

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

Was this helpful?