Aller au contenu principal

Défi d'appel de contrat EVM

EVM Contract Call Challenge est un mécanisme anti-spam qui vérifie les conditions en chaîne avant d'autoriser une publication. Il permet aux propriétaires de communauté d'exiger que les auteurs répondent aux critères définis par les contrats intelligents (par exemple, détenir un solde de jetons minimum) afin de publier.

Code source : github.com/bitsocialnet/evm-contract-call

Exigences

  • Node.js >= 22
  • ESM uniquement : ce package ne fournit pas de versions CommonJS.

Mise en place

npm install @bitsocial/evm-contract-challenge

Options de configuration

OptionsTapezDescriptif
chainTickerstringChaîne à interroger (par exemple, eth, matic, avax).
addressstringL’adresse du contrat intelligent à appeler.
abistringLe fragment ABI de la fonction appelée.
conditionstringUne expression de comparaison évaluée par rapport à la valeur de retour du contrat (par exemple, > 1000).
errorstringLe message d'erreur affiché aux auteurs qui ne remplissent pas la condition.

Exemple

Un propriétaire de communauté qui souhaite limiter la publication aux auteurs détenant plus de 1 000 jetons ERC-20 particuliers configurerait le défi avec :

  • chainTicker : "eth"
  • address : l'adresse du contrat de token
  • abi : l'ABI pour balanceOf(address)
  • condition : "> 1000"
  • error : "You must hold more than 1,000 tokens to post in this community."

Lorsqu'un auteur tente de publier, le défi appelle balanceOf avec l'adresse de l'auteur et vérifie si la valeur renvoyée satisfait à la condition. Si tel est le cas, la publication se poursuit ; sinon, le message d'erreur configuré est renvoyé.

Quand l'utiliser

EVM Contract Call Challenge est idéal pour :

  • Communautés fermées à jetons qui limitent la publication aux détenteurs de jetons.
  • Accès sécurisé NFT où la propriété d'un NFT spécifique est requise.
  • Espaces de gouvernance DAO où la participation est limitée aux détenteurs de jetons de gouvernance.

Pour les communautés qui ne s'appuient pas sur l'identité en chaîne, envisagez plutôt Bloqueur de spam ou Défi des bons d'achat.