---
title: "Email AI-CRM — гайд разработчика"
description: ".env.local, миграции 009/010, cron poll и SMTP smoke test"
locale: "ru"
---
# Email AI-CRM — гайд разработчика

Настройка модуля на **локальном или self-hosted** клоне Ring: `.env.local`, миграции (при необходимости), проверка ingest и отправки черновика из админ UI.

> **EN canonical:** полный troubleshooting и webhook — [Email AI-CRM developer guide (EN)](/docs/examples/email-ai-crm.md)

## 1. Локальное окружение

Блок **EMAIL CRM** из `env.local.template` → `.env.local`:

```bash
# .env.local
IMAP_HOST=mail.example.com
IMAP_USER=info@example.com
IMAP_PASSWORD=

SMTP_HOST=mail.example.com
SMTP_PORT=587
SMTP_SECURE=false
SMTP_USER=info@example.com
SMTP_PASSWORD=

ANTHROPIC_API_KEY=

CRON_SECRET=generate-a-long-random-string
EMAIL_AUTO_SEND_ENABLED=false
EMAIL_CRM_PERSISTENCE=memory
```

## 2. Миграции

```bash
psql "$DATABASE_URL" -f data/migrations/009_email_crm_jsonb.sql
psql "$DATABASE_URL" -f data/migrations/010_email_crm_tasks_jsonb.sql
```

Уберите `EMAIL_CRM_PERSISTENCE=memory`, если нужна персистентность в Postgres.

## 3. Ingest (локально)

```bash
curl -sS -X POST "http://localhost:3000/api/cron/email-processor" \
  -H "Authorization: Bearer $CRON_SECRET" \
  -H "Content-Type: application/json" \
  -d '{"action":"poll"}'
```

## 4. SMTP smoke test

```mermaid
flowchart LR
    A[Письмо на inbox] --> B[Cron poll]
    B --> C[Admin Inbox]
    C --> D[Approve draft]
    D --> E[Send SMTP]
    E --> F[Ответ отправителю]
```

1. Тест на `IMAP_USER`.
2. `poll`.
3. **Admin → Email Inbox** → **Email Drafts** → approve → send.
4. После успеха: `EMAIL_AUTO_SEND_ENABLED=true`.

## 5. Продакшн cron

```bash
curl -sS -X POST "$BASE_URL/api/cron/email-processor" \
  -H "Authorization: Bearer ${CRON_SECRET}" \
  -d '{"action":"poll"}'
```

## Устранение неполадок

| Симптом | Проверка |
|---------|----------|
| Пустой inbox | Миграции или `memory`? `ANTHROPIC_API_KEY`? |
| 401 на cron | `CRON_SECRET` в Bearer |
| Send fails | `SMTP_*`, порт 587 |

## Связанное

- [Email AI-CRM](/docs/features/email-ai-crm.md)
- [Environment](/docs/deployment/environment.md#email-ai-crm)
