EVM Contract Call Challenge
یہ پیکیج اصل میں @plebbit دائرہ کار کے تحت شائع کیا گیا تھا۔ اس کا نام بدل کر @bitsocial/evm-contract-challenge رکھ دیا گیا ہے۔ پرانے نام کے حوالہ جات اب بھی پرانی دستاویزات یا کوڈ بیسز میں ظاہر ہو سکتے ہیں۔
ای وی ایم کنٹریکٹ کال چیلنج ایک اینٹی سپیم میکانزم ہے جو کسی اشاعت کی اجازت دینے سے پہلے آن چین حالات کی تصدیق کرتا ہے۔ اصل میں plebbit-js سے اسٹینڈ اکیلا پیکج کے طور پر نکالا گیا، یہ کمیونٹی کے مالکان کو مصنفین کو سمارٹ کنٹریکٹ کے طے شدہ معیار پر پورا اترنے کی اجازت دیتا ہے -- مثال کے طور پر، کم از کم ٹوکن بیلنس رکھنا -- پوسٹ کرنے کے لیے۔
ماخذ کوڈ: github.com/bitsocialnet/evm-contract-call
ضروریات
- Node.js >= 22
- صرف ESM -- یہ پیکج CommonJS کی تعمیرات نہیں بھیجتا ہے۔
- رن ٹائم پیئر انحصار:
@plebbit/plebbit-js(@pkc/pkc-jsپر منتقلی)
تنصیب
npm install @bitsocial/evm-contract-challenge
کنفیگریشن کے اختیارات
| اختیار | قسم | تفصیل |
|---|---|---|
matic | ||
string | ||
abi | string | جس فنکشن کو بلایا جا رہا ہے اس کے لیے ABI کا ٹکڑا۔ |
condition | string | معاہدے کی واپسی کی قیمت (جیسے > 1000) کے مقابلے میں ایک موازنہ اظہار۔ |
error | string | غلطی کا پیغام ان مصنفین کو دکھایا گیا ہے جو شرط پر پورا نہیں اترتے ہیں۔ |
مثال
ایک کمیونٹی کا مالک جو کسی خاص ERC-20 ٹوکن میں سے 1,000 سے زیادہ کے حامل مصنفین تک پوسٹنگ کو محدود کرنا چاہتا ہے اس کے ساتھ چیلنج کو ترتیب دے گا:
chainTicker:"eth"address: ٹوکن کنٹریکٹ ایڈریسabi: ABI برائےbalanceOf(address)condition:"> 1000"error:"You must hold more than 1,000 tokens to post in this community."
مصنف کو کال کرنے کے لیے ایک چیلنج شائع کرنے کی کوشش کریں balanceOf مصنف کے پتے کے ساتھ اور چیک کرتا ہے کہ آیا واپس کی گئی قیمت شرط کو پورا کرتی ہے۔ اگر ایسا ہوتا ہے تو، اشاعت آگے بڑھتی ہے؛ دوسری صورت میں، ترتیب شدہ غلطی کا پیغام واپس آ جاتا ہے۔
اسے کب استعمال کیا جائے
ای وی ایم کنٹریکٹ کال چیلنج ان کے لیے مثالی ہے:
- ٹوکن گیٹڈ کمیونٹیز جو ٹوکن ہولڈرز تک پوسٹنگ کو محدود کرتی ہیں۔
- NFT گیٹڈ رسائی جہاں ایک مخصوص NFT کی ملکیت درکار ہے۔
- DAO گورننس کی جگہیں جہاں شرکت گورننس ٹوکن ہولڈرز تک محدود ہے۔
ان کمیونٹیز کے لیے جو آن-چین شناخت پر انحصار نہیں کرتی ہیں، اس کے بجائے Spam Blocker یا Voucher Challenge پر غور کریں۔