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
Επιλογές διαμόρφωσης
| Επιλογή | Τύπος | Περιγραφή |
|---|---|---|
chainTicker | string | Η αλυσίδα για το ερώτημα (π.χ., eth, matic, avax). |
address | string | Η έξυπνη διεύθυνση συμβολαίου για κλήση. |
abi | string | Το τμήμα ABI για τη συνάρτηση που καλείται. |
condition | string | Μια έκφραση σύγκρισης που αξιολογείται έναντι της τιμής επιστροφής συμβολαίου (π.χ. > 1000). |
error | string | Το μήνυμα σφάλματος εμφανίζεται στους συντάκτες που δεν πληρούν την προϋπόθεση. |
Παράδειγμα
Ένας κάτοχος κοινότητας που θέλει να περιορίσει την ανάρτηση σε συγγραφείς που διαθέτουν περισσότερα από 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 όπου η συμμετοχή περιορίζεται στους κατόχους διακριτικών διακυβέρνησης.
Για κοινότητες που δεν βασίζονται στην ταυτότητα της αλυσίδας, πάρτε το ενδεχόμενο Αποκλεισμός χρήστης αλληλογραφίας ή Πρόκληση κουπονιών.