Cointime

Download App
iOS & Android

สอนการใช้ 3 link services สร้าง dynamic NFT

Validated Project

ผู้ แต่ง : Chainlink 12 กรกฎาคม 2566

ภาพรวม

ระดับความยาก: ระดับเริ่มต้น/ระดับกลาง

เวลาโดยประมาณที่จะเสร็จสมบูรณ์: 60 นาที

ในบทช่วยสอนนี้ คุณจะได้เรียนรู้วิธีใช้ Remix เพื่อปรับใช้สัญญาอัจฉริยะบนเครือข่ายทดสอบ Polygon Mumbai สัญญาอัจฉริยะนี้สร้าง NFT ที่อัปเดตแบบไดนามิกตามราคา ETH สกุลเงินดอลลาร์สหรัฐ

ด้านล่างนี้ คุณจะพบคำแนะนำทีละขั้นตอนเกี่ยวกับวิธีการ:

1. สร้างกระเป๋าเงิน MetaMask

2. รับเงินจากเทสต์เน็ตรูปหลายเหลี่ยมมุมไบ

3. สร้างการสมัครสมาชิก Chainlink VRF

4. ใช้ Remix เพื่อปรับใช้สัญญาอัจฉริยะแบบไดนามิก NFT (dNFT)

5. เพิ่มสัญญาอัจฉริยะ dNFT เป็นผู้บริโภค VRF

6. ทำให้ NFT เป็นอัตโนมัติด้วย Chainlink Automation

7. ดูและโต้ตอบกับ NFT บน OpenSea

ขั้นตอนที่ 1: สร้าง กระเป๋าเงิน MetaMask

หมายเหตุ: หากคุณมีกระเป๋าเงิน MetaMask (หรือกระเป๋าเงินอื่นๆ) อยู่แล้ว โปรดข้ามขั้นตอนนี้

หากต้องการสร้างกระเป๋าเงิน MetaMask ให้ไปที่ https://metamask.io/ และทำตามคำแนะนำเพื่อสร้างกระเป๋าเงินของคุณ

ขั้นตอนที่สอง: รับ เงินทุน Testnet รูปหลายเหลี่ยมมุมไบ

ก) ไปที่ https://faucets.chain.link/mumbai

B) คลิก "เชื่อมต่อกระเป๋าเงิน" ที่มุมขวาบน

C) หากนี่เป็นครั้งแรกที่คุณโต้ตอบกับ Polygon Mumbai โปรดคลิก "อนุมัติ" เมื่อ MetaMask แสดงข้อความ "อนุญาตให้ไซต์นี้เพิ่มเครือข่ายหรือไม่"

ง) คลิก "สลับเครือข่าย"

E) ทำเครื่องหมายที่ช่องทำเครื่องหมาย "ฉันเป็นมนุษย์" และกรอก captcha

F) คลิก "ส่งคำขอ"

G) รอให้การทำธุรกรรมเสร็จสมบูรณ์

ยินดีด้วย! คุณสมัครและได้รับ testnet Polygon Mumbai MATIC และ testnet LINK เรียบร้อยแล้ว

ยินดีด้วย! คุณสมัครและได้รับ testnet Polygon Mumbai MATIC และ testnet LINK เรียบร้อยแล้ว

หมายเหตุ: หากใช้ testnet MATIC ของ Chainlink faucet หมดแล้ว โปรดใช้ faucet รูปหลายเหลี่ยมมุมไบ เพื่อรับ testnet MATIC คุณยังคงต้องใช้ Chainlink faucet เพื่อรับ testnet LINK

ขั้นตอนที่ 3 : สร้าง การสมัครสมาชิก VRF

ก่อนปรับใช้สัญญาอัจฉริยะ dNFT เราจะสร้างการบอกรับเป็นสมาชิก VRF ก่อน คิดว่ามันเป็นถังเงินที่สัญญาใช้เมื่อสร้างตัวเลขสุ่ม เราต้องการ ID การสมัครสมาชิกเพื่อปรับใช้สัญญาอัจฉริยะ

ก) ไปที่ https://vrf.chain.link/mumbai

B) คลิก "เชื่อมต่อกระเป๋าเงิน" ที่มุมขวาบน

C) คลิก "สร้างการสมัครสมาชิก"

D) คลิก "สร้างการสมัครสมาชิก" อีกครั้ง

E) พรอมต์ MetaMask ปรากฏขึ้น คลิก "ลงชื่อ"

F) คลิก "ยืนยัน" ใน MetaMask และรอให้ธุรกรรมได้รับการยืนยัน

G) เมื่อธุรกรรมได้รับการยืนยันและสร้างการสมัครสมาชิกแล้ว ให้คลิก "เพิ่มเงิน"

