avatar of 发明者量化-小小梦 发明者量化-小小梦
پر توجہ دیں نجی پیغام
4
پر توجہ دیں
1271
پیروکار

FMZ مقداری ویب 3 توسیع: شامل کردہ ٹرون سپورٹ، توسیع شدہ آن چین ٹرانزیکشن کی صلاحیتیں

میں تخلیق کیا: 2025-02-28 17:20:12, تازہ کاری: 2025-03-11 18:04:16
comments   0
hits   687

[TOC]

FMZ مقداری ویب 3 توسیع: شامل کردہ ٹرون سپورٹ، توسیع شدہ آن چین ٹرانزیکشن کی صلاحیتیں

دیباچہ

بلاک چین ٹیکنالوجی کی ترقی مقداری تجارت کو Web3 دور میں لے جا رہی ہے۔ ایک اہم مقداری تجارتی ٹول کے طور پر، FMZ مقداری تجارتی پلیٹ فارم طویل عرصے سے Web3 کی سمت تلاش کر رہا ہے اور Ethereum سے متعلقہ افعال فراہم کرتا ہے، جو صارفین کو سمارٹ معاہدوں کے ساتھ تعامل کرنے، فنڈز کا انتظام کرنے اور خودکار تجارتی حکمت عملیوں کو براہ راست سلسلہ پر عمل کرنے کے قابل بناتا ہے۔

آج، FMZ پلیٹ فارم نے اپنی Web3 تجارتی صلاحیتوں کو مزید وسعت دی ہے اور Tron (TRX) نیٹ ورک کو سپورٹ کرتا ہے، جس سے صارفین Ethereum اور Tron کی دو بڑی عوامی زنجیروں پر مقداری تجارتی حکمت عملیوں کو تعینات کر سکتے ہیں۔ یہ اپ گریڈ نہ صرف کراس چین ٹرانزیکشنز کی لچک کو بہتر بناتا ہے بلکہ تاجروں کو آن چین اثاثہ جات کے انتظام کے مزید امکانات بھی فراہم کرتا ہے۔

اس مضمون میں، ہم تفصیل سے احاطہ کریں گے:

  • FMZ پلیٹ فارم کی Web3 سمت میں Tron ایکولوجی، ایپلی کیشنز، ڈیولپمنٹ اور دیگر تکنیکی مواد پر تبادلہ خیال کریں۔
  • FMZ پلیٹ فارم پر Tron نیٹ ورک کی بنیاد پر ترتیب کی مشق کریں۔
  • عملی طور پر استعمال ہونے والے وسائل اور مواد
  • Tron نوڈس پر کال کرنے کے طریقوں کی مشق کریں۔
  • سن سویپ، ٹرون ماحولیاتی نظام پر مبنی ڈی فائی پریکٹس۔

ٹرون کا تعارف

TRX-TRON تعارف کی تفصیلات (Feixiaohao سے اقتباس)

