Passa al contenuto principale

Sfida per chiamate di contratti EVM

EVM Contract Call Challenge è un meccanismo anti-spam che verifica le condizioni on-chain prima di consentire una pubblicazione. Consente ai proprietari della comunità di richiedere agli autori di soddisfare i criteri definiti dallo smart contract, ad esempio il mantenimento di un saldo minimo di token, per poter pubblicare.

Codice sorgente: github.com/bitsocialnet/evm-contract-call

Requisiti

  • Node.js >= 22
  • Solo ESM: questo pacchetto non include build CommonJS.

Installazione

npm install @bitsocial/evm-contract-challenge

Opzioni di configurazione

OpzioneDigitareDescrizione
ZXQPLACEholder0ZXQZXQPLACEholder1ZXQLa catena da interrogare (ad esempio, ZXQPLACEholder2ZXQ, ZXQPLACEholder3ZXQ, ZXQPLACEholder4ZXQ).
ZXQPLACEholder0ZXQZXQPLACEholder1ZXQL'indirizzo del contratto intelligente da chiamare.
ZXQPLACEholder0ZXQZXQPLACEholder1ZXQIl frammento ABI per la funzione chiamata.
ZXQPLACEholder0ZXQZXQPLACEholder1ZXQUn'espressione di confronto valutata rispetto al valore restituito dal contratto (ad esempio, > 1000).
ZXQPLACEholder0ZXQZXQPLACEholder1ZXQIl messaggio di errore mostrato agli autori che non soddisfano la condizione.

Esempio

Un proprietario di comunità che desidera limitare la pubblicazione agli autori che detengono più di 1.000 token ERC-20 particolari configurerebbe la sfida con:

  • ZXQPLACEholder0ZXQ: ZXQPLACEholder1ZXQ
  • address: l'indirizzo del contratto del token
  • ZXQPLACEholder0ZXQ: l'ABI per ZXQPLACEholder1ZXQ
  • ZXQPLACEholder0ZXQ: ZXQPLACEholder1ZXQ
  • ZXQPLACEholder0ZXQ: ZXQPLACEholder1ZXQ

Quando un autore tenta di pubblicare, la sfida chiama balanceOf con l'indirizzo dell'autore e controlla se il valore restituito soddisfa la condizione. In tal caso la pubblicazione procede; in caso contrario viene restituito il messaggio di errore configurato.

Quando usarlo

EVM Contract Call Challenge è l'ideale per:

  • Comunità controllate da token che limitano la pubblicazione ai possessori di token.
  • Accesso controllato da NFT dove è richiesta la proprietà di un NFT specifico.
  • Spazi di governance DAO in cui la partecipazione è limitata ai titolari di token di governance.

Per le comunità che non fanno affidamento sull'identità sulla catena, considera invece Spam Blocker o Voucher Challenge.