ซ) ในช่องใส่ "เพิ่มเงิน (ลิงค์)" เพิ่ม 2 ลิงค์ แล้วคลิก "เพิ่มเงิน"

I) ยืนยันการทำธุรกรรมใน MetaMask

ยินดีด้วย! คุณสร้างการสมัครสมาชิก VRF สำเร็จแล้วและให้เงินสนับสนุนด้วย testnet LINK เราจะพูดถึงการสมัครสมาชิก VRF ในขั้นตอนถัดไป

ขั้นตอนที่ 4 : ปรับใช้ สัญญาอัจฉริยะ NFT แบบไดนามิกบน Remix

Remix เป็นสภาพแวดล้อมการพัฒนาแบบรวมออนไลน์ (IDE) ที่อุทิศให้กับการพัฒนาและทดสอบสัญญาอัจฉริยะบน Ethereum blockchain มีอินเทอร์เฟซที่ใช้งานง่ายและชุดเครื่องมืออันทรงพลังสำหรับการเขียน คอมไพล์ ปรับใช้ และดีบักสัญญาอัจฉริยะของ Ethereum

ในขั้นตอนนี้ คุณจะได้เรียนรู้วิธีสร้างพื้นที่ทำงาน Remix ใหม่และปรับใช้สัญญาอัจฉริยะ ไม่ต้องกังวล: สัญญาอัจฉริยะเขียนไว้แล้ว คุณเพียงแค่คัดลอกและวาง

ในขั้นตอนนี้ คุณจะได้เรียนรู้วิธีสร้างพื้นที่ทำงาน Remix ใหม่และปรับใช้สัญญาอัจฉริยะ ไม่ต้องกังวล: สัญญาอัจฉริยะเขียนไว้แล้ว คุณเพียงแค่คัดลอกและวาง

ก) ไปที่ https://remix.ethereum.org/

B) คลิกไอคอน "+" ที่มุมซ้ายบนของหน้าจอเพื่อสร้างพื้นที่ทำงานใหม่

C) ป้อนชื่อสำหรับพื้นที่ทำงานใหม่แล้วคลิกตกลง

ง) คลิกขวาที่ "สัญญา" ในแถบด้านข้างซ้ายแล้วคลิก "ไฟล์ใหม่"

E) ตั้งชื่อไฟล์ "demo.sol" หรือชื่ออื่นที่คุณต้องการแล้วกด Enter

F) คัดลอกรหัสนี้

// SPDX-License-Identifier: MIT

// นี่เป็นจุดประสงค์เพื่อการสาธิตเท่านั้นและไม่ควรใช้ในการผลิต!

ความแข็งแรงของปรากมา ^0.8.10;

// การนำเข้าสัญญาอื่น ๆ

นำเข้า "@openzeppelin/contracts/token/ERC721/ERC721.sol";

// การนำเข้าสัญญาอื่น ๆ

นำเข้า "@openzeppelin/contracts/token/ERC721/ERC721.sol";

นำเข้า "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol";

นำเข้า "@openzeppelin/contracts/utils/Strings.sol";

นำเข้า "@openzeppelin/contracts/utils/Base64.sol";

นำเข้า "@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol";

นำเข้า "@chainlink/contracts/src/v0.8/interfaces/VRFCoordinatorV2Interface.sol";

นำเข้า "@chainlink/contracts/src/v0.8/VRFConsumerBaseV2.sol";

// กำหนดสัญญา SuperDynamicNFT ที่สืบทอดมาจาก ERC721, ERC721URIStorage และ VRFConsumerBaseV2

สัญญา SuperDynamicNFT คือ ERC721, ERC721URIStorage, VRFConsumerBaseV2 {

// ระบุตัวแปรสำหรับติดตามราคา ETH และอีโมจิที่เกี่ยวข้อง

int256 ก่อนหน้า EthPrice = 0;

สตริง ethIndicatorUp = ยูนิโค้ด"

G) กลับมาที่ Remix วางโค้ดลงในไฟล์ demo.sol ที่สร้างขึ้นใหม่

หมายเหตุ: คุณอาจได้รับป๊อปอัปเตือนว่าคุณกำลังวางรหัสจำนวนมาก ให้คลิก ตกลง

H) คลิกที่ไอคอน "Solidity Compiler" ในแถบด้านข้างซ้าย

I) คลิก "คอมไพล์ demo.sol"

I) คลิก "คอมไพล์ demo.sol"

J) คลิกที่ไอคอน "ปรับใช้และเรียกใช้ธุรกรรม" ที่แถบด้านข้างซ้าย

