---
read_when:
    - تحديث سلوك إعادة المحاولة الخاص بالموفّر أو القيم الافتراضية
    - تصحيح أخطاء إرسال الموفّر أو حدود المعدل
summary: سياسة إعادة المحاولة لاستدعاءات الموفّر الصادرة
title: سياسة إعادة المحاولة
x-i18n:
    generated_at: "2026-04-05T12:41:04Z"
    model: gpt-5.4
    provider: openai
    source_hash: 55bb261ff567f46ce447be9c0ee0c5b5e6d2776287d7662762656c14108dd607
    source_path: concepts/retry.md
    workflow: 15
---

# سياسة إعادة المحاولة

## الأهداف

- إعادة المحاولة لكل طلب HTTP، وليس لكل تدفق متعدد الخطوات.
- الحفاظ على الترتيب عبر إعادة محاولة الخطوة الحالية فقط.
- تجنب تكرار العمليات غير القابلة للتطابق.

## القيم الافتراضية

- عدد المحاولات: 3
- الحد الأقصى للتأخير: 30000 ms
- Jitter: 0.1 ‏(10 بالمئة)
- القيم الافتراضية الخاصة بالموفّرين:
  - أقل تأخير لـ Telegram: ‏400 ms
  - أقل تأخير لـ Discord: ‏500 ms

## السلوك

### Discord

- يعيد المحاولة فقط عند أخطاء حدود المعدل (HTTP 429).
- يستخدم `retry_after` الخاص بـ Discord عند توفره، وإلا فيستخدم exponential backoff.

### Telegram

- يعيد المحاولة عند الأخطاء العابرة (429، timeout، connect/reset/closed، غير متاح مؤقتًا).
- يستخدم `retry_after` عند توفره، وإلا فيستخدم exponential backoff.
- لا تتم إعادة محاولة أخطاء تحليل Markdown؛ بل تعود إلى النص العادي.

## الإعداد

اضبط سياسة إعادة المحاولة لكل موفّر في `~/.openclaw/openclaw.json`:

```json5
{
  channels: {
    telegram: {
      retry: {
        attempts: 3,
        minDelayMs: 400,
        maxDelayMs: 30000,
        jitter: 0.1,
      },
    },
    discord: {
      retry: {
        attempts: 3,
        minDelayMs: 500,
        maxDelayMs: 30000,
        jitter: 0.1,
      },
    },
  },
}
```

## ملاحظات

- تنطبق عمليات إعادة المحاولة على كل طلب على حدة (إرسال رسالة، أو رفع وسائط، أو تفاعل، أو استطلاع، أو ملصق).
- لا تعيد التدفقات المركبة محاولة الخطوات المكتملة.
