---
title: "Mensagens Não Enviadas — Solução OpenClaw"
url: "https://openclaw.ia.br/troubleshooting/mensagens-nao-enviadas/"
markdown_url: "https://openclaw.ia.br/troubleshooting/mensagens-nao-enviadas.MD"
description: "Como resolver quando as mensagens não estão sendo enviadas pelo bot. Fila, rate limit e debug."
date: ""
author: ""
---

# Mensagens Não Enviadas — Solução OpenClaw

Como resolver quando as mensagens não estão sendo enviadas pelo bot. Fila, rate limit e debug.


# Mensagens Não Enviadas

## Descrição do Problema

O bot não consegue enviar mensagens ou elas ficam presas na fila:

```
Message sending failed
Rate limit exceeded
Queue is full
Unable to deliver message
```

## Possíveis Causas

1. **Rate limit** - Enviando mensagens muito rápido
2. **Número bloqueado** - Destinatário bloqueou o bot
3. **Conexão perdida** - Desconectado do serviço
4. **Fila cheia** - Muitas mensagens aguardando
5. **Formato inválido** - Mensagem com problemas

## Soluções

### 1. Verificar Status da Conexão

```bash
# Ver status do gateway
openclaw gateway status

# Reconectar se necessário
openclaw gateway reconnect
```

### 2. Verificar Fila de Mensagens

```bash
# Ver mensagens pendentes
openclaw queue status

# Limpar fila se necessário
openclaw queue clear

# Reprocessar mensagens falhas
openclaw queue retry
```

### 3. Respeitar Rate Limits

```yaml
# Configurar rate limiting adequado
rate_limit:
  messages_per_second: 1
  messages_per_minute: 30
  delay_between_messages: 1000  # 1 segundo
```

```javascript
// Implementar delay entre mensagens
async function sendWithDelay(messages) {
  for (const msg of messages) {
    await sendMessage(msg);
    await sleep(1000);  // 1 segundo entre mensagens
  }
}
```

### 4. Verificar Logs de Erro

```bash
# Ver erros de envio
openclaw logs | grep -i "send\|deliver\|failed"

# Ver detalhes de mensagens específicas
openclaw logs | grep "message_id"
```

### 5. Verificar Formato da Mensagem

```javascript
// Mensagem válida
const message = {
  to: "5511999999999@s.whatsapp.net",
  text: "Olá, esta é uma mensagem de teste!"
};

// Verificar se o número está correto
// Formato: código país + DDD + número + @s.whatsapp.net
```

### 6. Verificar Se Foi Bloqueado

```bash
# Verificar status do número
openclaw contact status 5511999999999

# Se bloqueado, não há muito o que fazer
# O destinatário precisa desbloquear
```

### 7. Implementar Retry

```javascript
async function sendWithRetry(message, maxRetries = 3) {
  for (let i = 0; i < maxRetries; i++) {
    try {
      await sendMessage(message);
      return true;
    } catch (error) {
      console.log(`Tentativa ${i + 1} falhou:`, error.message);
      await sleep(1000 * (i + 1));  // Backoff
    }
  }
  return false;
}
```

## Diagnóstico

```bash
# Script de diagnóstico
#!/bin/bash
echo "=== Diagnóstico de Envio de Mensagens ==="

echo -e "\n1. Status do Gateway:"
openclaw gateway status

echo -e "\n2. Fila de Mensagens:"
openclaw queue status

echo -e "\n3. Últimos Erros:"
openclaw logs --tail 20 | grep -i "error\|failed"

echo -e "\n4. Conexão:"
openclaw connection status
```

## Problemas Relacionados

- [Rate Limit Excedido](#)
- [Número Bloqueado](#)
- [Sessão Desconectada](#)

## Prevenção

- Respeite os rate limits de cada plataforma
- Implemente filas com retry automático
- Monitore taxa de sucesso de envio
- Trate erros graciosamente
