Crie seu oráculo Chainlink no Ethereum
No artigo anterior , criei um guia para instalação do seu nó Chainlink, use-o caso não tenha um nó em execução, pois isso é necessário para a implantação do oracle.
A próxima etapa será implantar o contrato oracle e vinculá-lo ao nó.
O contrato oracle é o componente on-chain para o serviço oracle: ele atende solicitações de dados de outros contratos, retransmite consultas de dados para nós oracle e transmite dados retornados para contratos de clientes. Este contrato também pode executar algum cálculo nos pontos de dados retornados para produzir um valor agregado que envia ao contrato solicitante.
Precisamos implantar um dos contratos como Oracle.sol ou Operator.sol no blockchain.
Oracle.sol é um tipo antigo de contrato que não oferece suporte a “respostas grandes” e, portanto, não oferece suporte a respostas com várias palavras. Operator.sol é um novo tipo que suporta respostas grandes, mas consome mais gás.
Escolha o tipo de contrato com base em sua tarefa: se precisar obter uma resposta curta com uma única variável, selecione — Oracle.sol e, se precisar retornar vários valores para o contrato — Operator.sol.
Vou mostrar um exemplo de como configurar as duas opções. Vamos começar com Oracle.sol .
Para implantar o contrato, usaremos o Remix , sim, você também pode usar ferramentas como Hardhat ou Truffle , mas no guia vou ver o exemplo do Remix .
Para implantar o contrato Oracle.sol , copie o seguinte código:
// SPDX-License-Identifier: MIT
pragma solidity 0.6.6;
import "@chainlink/contracts/src/v0.6/Oracle.sol";
Em seguida, vá para a guia de implantação e selecione o ambiente desejado, por exemplo: Provedor injetado — Metamask . Conecte-se à conta que será usada para implantação e especifique a rede necessária.
Para implantá-lo, escolha o contrato Oracle e defina o parâmetro — o endereço do LINK do contrato na rede especificada ( encontre-o na documentação do Chainlink ) e clique no botão transacionar.

Em seguida, precisamos conceder permissão à carteira do nosso nó para registrar os resultados das funções do oráculo. O endereço da carteira do nó está localizado na GUI do Chainlink Operator no canto superior direito da página inicial. Copie-o, chame a função de contrato setFulfillmentPermission do Oracle, cole-o nos argumentos e defina o valor como true .

É isso, nesta etapa você implantou seu oráculo, basta conectar a interação com ele a outro contrato inteligente.
E quanto ao contrato Operator.sol , como implantá-lo?
OK, para fazer isso, copie o seguinte código:
// SPDX-License-Identifier: MIT
pragma solidity 0.7.6;
import "@chainlink/contracts/src/v0.7/Operator.sol";

Depois de implantar o contrato, como antes no contrato Oracle.sol , precisamos adicionar o endereço da carteira do nó. Para fazer isso, chame a função setAuthorizedSenders e insira o endereço no seguinte formato nos argumentos: [“endereço”]

Você implantou seu contrato oracle perfeitamente, no próximo artigo escreverei sobre como os contratos inteligentes podem interagir com o oracle.