跳转至主要内容

帮助更新此页面

🌏

本页面有新版本,但现在只有英文版。请帮助我们翻译最新版本。

翻译页面
查看英文

没有错误!🐛

此页面未翻译,因此特意以英文显示。

如何将 Tellor 设置为您的预言机

solidity智能合约价格馈送预言机
初学者
✍️Tellor
📚Tellor Docs(opens in a new tab)
📆2021年6月29日
⏱️4 分钟阅读

小测验:您的协议即将完成,但它需要一个预言机来访问链下数据......您该怎么做?

(软)前提条件

这篇文章旨在解释如何让访问预言机数据馈送变得简单易行。 这就是说,我们假定您具备一定的编码技能水平,下文侧重于讲述预言机方面。

本文假定:

  • 您能够使用终端
  • 您安装了 npm
  • 您知道如何使用 npm 管理依赖项

Tellor 是一种可供直接实现的开源预言机。 本初学者教程旨在展示如何简单地运行 Tellor,为您的项目提供一个完全去中心化的、抗审查的预言机。

概述

Tellor 是一种预言机系统,参与者可以在该系统中请求链下数据点(例如 BTC/USD)的值,提供者相互竞争将该值添加到链上数据库中,使得所有以太坊智能合约都可以访问该值。 该数据库的输入由质押提供者网络提供保护。 Tellor 利用加密经济激励机制,奖励提供者诚实的数据提交行为,并通过发行 Tellor 的代币、Tribute (TRB) 和争议机制来惩罚不良行为者。

在本教程中,我们将介绍:

  • 设置您需要运行的初始工具包。
  • 讲解一个简单示例。
  • 列出目前可以测试 Tellor 的网络的测试网地址。

使用 Tellor

首先安装一些基本工具,以便将 Tellor 作为预言机。 使用此软件包(opens in a new tab)安装 Tellor 用户合约:

npm install usingtellor

安装完成后,将允许您的合约继承“UsingTellor”合约的函数。

很好! 既然您已经准备好工具了,我们来完成一个简单的练习来获取比特币价格:

BTC/USD 示例

继承 UsingTellor 合约,将 Tellor 的地址作为构造函数的参数:

下面是一个示例:

1import "usingtellor/contracts/UsingTellor.sol";
2
3contract BtcPriceContract is UsingTellor {
4
5 //This Contract now has access to all functions in UsingTellor
6
7 bytes btcPrice;
8 bytes32 btcQueryId = 0x0000000000000000000000000000000000000000000000000000000000000002;
9
10 constructor(address payable _tellorAddress) UsingTellor(_tellorAddress) public {}
11
12 function setBtcPrice() public {
13 bool _didGet;
14 uint256 _timestamp;
15
16 (_didGet, btcPrice, _timestamp) = getCurrentValue(btcQueryId);
17 }
18}
19
显示全部
📋 复制

想尝试不同的数据馈送? 请点击此处查看支持的数据馈送列表: 当前数据馈送(opens in a new tab)

地址

主网:0x88df592f8eb5d7bd38bfef7deb0fbc02cf3778a0(opens in a new tab)

要先进行一些测试吗? 请参阅以下活跃的测试网地址列表:

Rinkeby:0x88df592f8eb5d7bd38bfef7deb0fbc02cf3778a0(opens in a new tab)

Kovan:0x3477EB82263dabb59AC0CAcE47a61292f28A2eA7(opens in a new tab)

Ropsten:0x3477EB82263dabb59AC0CAcE47a61292f28A2eA7(opens in a new tab)

Goerli:0x3477EB82263dabb59AC0CAcE47a61292f28A2eA7(opens in a new tab)

BSC Testnet:0x3477EB82263dabb59AC0CAcE47a61292f28A2eA7(opens in a new tab)

Polygon Mumbai Testnet:0x3477EB82263dabb59AC0CAcE47a61292f28A2eA7(opens in a new tab)

Arbitrum Testnet:0x3477EB82263dabb59AC0CAcE47a61292f28A2eA7(opens in a new tab)

要更加可靠地实现 Tellor 预言机,请点击此处(opens in a new tab)查看可用函数的完整列表。

上次编辑: , Invalid DateTime
编辑页面
(opens in a new tab)

本页面对您有帮助吗?