ERPC CLI से RPC methods कॉल करें और अपने URL पर इवेंट भेजें

erpc rpc call आपके टर्मिनल से, आपके लॉग इन किए हुए ERPC account के साथ एक JSON-RPC request भेजता है, या x402 से प्रति call भुगतान करता है। erpc webhook RPC इवेंट आपके URL पर POST करता है।
यह पेज ERPC CLI v0.1.0-rc.4 के बारे में है, जो एक प्री-रिलीज़ है।

RPC method कॉल करें

Solana या Ethereum mainnet को कॉल करने के लिए अपने लॉग इन किए हुए ERPC account का इस्तेमाल करें। CLI, method के आधार पर shared endpoint चुनता है, या आप नेटवर्क चुन सकते हैं।
sh
erpc login
erpc rpc call getSlot
erpc --json rpc call eth_getBlockByNumber '["latest", false]' --network ethereum-mainnet
erpc rpc call eth_call --params-file params.json
printf '%s' '["finalized", false]' | erpc rpc call eth_getBlockByNumber -
erpc rpc call getHealth --endpoint-url http://127.0.0.1:8899
  • Params एक JSON array या object होते हैं, --params-file के साथ एक फ़ाइल, या standard input के लिए -। इनके बिना call [] भेजता है।
  • नेटवर्क solana-mainnet और ethereum-mainnet (eth-mainnet भी) हैं। erpc rpc list-networks उन नेटवर्क की सूची दिखाता है जिन पर ERPC का shared RPC और x402 RPC है।
  • आपका अपना endpoint: --endpoint-url केवल उसी URL में मौजूद credentials इस्तेमाल करता है। यह एक सुरक्षित URL या loopback होना चाहिए, और इसमें user information नहीं होनी चाहिए।

Call, account की कौन-सी key इस्तेमाल करता है

एक account में कई RPC keys हो सकती हैं। erpc rpc call और erpc webhook run इन्हें क्रम से आज़माते हैं, सबसे पहले primary key को, और अपने call से पहले हर key के लिए एक getHealth call करते हैं। Key की जाँच shared Solana RPC पर होती है, फिर चाहे उसके बाद किसी भी चेन को call किया जाए।
जब RPC कोई भी key स्वीकार नहीं करता और उनमें से किसी key के बारे में उससे पूछा नहीं जा सका, तो कमांड उस पहली key के साथ आगे बढ़ता है जिसके बारे में पूछा नहीं जा सका, और उसका अपना call नतीजा बताता है। जब हर key अस्वीकार हो जाती है, तो कमांड the shared RPC takes none of the account's API keys from this machine (<n> tried) के साथ विफल होता है: विफल होने पर देखें।

x402 से प्रति call भुगतान करें

बिना account के प्रति call भुगतान वाले access के लिए, x402 quote माँगें। --quote कोई wallet पढ़े या कोई भुगतान किए बिना quote दिखाता है।
भुगतान करने के लिए, कमांड को --quote के बिना टर्मिनल में चलाएँ। CLI राशि दिखाता है, पुष्टि माँगता है, और quote किए गए Base EURC भुगतान पर उस wallet से हस्ताक्षर करता है जिसे erpc wallet create ने कॉन्फ़िगर किया था। उस wallet में Base पर EURC रखें (wallet से भुगतान करें)।
sh
erpc rpc call getSlot --network solana-mainnet --x402 --quote
erpc rpc call eth_blockNumber --x402

अपने URL पर इवेंट भेजें

एक लोकल webhook, RPC WebSocket की subscription लेता है और इवेंट आपके URL पर POST करता है। एक receiver शुरू करें, subscription बनाएँ, फिर create जो ID लौटाता है उसे टर्मिनल में या अपने process supervisor के तहत चलाएँ।
sh
erpc webhook create --name slots --network solana-mainnet \
  --url http://127.0.0.1:8080/events --method slotSubscribe
erpc webhook create --name heads --network ethereum-mainnet \
  --url http://127.0.0.1:8080/events --method eth_subscribe --params '["newHeads"]'
erpc webhook list
erpc webhook run 1
Solana पर wallet गतिविधि के लिए, --method की जगह --template solana-wallet --wallet ADDRESS इस्तेमाल करें। Ethereum contract logs के लिए, --template evm-contract-events --address CONTRACT इस्तेमाल करें। Callback URL, HTTPS या loopback HTTP होता है, और नेटवर्क वही हैं जो erpc rpc call के हैं।

आपके receiver को क्या मिलता है

  • हर POST में webhook_id, network और मूल JSON-RPC notification होता है। इसे स्वीकार करने के लिए HTTP 2xx लौटाएँ।
  • Delivery मौजूदा live subscription से शुरू होती है। Runner को restart करने पर नए इवेंट की subscription ली जाती है।
  • Connection टूटने या callback विफल होने पर runner शून्य के अलावा किसी एग्ज़िट कोड के साथ बंद हो जाता है।
  • erpc webhook run एक अकेली delivery टेस्ट करने के लिए --once और अपना WebSocket RPC इस्तेमाल करने के लिए --endpoint-url लेता है।

Webhooks प्रबंधित करें

कमांडयह क्या करता है
erpc webhook listसहेजी गई subscriptions की सूची दिखाता है
erpc webhook show IDएक subscription दिखाता है। Callback credentials नहीं दिखाए जाते
erpc webhook enabled-countइस मशीन पर सक्षम subscriptions गिनता है
erpc webhook pause IDDelivery अक्षम करता है। चल रहा runner बंद हो जाता है
erpc webhook activate IDबाद के run को सक्षम करता है
erpc webhook delete IDपरिभाषा हटाता है
ये केवल लोकल कॉन्फ़िगरेशन देखते और बदलते हैं। Scripts में pause, activate और delete को --yes दें।