اپنے اوریکل کے طور پر ٹیلر کو کیسے سیٹ اپ کریں
پاپ کوئز: آپ کا پروٹوکول تقریباً مکمل ہو چکا ہے، لیکن اسے آف چین ڈیٹا تک رسائی حاصل کرنے کے لیے ایک اوریکل کی ضرورت ہے... آپ کیا کریں گے؟
(نرم) پیشگی شرائط
اس پوسٹ کا مقصد اوریکل فیڈ تک رسائی کو ہر ممکن حد تک سادہ اور سیدھا بنانا ہے۔ اس کے باوجود، ہم اوریکل کے پہلو پر توجہ مرکوز کرنے کے لیے آپ کی کوڈنگ کی مہارت کی سطح کے بارے میں درج ذیل مفروضے قائم کر رہے ہیں۔
مفروضے:
- آپ ٹرمینل استعمال کر سکتے ہیں
- آپ کے پاس npm انسٹال ہے
- آپ جانتے ہیں کہ انحصار (dependencies) کو منظم کرنے کے لیے npm کا استعمال کیسے کیا جاتا ہے
ٹیلر ایک لائیو اور اوپن سورس اوریکل ہے جو نفاذ کے لیے تیار ہے۔ یہ ابتدائی گائیڈ اس آسانی کو ظاہر کرنے کے لیے ہے جس کے ساتھ کوئی بھی ٹیلر کے ساتھ شروعات کر سکتا ہے، جو آپ کے پروجیکٹ کو مکمل طور پر لامركزی اور سنسرشپ کے خلاف مزاحمت کرنے والا اوریکل فراہم کرتا ہے۔
جائزہ
ٹیلر ایک اوریکل سسٹم ہے جہاں فریقین آف چین ڈیٹا پوائنٹ (مثلاً، BTC/USD) کی قدر کی درخواست کر سکتے ہیں اور رپورٹرز اس قدر کو آن چین ڈیٹا بینک میں شامل کرنے کے لیے مقابلہ کرتے ہیں، جو تمام ایتھیریم اسمارٹ کنٹریکٹس کے لیے قابل رسائی ہے۔ اس ڈیٹا بینک کے ان پٹس کو اسٹیک کیے گئے رپورٹرز کے نیٹ ورک کے ذریعے محفوظ کیا جاتا ہے۔ ٹیلر کرپٹو-اقتصادی ترغیبی طریقہ کار کا استعمال کرتا ہے، جو رپورٹرز کی جانب سے ایماندارانہ ڈیٹا جمع کرانے پر انعام دیتا ہے اور ٹیلر کے ٹوکن، ٹریبیوٹس (TRB) کے اجراء اور تنازعات کے طریقہ کار کے ذریعے برے عناصر کو سزا دیتا ہے۔
اس ٹیوٹوریل میں ہم درج ذیل کا جائزہ لیں گے:
- ابتدائی ٹول کٹ ترتیب دینا جس کی آپ کو شروعات کرنے کے لیے ضرورت ہوگی۔
- ایک سادہ مثال کا جائزہ لینا۔
- ان نیٹ ورکس کے آزمائشی نیٹ ورک کے پتے درج کرنا جن پر آپ فی الحال ٹیلر کی جانچ کر سکتے ہیں۔
UsingTellor
سب سے پہلا کام جو آپ کرنا چاہیں گے وہ ان بنیادی ٹولز کو انسٹال کرنا ہے جو ٹیلر کو اپنے اوریکل کے طور پر استعمال کرنے کے لیے ضروری ہیں۔ ٹیلر یوزر کنٹریکٹس کو انسٹال کرنے کے لیے یہ پیکیج (opens in a new tab) استعمال کریں:
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));
}
}
کنٹریکٹ کے پتوں کی مکمل فہرست کے لیے یہاں (opens in a new tab) رجوع کریں۔
استعمال میں آسانی کے لیے، UsingTellor ریپو آسان انضمام کے لیے ٹیلر پلے گراؤنڈ (opens in a new tab) کنٹریکٹ کے ایک ورژن کے ساتھ آتا ہے۔ مددگار فنکشنز کی فہرست کے لیے یہاں (opens in a new tab) دیکھیں۔
ٹیلر اوریکل کے زیادہ مضبوط نفاذ کے لیے، دستیاب فنکشنز کی مکمل فہرست یہاں (opens in a new tab) دیکھیں۔