TRON کی بنیاد جسٹن سن نے ستمبر 2017 میں رکھی تھی اور مئی 2018 میں اپنے مین نیٹ کے آغاز کے بعد سے اس نے بہت سی شاندار کامیابیاں حاصل کی ہیں۔ جولائی 2018 میں، TRON ماحولیاتی نظام نے BitTorrent کے ساتھ اپنا انضمام مکمل کیا، جو کہ 100 ملین سے زیادہ ماہانہ فعال صارفین کے ساتھ وکندریقرت ویب 3.0 خدمات فراہم کرنے میں پیش پیش ہے۔ حالیہ برسوں میں، TRON نیٹ ورک نے شاندار کارکردگی کا مظاہرہ کیا ہے۔ TRONSCAN ڈیٹا سے پتہ چلتا ہے کہ اکتوبر 2022 تک، TRON پبلک چین کے صارفین کی کل تعداد 115 ملین سے تجاوز کر گئی ہے، لین دین کی تعداد 4 بلین سے تجاوز کر گئی ہے، اور کل لاک ویلیو (TVL) US$13.2 بلین سے تجاوز کر چکی ہے۔ TRON نیٹ ورک دسمبر 2021 میں مکمل طور پر وکندریقرت بن گیا اور اب کمیونٹی کے زیر انتظام ایک وکندریقرت خود مختار تنظیم (DAO) ہے۔ مئی 2022 میں، TRON نے ڈی سینٹرلائزڈ سپر کولیٹرلائزڈ سٹیبل کوائن USDD کے اجراء کا اعلان کیا، جسے انڈسٹری کے کریپٹو کرنسی سنٹرل بینک، TRON جوائنٹ ریزرو کی حمایت حاصل ہے، جو کہ وکندریقرت سٹیبل کوائن دور میں TRON کے باضابطہ داخلے کو نشان زد کرتا ہے۔ اکتوبر 2022 میں، ڈومینیکا نے اعلان کیا کہ TRON اس کا باضابطہ طور پر نامزد کردہ قومی بلاکچین انفراسٹرکچر ہے، جس سے TRON ایک بڑی عوامی زنجیر ہے جس نے بلاکچین انفراسٹرکچر کو تیار کرنے کے لیے ایک خودمختار ریاست کے ساتھ تعاون کا معاہدہ کیا ہے۔ TRON کو ڈومینیکا کے قدرتی ورثے اور سیاحتی مقامات کی عالمی مرئیت کو بڑھانے کے لیے ڈومینیکا کا فین ٹوکن، Dominica Coin (DMC) جاری کرنے کا اختیار دیا گیا ہے۔ اسی وقت، TRON کے تحت سات بڑے ٹوکنز کو ڈومینیکا میں قانونی ڈیجیٹل کرنسی اور قانونی ٹینڈر کا درجہ دیا گیا۔

  • ہائی تھرو پٹ: ہائی تھرو پٹ TRON میں TPS کو بہتر بنا کر حاصل کیا جاتا ہے، اور روزمرہ کے استعمال کے لیے اس کی عملییت Bitcoin اور Ethereum کو پیچھے چھوڑ چکی ہے۔

  • اسکیل ایبلٹی: اچھی اسکیل ایبلٹی اور موثر سمارٹ کنٹریکٹس کی بنیاد پر، ایپلی کیشنز میں TRON میں تعیناتی کے مزید طریقے ہوسکتے ہیں، اور TRON صارفین کی ایک بڑی تعداد کو سپورٹ کر سکتا ہے۔

  • اعلی وشوسنییتا: TRON کے پاس زیادہ قابل اعتماد نیٹ ورک ڈھانچہ، صارف کے اثاثے، اندرونی قدر، اور اعلی درجے کی وکندریقرت اتفاق انعامات کی تقسیم کا بہتر طریقہ کار لاتا ہے۔

عملی طور پر استعمال ہونے والے وسائل اور مواد

  • TRON مینیٹ آفیشل grpc نوڈ

grpc.trongrid.io:50051

  • دیگر نوڈس:

آپ دوسرے نوڈ فراہم کنندگان سے JSON-RPC نوڈس، REST نوڈس وغیرہ استعمال کر سکتے ہیں (آپ درخواست کرنے کے لیے HttpQuery استعمال کر سکتے ہیں)۔ ایف ایم زیڈ پر ایکسچینج آبجیکٹ انکیپسولیشن کی واحد کالز grpc طریقے ہیں۔

  • TRON والیٹ

آپ کو TRON والیٹ تیار کرنے کی ضرورت ہے آپ OKX، imToken وغیرہ استعمال کر سکتے ہیں، یا آپ خود بنا سکتے ہیں۔

  • tronscan

https://tronscan.org/

  • ٹرون پروٹوکول

https://github.com/tronprotocol

  • SunSwap

https://sun.io/?lang=zh-CN#/v3/swap

