Μετάβαση στο κύριο περιεχόμενο

EVM Contract Call Challenge

Το EVM Contract Call Challenge είναι ένας μηχανισμός κατά των ανεπιθύμητων μηνυμάτων που επαληθεύει τις συνθήκες στην αλυσίδα πριν επιτρέψει μια δημοσίευση. Επιτρέπει στους ιδιοκτήτες κοινότητας να απαιτούν από τους συντάκτες να πληρούν κριτήρια που ορίζονται από έξυπνα συμβόλαια -- για παράδειγμα, να διατηρούν ένα ελάχιστο υπόλοιπο διακριτικών -- προκειμένου να δημοσιεύσουν.

Κωδικός πηγής: github.com/bitsocialnet/evm-contract-call

Απαιτήσεις

  • Node.js >= 22
  • Μόνο για ESM -- αυτό το πακέτο δεν αποστέλλει εκδόσεις CommonJS.

Εγκατάσταση

npm install @bitsocial/evm-contract-challenge

Επιλογές διαμόρφωσης

ΕπιλογήΤύποςΠεριγραφή
chainTickerstringΗ αλυσίδα για το ερώτημα (π.χ., eth, matic, avax).
addressstringΗ έξυπνη διεύθυνση συμβολαίου για κλήση.
abistringΤο τμήμα ABI για τη συνάρτηση που καλείται.
conditionstringΜια έκφραση σύγκρισης που αξιολογείται έναντι της τιμής επιστροφής συμβολαίου (π.χ. > 1000).
errorstringΤο μήνυμα σφάλματος εμφανίζεται στους συντάκτες που δεν πληρούν την προϋπόθεση.

Παράδειγμα

Ένας κάτοχος κοινότητας που θέλει να περιορίσει την ανάρτηση σε συγγραφείς που διαθέτουν περισσότερα από 1.000 από ένα συγκεκριμένο διακριτικό ERC-20 θα διαμορφώσει την πρόκληση με:

  • chainTicker: "eth"
  • address: η διεύθυνση συμβολαίου συμβολαίου
  • abi: το ABI για το balanceOf(address)
  • condition: "> 1000"
  • error: "You must hold more than 1,000 tokens to post in this community."

Όταν ένας συγγραφέας επιχειρεί να δημοσιεύσει, η πρόκληση καλεί το balanceOf με τη διεύθυνση του συγγραφέα και ελέγχει εάν η τιμή που επιστρέφεται ικανοποιεί τη συνθήκη. Εάν συμβεί αυτό, η δημοσίευση προχωρά. Διαφορετικά, επιστρέφεται το ρυθμισμένο μήνυμα σφάλματος.

Πότε να το χρησιμοποιήσετε

Το EVM Contract Call Challenge είναι ιδανικό για:

  • Κοινότητες με πύλη διακριτικών που περιορίζουν την ανάρτηση στους κατόχους διακριτικών.
  • Πρόσβαση με πύλη NFT όπου απαιτείται η ιδιοκτησία ενός συγκεκριμένου NFT.
  • Χώροι διακυβέρνησης DAO όπου η συμμετοχή περιορίζεται στους κατόχους διακριτικών διακυβέρνησης.

Για κοινότητες που δεν βασίζονται στην ταυτότητα της αλυσίδας, πάρτε το ενδεχόμενο Αποκλεισμός χρήστης αλληλογραφίας ή Πρόκληση κουπονιών.