SupraOracles

post image

SupraOracles to nowatorskie, wysokoprzepustowe rozwiązanie Oracle i IntraLayer: pionowo zintegrowany zestaw narzędzi do rozwiązywania międzyłańcuchowego (wyrocznia danych, mosty zasobów, sieć automatyzacji i inne), które łączą wszystkie łańcuchy bloków, publiczne (L1 i L2) lub prywatne (przedsiębiorstwa).

Integracja z Cenami SupraOracle jest szybka i łatwa. SupraOracles obsługuje obecnie kilka sieci opartych na Solidity/EVM, takich jak Shardeum, oraz sieci innych niż EVM, takie jak Sui, Aptos.

Aby zobaczyć wszystkie sieci, w których działa SupraOracles, odwiedź stronę SupraOracles' Networks!

Aby rozpocząć, odwiedź stronę dokumentacji SupraOracle i przejrzyj dokumentację lub postępuj zgodnie z tym przewodnikiem, aby szybko rozpocząć.

Dodaj następujący kod do inteligentnej umowy solidity, którą chcesz pobrać wartość S.

  • Solidność

interface ISupraSValueFeed {
    function checkPrice(string memory marketPair) external view returns (int256 price, uint256 timestamp);
}

Spowoduje to utworzenie interfejsu, który później zastosujesz, aby pobrać cenę od SupraOracles.

Aby pobrać wartość S z inteligentnego kontraktu SupraOracles, należy najpierw znaleźć adres kanału danych S-Value dla wybranego łańcucha.

W przypadku Shardeum Liberty 2.X i 1.X AlphaNet adres to 0x700a89Ba8F908af38834B9Aba238b362CFfB665F

Gdy masz właściwy adres, utwórz instancję S-Value Feed, korzystając z interfejsu, który wcześniej zdefiniowaliśmy dla Shardeum Liberty 2.X lub 1.X AlphaNet:

  • Solidność

contract ISupraSValueFeedExample {
    ISupraSValueFeed internal sValueFeed;

    constructor() {
        sValueFeed = ISupraSValueFeed(0x700a89Ba8F908af38834B9Aba238b362CFfB665F);
    }
}

Teraz możesz po prostu uzyskać dostęp do ceny kryptowaluty o wartości S naszych obsługiwanych par rynkowych. W tym kroku uzyskamy cenę ETH / USDT (eth_usdt), stosując następujący kod do naszego Smart Contract.

  • Solidność

function getEthUsdtPrice() external view returns (int) {
    (
        int price,
        /* uint timestamp */
    ) = sValueFeed.checkPrice("eth_usdt");

    return price;
}

Oto przykład tego, jak powinna wyglądać Twoja implementacja:

  • Solidność

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.7;


interface ISupraSValueFeed {
    function checkPrice(string memory marketPair) external view returns (int256 price, uint256 timestamp);
}

contract ISupraSValueFeedExample {
    ISupraSValueFeed internal sValueFeed;

    constructor() {
        sValueFeed = ISupraSValueFeed(0x700a89Ba8F908af38834B9Aba238b362CFfB665F);
    }

    function getEthUsdtPrice() external view returns (int) {
        (
            int price,
            /* uint timestamp */
        ) = sValueFeed.checkPrice("eth_usdt");

        return price;
    }
}

Tada! You now have a method in your Smart Contract that you can call at any time to retrieve the price of ETH in USDT!

  • Javascript

// example assumes that the ethers library has been imported and is accessible within your scope
const getEthUsdtPrice = async () => {
  const provider = new ethers.providers.JsonRpcProvider('https://data-seed-prebsc-1-s1.binance.org:8545/')
  const abi = [{ "inputs": [ { "internalType": "string", "name": "marketPair", "type": "string" } ], "name": "checkPrice", "outputs": [ { "internalType": "int256", "name": "price", "type": "int256" }, { "internalType": "uint256", "name": "timestamp", "type": "uint256" } ], "stateMutability": "view", "type": "function" } ]
  const address = '0x700a89Ba8F908af38834B9Aba238b362CFfB665F'
  const sValueFeed = new ethers.Contract(address, abi, provider)
  const price = (await sValueFeed.checkPrice('eth_usdt')).price

  console.log(`The price is: ${price.toString()}`)
}

getEthUsdtPrice()

Jeśli chcesz zrobić kolejny krok, rozważ zarejestrowanie się w programie Supra Network Activate Program (SNAP).

Program Supra Network Activate Program (SNAP) oferuje firmom zniżki na kredyty Oracle, dokumentację techniczną i obsługę klienta w celu osadzenia bardzo potrzebnych wyroczni i VRF/RNG. SNAP obsługuje skalowanie i wzrost Web3 w celu buforowania kosztów, które zazwyczaj mogą hamować sukces firmy.

Program SNAP współpracuje z jednymi z najbardziej płodnych nazwisk Web3, które pomagają w wyborze i kwalifikacji projektów.