https://github.com/sunswapteam

FMZ پر WEB3 ایکسچینج آبجیکٹ کو ترتیب دیں۔

اس سے پہلے کہ FMZ پلیٹ فارم نے Tron کی حمایت کی، اس نے Ethereum کی Web3 کی ترقی کی حمایت میں پیش قدمی کی تھی۔ آپ یہ جاننے کے لیے پچھلے مضامین کا جائزہ لے سکتے ہیں کہ یونی سویپ ڈی سینٹرلائزڈ ایکسچینج سے کیسے جڑا جائے۔ چونکہ Tron Ethereum کے ساتھ مطابقت رکھتا ہے اور ETH اور EOS کی کچھ خصوصیات کو مربوط کرتا ہے، اس لیے اس کے سمارٹ کنٹریکٹ پر عمل درآمد اور آن چین تعامل میں منفرد فوائد ہیں۔ FMZ پلیٹ فارم پر ٹرون ایکسچینج آبجیکٹ (بٹوے، نوڈ کی معلومات) کو ترتیب دینا تقریباً ویسا ہی ہے جیسا کہ Ethereum ایکسچینج آبجیکٹ (والٹس، نوڈ کی معلومات) کو ترتیب دینا۔

تبادلہ آبجیکٹ شامل کریں۔

ایکسچینج شامل کریں صفحہ پر:

https://www.fmz.com/m/platforms/add

FMZ مقداری ویب 3 توسیع: شامل کردہ ٹرون سپورٹ، توسیع شدہ آن چین ٹرانزیکشن کی صلاحیتیں

والیٹ کو کنفیگر کریں، TRON کو ChainType کے بطور منتخب کریں، اور ڈیفالٹ RPC نوڈ ایڈریس استعمال کریں۔

عام JSON-RPC نوڈ طریقہ کار

ہم جانچ کے لیے پلیٹ فارم کے ڈیبگنگ ٹولز استعمال کر سکتے ہیں۔

ڈیبگنگ ٹولز: https://www.fmz.com/m/debug

eth_getBalance

جیسا کہ نام سے پتہ چلتا ہے، یہ طریقہ بالکل Ethereum کے طریقہ کار جیسا ہے، اور اس کے افعال بالکل ایک جیسے ہیں۔ یہ طریقہ مخصوص Tron والیٹ میں TRX بیلنس کو پڑھنے کے لیے استعمال کیا جاتا ہے۔

curl https://docs-demo.tron-mainnet.quiknode.pro/jsonrpc \
  -X POST \
  -H "Content-Type: application/json" \
  --data '{"method":"eth_getBalance","params":["0x41f0cc5a2a84cd0f68ed1667070934542d673acbd8", "latest"],"id":1,"jsonrpc":"2.0"}'

درخواست کردہ بیلنس ڈیٹا ایک بہت بڑی ہیکساڈیسیمل قدر ہے، جس کے لیے تبادلوں کے فنکشن کی ضرورت ہوتی ہے جو ہم نے پہلے Ethereum سے متعلقہ حکمت عملی میں استعمال کیا تھا۔

function toAmount(s, decimals) {
    return Number((BigDecimal(BigInt(s)) / BigDecimal(Math.pow(10, decimals))).toString())
}

function toInnerAmount(n, decimals) {
    return (BigDecimal(n) * BigDecimal(Math.pow(10, decimals))).toFixed(0)
}

چونکہ Tron والیٹ سے کاپی کیا گیا پرس کا پتہ ایک base58-انکوڈ شدہ پتہ ہے، اس لیے اسے استعمال کرنے سے پہلے اسے ہیکس انکوڈ شدہ پیرامیٹر میں تبدیل کرنے کی ضرورت ہے۔