K) คลิกเมนูแบบเลื่อนลง "สภาพแวดล้อม" เปลี่ยนจาก "Remix VM (Shanghai)" เป็น "Injected Provider - MetaMask" และทำตามคำแนะนำจาก MetaMask เพื่อเชื่อมต่อกระเป๋าเงินของคุณ

L) ก่อนปรับใช้สัญญาอัจฉริยะกับบล็อกเชนรูปหลายเหลี่ยมมุมไบ เราจำเป็นต้องมี ID การสมัครสมาชิกของการสมัครสมาชิก VRF ที่สร้างขึ้นในขั้นตอนก่อนหน้า กลับไปที่ https://vrf.chain.link/mumbai และจด ID ของการสมัคร VRF ที่เราเพิ่งสร้างขึ้น ID ของคุณจะแตกต่างจากในตัวอย่าง ขั้นแรก คุณต้องทำสัญญารับทราบถึงการสมัครสมาชิก ในขั้นตอนต่อมา คุณจะแจ้งให้สมาชิกทราบสัญญา

M) ใน Remix ให้ป้อน ID การสมัครสมาชิกในช่องป้อนข้อมูลถัดจากปุ่ม "ปรับใช้" สีส้ม

N) คลิก "ปรับใช้" และยืนยันการทำธุรกรรมใน MetaMask

O) หากคุณเห็นเครื่องหมายถูกสีเขียวในคอนโซลด้านล่างหน้าจอ ขอแสดงความยินดี! คุณได้ปรับใช้สัญญาของคุณกับบล็อกเชนรูปหลายเหลี่ยมมุมไบสำเร็จแล้ว!

ขั้นตอนที่ 5 : เพิ่มผู้บริโภค ใน การสมัครสมาชิก VRF ของคุณ

ยินดีด้วย! คุณปรับใช้สัญญาอัจฉริยะบนบล็อกเชนของ Polygon Mumbai สำเร็จแล้ว! คุณปรับใช้สัญญาอัจฉริยะสำเร็จแล้ว ตอนนี้ ได้เวลาเพิ่มสัญญาอัจฉริยะในฐานะผู้บริโภคในการสมัครสมาชิก VRF ที่คุณสร้างในขั้นตอนที่ 3

A) ใน Remix ให้คัดลอกที่อยู่สัญญาของคุณ

B) ไปที่ https://vrf.chain.link/mumbai คลิก "เชื่อมต่อกระเป๋าเงิน" ที่มุมขวาบนเพื่อเชื่อมต่อกระเป๋าเงินของคุณ หากกระเป๋าเงินของคุณเชื่อมต่ออยู่แล้ว คุณสามารถข้ามขั้นตอนนี้ได้

C) คลิกที่ ID การสมัครสมาชิกที่คุณสร้างในขั้นตอนที่ 3 คุณสามารถค้นหาการสมัครของคุณได้ใน "การสมัครรับข้อมูลของฉัน"

ง) คลิก "เพิ่มผู้บริโภค"

E) วางที่อยู่ของสัญญาในช่องป้อนข้อมูล "ที่อยู่ของผู้บริโภค" สิ่งนี้จะแจ้งให้สมาชิกทราบเกี่ยวกับสัญญาที่คุณปรับใช้

F) คลิก "เพิ่มผู้บริโภค" และปฏิบัติตามคำแนะนำจาก MetaMask

G) หลังจากยืนยันการทำธุรกรรม คลิก "ปิด" และรีเฟรชหน้านี้ คุณทำขั้นตอนนี้สำเร็จแล้วหากคุณเห็นผู้บริโภคตามที่แสดงในภาพด้านล่างถูกเพิ่มลงในการสมัครสมาชิกของคุณ

ขั้นตอนที่หก: ทำให้ NFT ของคุณเป็นอัตโนมัติ โดยใช้ Chainlink Automation

ในขั้นตอนนี้ คุณจะใช้ Chainlink Automation เพื่อสร้างการบำรุงรักษาตามเวลาที่อัปเดตสีพื้นหลังและการแสดงออกของ NFT แบบไดนามิก

A) ไปที่ https://automation.chain.link/mumbai คลิก "เชื่อมต่อกระเป๋าเงิน" ที่มุมขวาบนเพื่อเชื่อมต่อกระเป๋าเงินของคุณ หากกระเป๋าเงินของคุณเชื่อมต่ออยู่แล้ว คุณสามารถข้ามขั้นตอนนี้ได้

A) ไปที่ https://automation.chain.link/mumbai คลิก "เชื่อมต่อกระเป๋าเงิน" ที่มุมขวาบนเพื่อเชื่อมต่อกระเป๋าเงินของคุณ หากกระเป๋าเงินของคุณเชื่อมต่ออยู่แล้ว คุณสามารถข้ามขั้นตอนนี้ได้

