Saltar al contenido principal

Mensajes y entrega

Política de Reintentos

Objetivos

  • Reintentar por solicitud HTTP, no por flujo de múltiples pasos.
  • Preservar el orden reintentando solo el paso actual.
  • Evitar duplicar operaciones no idempotentes.

Valores Predeterminados

  • Intentos: 3
  • Límite máximo de retraso: 30000 ms
  • Jitter: 0.1 (10 por ciento)
  • Valores predeterminados del proveedor:
    • Telegram retraso mínimo: 400 ms
    • Discord retraso mínimo: 500 ms

Comportamiento

Discord

  • Reintenta solo en errores de límite de tasa (HTTP 429).
  • Usa retry_after de Discord cuando está disponible; de lo contrario, usa retroceso exponencial.

Telegram

  • Reintenta en errores transitorios (429, timeout, connect/reset/closed, temporalmente no disponible).
  • Usa retry_after cuando está disponible; de lo contrario, usa retroceso exponencial.
  • Los errores de análisis de Markdown no se reintentan; se recurre a texto plano.

Configuración

Establece la política de reintentos por proveedor en ~/.openclaw/openclaw.json:

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

Notas

  • Los reintentos se aplican por solicitud (envío de mensaje, carga de medios, reacción, encuesta, sticker).
  • Los flujos compuestos no reintentan pasos completados.

Streaming y FragmentaciónCola de Comandos