> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vetox.io/llms.txt
> Use this file to discover all available pages before exploring further.

# एंटी-रेड

> Configurable join guard conditions के साथ mass-join raids का पता लगाएँ और door पर संदिग्ध accounts की जाँच करें। Basic tier।

एंटी-रेड दो स्वतंत्र काम करता है: यह joins की **flood** पर react करता है, और आते ही **individual** accounts की जाँच करता है।

<Info>
  **Basic** premium चाहिए। इससे नीचे पूरा page pricing से बदल जाता है — settings बिल्कुल नहीं दिखतीं।
</Info>

<Note>
  एंटी-रेड को अपनी switch [Setup](/hi/server-management/setup) page पर भी चाहिए। यदि यह off है, तो यह page एक amber banner दिखाता है और **हर control disabled रहता है** जब तक आप इसे enable नहीं करते।
</Note>

## Raid detection

जब आपकी window के अंदर पर्याप्त members join हों, तो Vetox raid घोषित करता है।

| Setting                     | Default | Range                     |
| --------------------------- | ------- | ------------------------- |
| **Minimum Number of Users** | 15      | **2** से 100              |
| **Interval (seconds में)**  | 5       | 1 से 300                  |
| **Raid के दौरान Action**    | Kick    | Kick, Ban या Mute         |
| **Account Age**             | 3 महीने | 1, 2, 3, 6, 9 या 12 महीने |

<Warning>
  **Account Age एक filter है, requirement नहीं।** केवल threshold से **छोटे** accounts raid trigger की ओर गिने जाते हैं। एक ही समय पर join होने वाले पुराने accounts पूरी तरह ignore हो जाते हैं।

  इसे बढ़ाने से एंटी-रेड अधिक sensitive होता है, कम नहीं।
</Warning>

<Warning>
  **केवल वह member punish होता है जो threshold trip करता है।** Window में पहले joiners आपके alert में नामित होते हैं लेकिन kick, ban या mute नहीं होते।

  यदि आपको wave में हर किसी को handle करना है, तो नीचे Join Guard का उपयोग करें।
</Warning>

<Note>
  Number inputs आपको minimum 2 से नीचे जाने देते हैं, लेकिन उस value को save करना generic error से विफल हो जाता है। इसे 2 या ऊपर रखें।
</Note>

## Raid reports

एक channel चुनें और start और end message लिखें। दोनों variables support करते हैं।

| Variable       | कहाँ काम करता है |
| -------------- | ---------------- |
| `[Usernames]`  | Start message    |
| `[Users]`      | Start message    |
| `[UsersCount]` | Start message    |

<Warning>
  यहाँ दो limitations हैं:

  * **`[ServerName]` picker में offered है लेकिन कभी replace नहीं होता।** यह literal text के रूप में post होता है।
  * **End message कुछ भी substitute नहीं करता।** आप जो भी variable इसमें डालें वह literally post होता है। इसे plain text के रूप में लिखें।
</Warning>

<Note>
  `[UsersCount]` उस member को exclude करता है जिसने raid trigger किया, इसलिए यह आपके threshold से एक कम पढ़ता है।
</Note>

<Warning>
  **Report channel clear करना प्रभावी नहीं होता।** Selector clear होता दिखता है, लेकिन पुराना channel रखा जाता है और alerts वहीं जाते रहते हैं। Save करने के बाद channel दृश्य रूप से फिर से दिखाई देता है।

  Alerts रोकने के लिए, field clear करने का प्रयास करने के बजाय उन्हें किसी ऐसे channel पर point करें जिसे आप archive कर सकें।
</Warning>

## Join Guard

Join Guard हर join की individually जाँच करता है और **raid threshold से स्वतंत्र रूप से** चलता है — यह act करता है चाहे raid हो रहा हो या नहीं। 10 conditions तक।

### Rules

हर condition पाँच rules तक रखती है:

| Rule                  | जाँचता है                                               |
| --------------------- | ------------------------------------------------------- |
| **Account Age**       | दिए गए hours, दिन या महीनों की संख्या से पुराना या नया  |
| **Default Avatar**    | Account ने कभी profile picture set नहीं की              |
| **No Banner**         | Account का कोई profile banner नहीं है                   |
| **Username Contains** | Username में आपके कोई keywords शामिल हैं, प्रति line एक |
| **Generated Name**    | Username machine-generated patterns से match करता है    |