B) คลิก "ลงทะเบียนการบำรุงรักษาใหม่"

C) เลือก "ตามเวลา"

D) วางที่อยู่สัญญาของคุณแล้วคลิก "ถัดไป" (โปรดดูขั้นตอนที่ 5A หากคุณต้องการความช่วยเหลือในการค้นหาที่อยู่สัญญาของคุณ)

E) คุณจะได้รับข้อความแจ้งว่า: "ไม่สามารถรับ ABI ได้ ในแท็บแยกต่างหาก ให้กลับไปที่ Remix แล้วเลือกแท็บ "Solidity compiler" ในแถบด้านข้างด้านซ้าย

F) เลือกสัญญาของคุณในเมนูแบบเลื่อนลง "สัญญา" และคลิกปุ่ม "คัดลอก ABI"

F) เลือกสัญญาของคุณในเมนูแบบเลื่อนลง "สัญญา" และคลิกปุ่ม "คัดลอก ABI"

G) กลับไปที่การลงทะเบียนการบำรุงรักษาของคุณ วาง ABI ในช่องป้อนข้อมูล คลิก "ถัดไป"

H) เลือก "requestRandomWords" ภายใต้ "Objective Function" แล้วคลิก "Next"

I) ภายใต้ "ระบุกำหนดการ" ให้ป้อนนิพจน์ CRON ต่อไปนี้เพื่อสร้างสีพื้นหลังใหม่สำหรับ NFT ของคุณทุกๆ 2 นาที: */2 * * * *

ญ) คลิก "ถัดไป"

K) ตั้งชื่อการบำรุงรักษาของคุณ (เช่น: Dynamic NFT Demo) และป้อนยอดคงเหลือเริ่มต้นที่ 2 LINK

L) คลิก "ลงทะเบียนการบำรุงรักษา" และอนุมัติการทำธุรกรรมเพื่อปรับใช้สัญญางาน CRON ใน MetaMask

L) คลิก "ลงทะเบียนการบำรุงรักษา" และอนุมัติการทำธุรกรรมเพื่อปรับใช้สัญญางาน CRON ใน MetaMask

M) เมื่อการทำธุรกรรมได้รับการอนุมัติ MetaMask จะแจ้งให้คุณยืนยันการทำธุรกรรมครั้งที่สอง "ขอลงทะเบียนการบำรุงรักษาตามเวลา"

N) รอให้ธุรกรรมได้รับการยืนยันแล้วคลิก "ดูการบำรุงรักษา"

O) หากคุณเห็น "เปิดใช้งาน" ในสถานะการบำรุงรักษาที่สร้างขึ้นใหม่ แสดงว่าคุณทำขั้นตอนนี้สำเร็จแล้ว ยินดีด้วย!

ขั้นตอนที่ 7 : ดู NFT ของคุณบน OpenSea

A) ไปที่ https://testnets.opensea.io/ และเลือก "โปรไฟล์" จากเมนูแบบเลื่อนลงที่มุมขวาบน

B) เชื่อมต่อกระเป๋าเงินของคุณตามที่แสดงด้านล่าง คุณอาจต้องลงนามในการทำธุรกรรมกับ OpenSea

C) ในโปรไฟล์ของคุณ คลิกที่ NFT ที่มีข้อความว่า "ETH Watching SVG"

D) คลิกที่จุดสามจุดที่มุมขวาบนแล้วเลือก "รีเฟรชข้อมูลเมตา"

จ) รอ 30 วินาที จากนั้นรีเฟรชหน้า แล้วคุณจะเห็น dNFT ที่สร้างขึ้นใหม่!

ยินดีด้วย! คุณทำบทช่วยสอนเสร็จแล้ว ทุก ๆ สองนาที จนกว่าเงินสมัครของคุณจะหมด NFT ของคุณจะตรวจสอบราคาของ ETH และขอสีพื้นหลังใหม่ ครั้งต่อไปที่คุณรีเฟรชเมทาดาทา คุณควรเห็นบางอย่างที่แตกต่างออกไป

สรุปแล้ว

หากคุณทำสำเร็จแล้ว ขอแสดงความยินดีด้วย! คุณปรับใช้ NFT ที่อัปเดตแบบไดนามิกบน Polygon Mumbai Testnet ได้สำเร็จ ซึ่งใช้ Chainlink Price Feeds เพื่อติดตามราคาของ Ethereum, Chainlink VRF เพื่อเลือกสีพื้นหลังแบบสุ่ม และ Chainlink Automation เพื่ออัปเดตรูปภาพทุกสองนาที

ความคิดเห็น

ความคิดเห็นทั้งหมด

Recommended for you