अपने ऑरेकल के रूप में टेलर को कैसे सेट अप करें
पॉप क्विज़: आपका प्रोटोकॉल लगभग पूरा हो चुका है, लेकिन इसे ऑफचेन डेटा तक पहुंचने के लिए एक ऑरेकल की आवश्यकता है... आप क्या करते हैं?
(सॉफ्ट) पूर्वापेक्षाएँ
इस पोस्ट का उद्देश्य ऑरेकल फ़ीड तक पहुंच को यथासंभव सरल और सीधा बनाना है। इसके साथ ही, ऑरेकल पहलू पर ध्यान केंद्रित करने के लिए हम आपके कोडिंग कौशल-स्तर के बारे में निम्नलिखित मान रहे हैं।
मान्यताएँ:
- आप टर्मिनल नेविगेट कर सकते हैं
- आपके पास npm इंस्टॉल है
- आप जानते हैं कि निर्भरताओं (dependencies) को प्रबंधित करने के लिए npm का उपयोग कैसे करें
टेलर एक लाइव और ओपन-सोर्स ऑरेकल है जो कार्यान्वयन के लिए तैयार है। यह शुरुआती मार्गदर्शिका यह दिखाने के लिए है कि टेलर के साथ काम शुरू करना कितना आसान है, जो आपके प्रोजेक्ट को पूरी तरह से विकेंद्रीकृत और सेंसरशिप-प्रतिरोधी ऑरेकल प्रदान करता है।
अवलोकन
टेलर एक ऑरेकल सिस्टम है जहां पार्टियां ऑफचेन डेटा पॉइंट (उदा., BTC/USD) के मूल्य का अनुरोध कर सकती हैं और रिपोर्टर इस मूल्य को ऑनचेन डेटा-बैंक में जोड़ने के लिए प्रतिस्पर्धा करते हैं, जो सभी इथेरियम स्मार्ट अनुबंधों द्वारा सुलभ है। इस डेटा-बैंक के इनपुट स्टेक किए गए रिपोर्टरों के नेटवर्क द्वारा सुरक्षित किए जाते हैं। टेलर क्रिप्टो-आर्थिक प्रोत्साहन तंत्र का उपयोग करता है, जो रिपोर्टरों द्वारा ईमानदार डेटा सबमिशन को पुरस्कृत करता है और टेलर के टोकन, Tributes (TRB) के निर्गमन और एक विवाद तंत्र के माध्यम से बुरे तत्वों को दंडित करता है।
इस ट्यूटोरियल में हम निम्नलिखित पर चर्चा करेंगे:
- काम शुरू करने के लिए आवश्यक प्रारंभिक टूलकिट सेट अप करना।
- एक सरल उदाहरण के माध्यम से समझना।
- उन नेटवर्क के टेस्टनेट पतों की सूची बनाना जिन पर आप वर्तमान में टेलर का परीक्षण कर सकते हैं।
UsingTellor
सबसे पहली चीज़ जो आप करना चाहेंगे वह है अपने ऑरेकल के रूप में टेलर का उपयोग करने के लिए आवश्यक बुनियादी टूल इंस्टॉल करना। टेलर उपयोगकर्ता अनुबंधों को इंस्टॉल करने के लिए इस पैकेज (एक नए टैब में खुलता है) का उपयोग करें:
npm install usingtellor
एक बार इंस्टॉल हो जाने पर यह आपके अनुबंधों को 'UsingTellor' अनुबंध से फ़ंक्शन इनहेरिट करने की अनुमति देगा।
बहुत बढ़िया! अब जब आपके पास टूल तैयार हैं, तो आइए एक सरल अभ्यास करें जहां हम बिटकॉइन की कीमत प्राप्त करते हैं:
BTC/USD उदाहरण
UsingTellor अनुबंध को इनहेरिट करें, टेलर पते को कंस्ट्रक्टर तर्क के रूप में पास करें:
यहाँ एक उदाहरण है:
import "usingtellor/contracts/UsingTellor.sol";
contract PriceContract is UsingTellor {
uint256 public btcPrice;
//इस अनुबंध के पास अब UsingTellor के सभी फ़ंक्शंस तक पहुंच है।
constructor(address payable _tellorAddress) UsingTellor(_tellorAddress) public {}
function setBtcPrice() public {
bytes memory _b = abi.encode("SpotPrice",abi.encode("btc","usd"));
bytes32 _queryId = keccak256(_b);
uint256 _timestamp;
bytes _value;
(_value, _timestamp) = getDataBefore(_queryId, block.timestamp - 15 minutes);
btcPrice = abi.decode(_value,(uint256));
}
}
अनुबंध पतों की पूरी सूची के लिए यहाँ (एक नए टैब में खुलता है) देखें।
उपयोग में आसानी के लिए, UsingTellor रेपो आसान एकीकरण के लिए टेलर प्लेग्राउंड (एक नए टैब में खुलता है) अनुबंध के एक संस्करण के साथ आता है। उपयोगी फ़ंक्शन की सूची के लिए यहाँ (एक नए टैब में खुलता है) देखें।
टेलर ऑरेकल के अधिक मजबूत कार्यान्वयन के लिए, उपलब्ध फ़ंक्शन की पूरी सूची यहाँ (एक नए टैब में खुलता है) देखें।