Vai al contenuto principale

Come configurare Tellor come tuo oracolo

Solidity
contratti intelligenti
oracoli
Principiante
Tellor
29 giugno 2021
2 minuti di lettura

Quiz a sorpresa: Il tuo protocollo è quasi finito, ma ha bisogno di un oracolo per accedere ai dati fuori catena... Cosa fai?

Prerequisiti (flessibili)

Questo post mira a rendere l'accesso a un feed dell'oracolo il più semplice e diretto possibile. Detto questo, diamo per scontato quanto segue sul tuo livello di abilità di programmazione per concentrarci sull'aspetto dell'oracolo.

Presupposti:

  • sai navigare in un terminale
  • hai installato npm
  • sai come usare npm per gestire le dipendenze

Tellor è un oracolo live e open-source pronto per l'implementazione. Questa guida per principianti è qui per mostrare la facilità con cui si può iniziare a usare Tellor, fornendo al tuo progetto un oracolo completamente decentralizzato e resistente alla censura.

Panoramica

Tellor è un sistema di oracolo in cui le parti possono richiedere il valore di un punto dati fuori catena (es. BTC/USD) e i reporter competono per aggiungere questo valore a una banca dati on-chain, accessibile da tutti i contratti intelligenti di Ethereum. Gli input a questa banca dati sono protetti da una rete di reporter in stake. Tellor utilizza meccanismi di incentivi criptoeconomici, premiando l'invio di dati onesti da parte dei reporter e punendo i malintenzionati attraverso l'emissione del token di Tellor, Tributes (TRB), e un meccanismo di disputa.

In questo tutorial esamineremo:

  • La configurazione del toolkit iniziale necessario per iniziare.
  • Un semplice esempio passo dopo passo.
  • L'elenco degli indirizzi della rete di test delle reti su cui attualmente puoi testare Tellor.

UsingTellor

La prima cosa che vorrai fare è installare gli strumenti di base necessari per usare Tellor come tuo oracolo. Usa questo pacchetto (opens in a new tab) per installare i Contratti Utente di Tellor (Tellor User Contracts):

npm install usingtellor

Una volta installato, questo permetterà ai tuoi contratti di ereditare le funzioni dal contratto 'UsingTellor'.

Ottimo! Ora che hai gli strumenti pronti, facciamo un semplice esercizio in cui recuperiamo il prezzo del bitcoin:

Esempio BTC/USD

Eredita il contratto UsingTellor, passando l'indirizzo di Tellor come argomento del costruttore:

Ecco un esempio:

1import "usingtellor/contracts/UsingTellor.sol";
2
3contract PriceContract is UsingTellor {
4 uint256 public btcPrice;
5
6 // Questo contratto ora ha accesso a tutte le funzioni in UsingTellor
7
8constructor(address payable _tellorAddress) UsingTellor(_tellorAddress) public {}
9
10function setBtcPrice() public {
11 bytes memory _b = abi.encode("SpotPrice",abi.encode("btc","usd"));
12 bytes32 _queryId = keccak256(_b);
13
14 uint256 _timestamp;
15 bytes _value;
16
17 (_value, _timestamp) = getDataBefore(_queryId, block.timestamp - 15 minutes);
18
19 btcPrice = abi.decode(_value,(uint256));
20 }
21}
Mostra tutto

Per un elenco completo degli indirizzi del contratto fai riferimento a questa pagina (opens in a new tab).

Per facilità d'uso, la repository UsingTellor include una versione del contratto Tellor Playground (opens in a new tab) per un'integrazione più semplice. Vedi qui (opens in a new tab) per un elenco di funzioni utili.

Per un'implementazione più robusta dell'oracolo Tellor, dai un'occhiata all'elenco completo delle funzioni disponibili qui (opens in a new tab).

Ultimo aggiornamento della pagina: 21 ottobre 2025

Questo tutorial è stato utile?