function base58ToHex(base58Str) {
    const ALPHABET = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"
    
    var num = BigInt(0)
    for (var char of base58Str) {
        var digit = BigInt(ALPHABET.indexOf(char));
        if (digit === BigInt(-1)) throw new Error("Invalid Base58 character: " + char)
        num = num * BigInt(58) + digit
    }

    var hex = num.toString(16)
    
    if (hex.length % 2 !== 0) {
        hex = "0" + hex
    }

    return "0x" + hex
}

ایڈریس کو تبدیل کرنے کے بعد، ہم اسے کال کر سکتے ہیں۔eth_getBalanceطریقہ۔

مکمل ٹیسٹ کوڈ:

function toAmount(s, decimals) {
    return Number((BigDecimal(BigInt(s)) / BigDecimal(Math.pow(10, decimals))).toString())
}

function toInnerAmount(n, decimals) {
    return (BigDecimal(n) * BigDecimal(Math.pow(10, decimals))).toFixed(0)
}

function base58ToHex(base58Str) {
    const ALPHABET = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"
    
    var num = BigInt(0)
    for (var char of base58Str) {
        var digit = BigInt(ALPHABET.indexOf(char));
        if (digit === BigInt(-1)) throw new Error("Invalid Base58 character: " + char)
        num = num * BigInt(58) + digit
    }

    var hex = num.toString(16)
    
    if (hex.length % 2 !== 0) {
        hex = "0" + hex
    }

    return "0x" + hex
}

function main() {
    var tronAddress = "Tron 钱包地址"
    var hexAddress = base58ToHex(tronAddress).substring(2, 44)

    var jsonrpcBase = "https://go.getblock.io/xxx/jsonrpc"  // 具体的JSON-RPC节点
    var body = {
        "method": "eth_getBalance",
        "params": [hexAddress, "latest"],
        "id":1,
        "jsonrpc":"2.0"
    }

    var options = {
        method: "POST",
        body: JSON.stringify(body),
        headers: {"accept": "application/json", "content-type": "application/json"},
        timeout: 1000
    }

    var ret = JSON.parse(HttpQuery(jsonrpcBase, options))
    var balance = ret.result
    return toAmount(balance, 6)
}

TRX کا ٹوکن درستگی 6 ہے۔، لہذا bigNumber پر کارروائی کرتے وقت پیرامیٹر 6 پُر کریں۔

FMZ پلیٹ فارم کے ڈیبگنگ ٹول میں ٹیسٹ کریں:

FMZ مقداری ویب 3 توسیع: شامل کردہ ٹرون سپورٹ، توسیع شدہ آن چین ٹرانزیکشن کی صلاحیتیں

ٹران اسکین پر پوچھے گئے پرس میں TRX بیلنس کا موازنہ کرتے ہوئے، ڈیٹا مطابقت رکھتا ہے۔

FMZ مقداری ویب 3 توسیع: شامل کردہ ٹرون سپورٹ، توسیع شدہ آن چین ٹرانزیکشن کی صلاحیتیں

gRPC نوڈ کے طریقہ کار کی مشق

FMZ پلیٹ فارم پر بنیادی پریکٹس کا مواد grpc نوڈ کی میتھڈ کال ہے محدود جگہ کی وجہ سے، یہاں صرف عام طور پر استعمال شدہ میتھڈ کالز درج ہیں۔

کالنگ پروٹو ٹائپ:exchange.IO("api", "tron", "method name", ...). “طریقہ کا نام” اس طریقہ کا نام ہے جسے بلایا جانا ہے۔

GetAccount

پرس اکاؤنٹ کی معلومات سے استفسار کریں۔

function main() {
    var account = exchange.IO("api", "tron", "GetAccount", "tron 钱包地址")  // tron 钱包地址 :填写实际的钱包地址。
    return account
}

واپسی کال کی معلومات (اقتباس):

