पर नेविगेट करें रीमिक्स आईडीई. नामक एक नई फ़ाइल बनाएँ Faucet.sol
और फ़ाइल में निम्नलिखित सामग्री जोड़ें:
नोट: मेरा मानना है कि आपके पास पहले से ही मुंबई टेस्टनेट पर एक टोकन तैनात है। यदि आपने अपना टोकन तैनात नहीं किया है, तो कृपया इसे देखें लेख. यह बीएससी का उपयोग करता है, लेकिन मुंबई टेस्टनेट पर भी टोकन तैनात करने के लिए उसी विधि का पालन किया जा सकता है। मुंबई टेस्टनेट के साथ काम करने के लिए केवल मेटामास्क को कॉन्फ़िगर किया जाना चाहिए।
मैंने "" नामक एक साधारण टोकन तैनात किया हैनमूना मध्यम टोकन (एसएमटी)परीक्षण उद्देश्यों के लिए मुंबई टेस्टनेट पर, और यह नल अनुरोध करने वाले वॉलेट पते पर पांच मिनट के अंतराल पर 1 एसएमटी टोकन (जिसे बदला जा सकता है) ड्रिप करेगा।
तो आइए अनुबंध को संकलित करें और इसे मुंबई टेस्टनेट पर तैनात करें।
तैनाती के लिए, हमें कुछ की आवश्यकता है टेस्टनेट मैटिक टोकन. रीमिक्स का उपयोग करके अनुबंध को संकलित और तैनात करने के चरण ऊपर उल्लिखित लेख में भी पाए जा सकते हैं। तैनाती के दौरान, tokenAddress
और ownerAddress
अनुबंध आरंभीकरण के लिए पारित किया जाना चाहिए।
नल की चार विधियाँ हैं:
send()
- यह फ़ंक्शन अनुरोध करने वाले वॉलेट में 1 SMT (डिफ़ॉल्ट) भेजता है। यह ध्यान दिया जाना चाहिए कि एक मैपिंग (nextRequestAt
) को एक बुनियादी दर सीमा तंत्र लागू करने की घोषणा की गई है। एक ही वॉलेट से की गई दो अगली कॉलों के बीच कम से कम पांच मिनट का अंतराल होना चाहिए।setTokenAddress
(पता) - इस विधि का उपयोग नल मालिक/व्यवस्थापक द्वारा अंतर्निहित टोकन पते को अपडेट करने के लिए किया जा सकता है। उदाहरण के लिए, यदि हम टोकन का एक नया संस्करण (जैसे SMTv2) लॉन्च कर रहे हैं, तो हम इस विधि में नया टोकन पता पास कर सकते हैं ताकि नल पुराने के बजाय नया टोकन टपकाना शुरू कर दे। यह कुछ हद तक "एडेप्टर पद्धति" के समान है जिसका अपग्रेडेबल अनुबंधों में पालन किया जाता है।setFaucetDripAmount
(uint256) - इस पद्धति का उपयोग करके, स्वामी प्रति अनुरोध भेजे गए टोकन की संख्या को बढ़ा या घटा सकता है। डिफ़ॉल्ट मान 1 SMT है.withdrawTokens
(पता,uint256) - नल मालिक इसका उपयोग स्मार्ट अनुबंध से टोकन वापस लेने के लिए कर सकता है।
अनुबंध लागू होते ही हमें नल अनुबंध में कुछ टोकन मैन्युअल रूप से जमा करने होंगे।
इसके अलावा send()
विधि, अन्य तीन कार्यों को केवल नल मालिक द्वारा ही बुलाया जा सकता है। इसलिए onlyOwner
संशोधक पारित हो गया है.