Generated-name detection ऐसे नामों को cover करता है जो तीन या अधिक numbers से समाप्त होते हैं, numbers से शुरू होते हैं, underscore के बाद numbers, numbers के बाद underscore, केवल numbers, और short random letter-number mixes।

### Matching

हर condition **सभी rules match होने चाहिए** या **कोई एक rule match होना चाहिए** चुनती है।

<Warning>
  *default avatar* जैसे broad rule के साथ "Any" सामान्य नए members के बड़े हिस्से पर act करेगा। Rules combine करें और तब तक "All" पसंद करें जब तक आप निश्चित नहीं हैं।
</Warning>

### Actions

प्रति condition पाँच तक: role assign करें, kick, ban, कुछ मिनटों के लिए timeout, DM भेजें, channel में post करें, या moderation case खोलें।

<Note>
  Actions क्रम में चलती हैं, और **kick या ban सब कुछ रोक देता है** — उस condition पर शेष actions और सभी बाद की conditions skip हो जाती हैं।

  अपने logging और DM actions को किसी भी kick या ban के **पहले** रखें, वरना वे कभी नहीं चलेंगे।
</Note>

Join Guard messages raid reports से बहुत समृद्ध variable set support करते हैं, जिसमें member, उनका account age, matched rules और condition नाम शामिल हैं।

## एक समझदार configuration बनाना

<Steps>
  <Step title="अकेले raid detection से शुरू करें">
    Defaults obvious case handle करते हैं। पहले Join Guard खाली छोड़ें।
  </Step>

  <Step title="एक narrow Join Guard condition जोड़ें">
    दो या तीन rules को "All" के साथ combine करें — एक बहुत नया account **और** default avatar **और** generated name शायद ही कभी असली member होता है।
  </Step>

  <Step title="इसे देखते समय non-destructive action का उपयोग करें">
    Ban करने के बजाय quarantine role assign करें और case खोलें। एक हफ़्ते के लिए review करें।
  </Step>

  <Step title="भरोसा होने पर ही कड़ा करें">
    Condition को असली traffic पर behave करते देखने के बाद kicks या bans पर जाएँ।
  </Step>
</Steps>

## Troubleshooting

<AccordionGroup>
  <Accordion title="Raids detect नहीं होते">
    जाँचें कि join होने वाले accounts वास्तव में आपके Account Age threshold से छोटे हैं — पुराने accounts कभी नहीं गिने जाते।
  </Accordion>

  <Accordion title="केवल एक member को punish किया गया">
    अपेक्षित। Raid detection केवल triggering member पर act करता है। हर matching join पर act करने के लिए Join Guard का उपयोग करें।
  </Accordion>

  <Accordion title="कोई variable literal text के रूप में post हुआ">
    `[ServerName]` कभी substitute नहीं होता, और end message कुछ भी substitute नहीं करता।
  </Accordion>

  <Accordion title="Alerts अब भी पुराने channel पर जाते हैं">
    Report channel clear करना बना नहीं रहता। इसके बजाय एक अलग channel चुनें।
  </Accordion>

  <Accordion title="Save generic error से विफल हो जाता है">
    आमतौर पर user threshold 2 से नीचे है, या interval 300 सेकंड से ऊपर है। दोनों form द्वारा स्वीकार और save पर reject होते हैं।
  </Accordion>

  <Accordion title="Join Guard ने मेरी logging action skip की">
    Action list में पहले एक kick या ban इसके बाद सब कुछ abort कर देता है। Reorder करें ताकि logging पहले चले।
  </Accordion>
</AccordionGroup>

## संबंधित

<CardGroup cols={2}>
  <Card title="Protection" icon="lock" href="/hi/moderation/protection">
    अंदर से नुकसान के खिलाफ बचाव।
  </Card>

  <Card title="Auto-Roles" icon="user-plus" href="/hi/engagement/auto-roles">
    Delayed roles एक शांत एंटी-रेड उपाय हैं।
  </Card>
</CardGroup>