{
    "address": {},
    "balance": 72767348,   // 即钱包的TRX余额:72.767348
    "asset_optimized": true,
    "create_time": 1693463943000,
    ...

GetTransactionInfoByID

ٹرانسفر چیک کریں۔

function main() {
    return exchange.IO("api", "tron", "GetTransactionInfoByID", "305f0c2487095effcf9e2db61f021f976707611424cba57e1d6464736f7f49e7") 
}

لوٹا ہوا ڈیٹا:

{"id":{},"fee":1100000,"blockNumber":70192360,"blockTimeStamp":1741229766000,"contractResult":[{}],"receipt":{"net_fee":100000}}

ListNodes

نوڈ کی تمام معلومات لوٹاتا ہے۔

function main() {
    return exchange.IO("api", "tron", "ListNodes")
}

TRC20GetDecimals

TRC20 ٹوکنز کی درستگی کی معلومات سے استفسار کریں۔

function main() {
    return exchange.IO("api", "tron", "TRC20GetDecimals", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t")  // USDT
}

TRC20ContractBalance

بٹوے کے ایک مخصوص پتے میں ایک مخصوص TRC20 ٹوکن کے بیلنس کا سوال کریں۔

function main() {
    return exchange.IO("api", "tron", "TRC20ContractBalance", "TRX 钱包地址", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t")
}

GetNowBlock

موجودہ بلاکچین پر تازہ ترین بلاک کی معلومات لوٹاتا ہے۔

function main() {
    return exchange.IO("api", "tron", "GetNowBlock")
}

لوٹا ہوا ڈیٹا:

{
    "transactions": [
        {
            "transaction": {
                "raw_data": {
                    "ref_block_bytes": {},
                    "ref_block_hash": {},
                    "expiration": 1741489083000,
                    "contract": [
                        {
                            "type": 1,
                            "parameter": {
                                "type_url": "type.googleapis.com/protocol.TransferContract",
                                "value": {}
                                ...

GetAccountNet

TRON اکاؤنٹ کی بینڈوتھ کی معلومات سے استفسار کریں۔

function main() {
    return exchange.IO("api", "tron", "GetAccountNet", "TWTbnQuiWvEg...")
}

لوٹا ہوا ڈیٹا:

{
    "freeNetLimit": 600,
    "TotalNetLimit": 43200000000,
    "TotalNetWeight": 26982826755
}

CreateAccount

ایک Tron اکاؤنٹ بنائیں.

function main() {
    return exchange.IO("api", "tron", "CreateAccount", "TWTbnQ...", "TKCG9...")
}

موجودہ اکاؤنٹ بنانے کی کوشش کرنے سے ایک خرابی آئے گی:

Futures_OP 4: Contract validate error : Account has existed

GetBlockByNum

بلاک کی اونچائی کی بنیاد پر بلاک کی معلومات حاصل کریں۔

function main() {
    return exchange.IO("api", "tron", "GetBlockByNum", 70227286)
}

لوٹا ہوا ڈیٹا:

{
    "transactions": [
        {
            "transaction": {
                "raw_data": {
                    "ref_block_bytes": {},
                    "ref_block_hash": {},
                    "expiration": 1741334628000,
                    "contract": [
                    ...

TRC20GetName / TRC20GetSymbol

TRC20GetName، کنٹریکٹ ایڈریس کی بنیاد پر TRC20 ٹوکن نام سے استفسار کریں۔ TRC20GetSymbol، کنٹریکٹ ایڈریس کے مطابق TRC20 ٹوکن علامت سے استفسار کریں۔

function main() {
    Log("TRC20GetName:", exchange.IO("api", "tron", "TRC20GetName", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t"))
    Log("TRC20GetSymbol:", exchange.IO("api", "tron", "TRC20GetSymbol", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t"))
}

لوٹا ہوا ڈیٹا:

2025-03-09 11:18:43.083		信息 TRC20GetSymbol: USDT
2025-03-09 11:18:43.006		信息 TRC20GetName: Tether USD

ParseTRC20…

function main() {
    // 例如某个转账数据中的Data,转换为可读数值
    Log("ParseTRC20NumericProperty:", exchange.IO("api", "tron", "ParseTRC20NumericProperty", "0x00000000000000000000000000000000000000000000000000000001a13b8600"))  // 7000000000

    // 例如某个转账数据中的Data,转换为可读字符串
    Log("ParseTRC20StringProperty:", exchange.IO("api", "tron", "ParseTRC20StringProperty", "0x0000000000000000000000000000000000000000000000000000000055534454"))    // USDT
}

TRC20Call

TRC20 کنٹریکٹ کو کال کرنے کے لیے، ہم TRC20 کنٹریکٹ کا بیلنس آف طریقہ استعمال کرتے ہیں، پہلے اسے انکوڈ کرتے ہیں، اور پھر اسے TRC20Call کے ذریعے کال کرتے ہیں۔

function main() {
    var data = exchange.IO("pack", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t", "balanceOf", "TWTbnQuiWvEg...")
    var tx = exchange.IO("api", "tron", "TRC20Call", "TWTbnQuiWvEg...", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t", data, true, 0)
    return tx.constant_result
}
  • “TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t” : TRC20 USDT معاہدہ کا پتہ۔
  • “TWTbnQuiWvEg…” : پیرامیٹر، بیلنس کا TRX والیٹ ایڈریس جو بیلنس آف طریقہ سے درخواست کی گئی ہے۔
  • “balanceOf” : طریقہ کا نام جس کو انکوڈ کرنے کی ضرورت ہے۔

مستقل طریقوں کو نشریات کی ضرورت نہیں ہے۔ کال کا نتیجہ tx.constant_result میں ریکارڈ کیا جاتا ہے۔

Transfer

ٹرانس ڈیٹا بنائیں۔

function main() {
    var trans = exchange.IO("api", "tron", "Transfer", "TWTb...", "TKCG9FN...", 1000000)
    return trans
}
  • TWTb...: TRX والیٹ A کا پتہ۔
  • TKCG9FN...: TRX والیٹ B کا پتہ۔
  • 1000000: منتقلی 1TRX۔

لوٹا ہوا ڈیٹا:

{
    "transaction": {
        "raw_data": {
            "ref_block_bytes": {},
            "ref_block_hash": {},
            "expiration": 1741493085000,
            "contract": [
                {
                    "type": 1,
                    "parameter": {
                        "type_url": "type.googleapis.com/protocol.TransferContract",
                        "value": {}
                    }
                }
            ],
            "timestamp": 1741493025759
        }
    },
    "txid": {},
    "result": {
        "result": true
    }
}

GetContractABI

معاہدے کے پتے کی بنیاد پر معاہدہ ABI حاصل کریں۔

function main() {
    var usdtABI = exchange.IO("api", "tron", "GetContractABI", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t")
    return usdtABI
}

لوٹا ہوا ڈیٹا:

{
    "entrys": [
        {
            "constant": true,
            "name": "name",
            "outputs": [
                {
                    "type": "string"
                }
            ],
            "type": 2,
            "stateMutability": 2
        },
        {
            "constant": true,
            "name": "deprecated",
            "outputs": [
                {
                    "type": "bool"
                }
            ],
            "type": 2,
            "stateMutability": 2
        },
        ...

Transfer

کی طرفTKCG9FN1j...1TRX کو ٹرون والیٹ ایڈریس پر منتقل کریں۔

function main() {
    var ownerAddress = exchange.IO("address")
    var ret = exchange.IO("api", "tron", "Transfer", ownerAddress, "TKCG9FN1j...", 1000000)     
    return ret
}

TriggerConstantContract

سمارٹ کنٹریکٹ کے طریقہ کار کو کال کریں۔

function main() {
    var tx = exchange.IO("api", "tron", "TriggerConstantContract", "TWTbnQu...", "TSUUVjysXV8YqHytSNjfkNXnnB49QDvZpx", "token0()", "")
    var ret2 = Encode("raw", "raw", "hex", tx.constant_result[0])
    Log(ret2) // 000000000000000000000000891cdb91d149f23b1a45d9c5ca78a88d0cb44c18
}

لوٹا ہوا ڈیٹا سن سویپ ٹریڈنگ پول کا ٹوکن0 ٹوکن پتہ ہے۔

سمارٹ کنٹریکٹ میتھڈ کال

  • USDT بیلنس چیک کریں۔

ٹرون چین پر سمارٹ کنٹریکٹ کا طریقہ کال کریں۔balanceOfTR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6tکے لیےUSDTٹوکن کا سمارٹ کنٹریکٹ ایڈریس۔

  function toAmount(s, decimals) {
      return Number((BigDecimal(BigInt(s)) / BigDecimal(Math.pow(10, decimals))).toString())
  }

  function main() {
      var balance = exchange.IO("api", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t", "balanceOf", "Tron 钱包地址")
      return toAmount(balance, 6)
  }

آپ اپنے بٹوے میں USDT کا بیلنس چیک کر سکتے ہیں: 0.000019

FMZ مقداری ویب 3 توسیع: شامل کردہ ٹرون سپورٹ، توسیع شدہ آن چین ٹرانزیکشن کی صلاحیتیں

Exchange.IO کی دیگر خصوصیات

ایف ایم زیڈ پلیٹ فارمWeb3 tronایکسچینج آبجیکٹexchange.IOفنکشن مندرجہ ذیل افعال کو نافذ کرتا ہے۔

  • TRX ٹرانسفر
  function main() {
      var ret = exchange.IO("api", "tron", "send", "目标TRX钱包地址", 1)  // 需要注意,参数1 表示 0.000001 TRX ,需要转换数值为链上数值。
      return ret   // 转账hash: 305f0c2487095effcf9e2db61f021f9767076114...
  }
  • نوڈ ایڈریس سوئچ کریں۔
  exchange.IO("base", "rpc address")  // rpc address 替换为具体的节点地址
  // 或者
  exchange.IO("rpc", "rpc address")
  • سمارٹ کنٹریکٹ ABI رجسٹر کریں۔
  exchange.IO("abi", "contract ABI")  // contract ABI 替换为具体的合约ABI内容
  • موجودہ ایکسچینج آبجیکٹ سے منسلک بٹوے کا پتہ حاصل کریں۔
  exchange.IO("address")  // 返回tron钱包地址
  • pack / encode / encodePacked

pack/encode: انکوڈ/پیک ڈیٹا، طریقہ کال۔

  function main() {
      // 打包TRC20合约的balanceOf方法调用
      var data1 = exchange.IO("pack", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t", "balanceOf", "TWTbnQu...")  // TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t 为USDT合约地址
      Log(data1)
      var data2 = exchange.IO("encode", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t", "balanceOf", "TWTbnQu...")
      Log(data2)
      Log("data1 == data2:", data1 == data2)  // true

      // 编码数据为uint256
      var data3 = exchange.IO("pack", "uint256", 19)   // 数据为: 19
      Log(data3)
      var data4 = exchange.IO("encode", "uint256", 19)
      Log(data4)
      Log("data3 == data4:", data3 == data4)
  }

encodePacked: انکوڈ اور پیکڈ

  function main() {
      var data1 = exchange.IO("encodePacked", "address", "TWTbnQu...")
      Log(data1)
      //                          e0c12e16a9f713e5f104c...

      var data2 = exchange.IO("encode", "address", "TWTbnQu...")
      Log(data2)
      // 000000000000000000000000 e0c12e16a9f713e5f104c...
  }
  • unpack / decode

پیک کھولنا/ڈی کوڈ: ڈیٹا کو کھولنا/ڈی کوڈ کرنا، طریقہ کال۔

  function main() {
      var data = exchange.IO("pack", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t", "balanceOf", "TWTbnQu...")
      Log(data)
      var tx = exchange.IO("api", "tron", "TRC20Call", "TWTbnQu...", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t", data, true, 0)
      var ret = Encode("raw", "raw", "hex", tx.constant_result[0])
      Log(ret)

      // 解码
      var usdtBalance = exchange.IO("decode", "uint256", ret)
      Log("usdtBalance:", usdtBalance)

      // 解码
      return exchange.IO("unpack", "uint256", ret)
  }
  • نجی کلید کو اپ ڈیٹ/درآمد کریں۔
  exchange.IO("key", "xxx")  // xxx 为私钥
  • ہیش کا حساب لگانا کالنگ پروٹو ٹائپ:exchange.IO("hash", algo, inputFormat, outputFormat, data)

فی الحال کنفیگر شدہ پرائیویٹ کلید کے ساتھ سائن کریں اور دستخط شدہ ڈیٹا واپس کریں۔

  var signature = exchange.IO("hash", "sign", "string", "hex", "txHash")  // txHash: 具体hash值

سن سویپ پر پہلی نظر

ٹرون چین پر ڈی ای ایکس ایکسچینج پر ابتدائی مشق: سن سویپ۔ ہم سن سویپ فیکٹری کنٹریکٹ کو کال کرتے ہیں، تمام تجارتی جوڑوں کے اشاریہ جات کی درخواست کرتے ہیں، اور پھر اشاریہ 1 کے ساتھ تجارتی جوڑے کے پتے کی درخواست کرتے ہیں۔

function main() {
    var poolIndexs = exchange.IO("api", "TThJt8zaJzJMhCEScH7zWKnp5buVZqys9x", "allPoolsLength")
    Log("poolIndexs:", poolIndexs)  // 交易对索引总数

    var hexAddress = exchange.IO("api", "TThJt8zaJzJMhCEScH7zWKnp5buVZqys9x", "allPools", exchange.IO("encode", "uint256", 1)) 
    Log("hexAddress:", hexAddress)  // 索引为1的交易对地址
}

محدود جگہ کی وجہ سے، ہم اگلے مضمون میں تفصیلی sunSwap مواد کو قارئین کے ساتھ شیئر کریں گے۔

THE END

FMZ مقداری تجارتی پلیٹ فارم Web3 دور میں جدت طرازی کرتا رہتا ہے، مقداری تاجروں کو ایک وسیع آن چین ٹریڈنگ کی جگہ فراہم کرتا ہے۔ Tron نیٹ ورک کو سپورٹ کر کے، FMZ نہ صرف کراس چین ٹرانزیکشن کی صلاحیتوں کو بڑھاتا ہے، بلکہ صارفین کو Tron ایکو سسٹم میں سمارٹ کنٹریکٹ کے تعاملات، فنڈ مینجمنٹ، اور خودکار تجارتی حکمت عملیوں کو مؤثر طریقے سے انجام دینے کے قابل بناتا ہے۔

اس مضمون میں، ہم نے ٹرون نیٹ ورک کے لیے FMZ پلیٹ فارم کا تعاون متعارف کرایا اور سن سویپ DEX کی کنٹریکٹ میتھڈ کالز کو Tron چین پر لاگو کیا۔ بلاکچین ٹیکنالوجی کی ترقی کے ساتھ، Web3 مقداری لین دین کے امکانات بڑھتے رہیں گے۔ FMZ مقداری تاجروں کو زیادہ لچکدار، محفوظ اور موثر تجارتی ماحول فراہم کرنے کے لیے اپنی Web3 صلاحیتوں کو بہتر اور بہتر بنانا جاری رکھے گا، جس سے صارفین کو آن چین مارکیٹ میں زیادہ سے زیادہ فوائد حاصل کرنے میں مدد ملے گی۔

پڑھنے کے لئے شکریہ اور آپ کی حمایت کے لئے آپ کا شکریہ.