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

# Контакты кампании

> Файл контактов и требования к нему, долив партий, хранение файлов и сверка с реестром «не звонить».

# Контакты кампании

## Загрузка контактов и результаты импорта

В блоке **«Загрузка контактов»** загружается файл. Блок **«Результаты импорта»** показывает принятые строки, предупреждения, отклонённые строки, дубликаты, использованную колонку телефона и ошибки по строкам. При наличии ошибок можно скачать отчёт в CSV или XLSX.

В таблице переменных отображаются импортированные колонки, их ключи и процент заполнения. **«История загрузок»** показывает загруженные файлы, время загрузки и количество принятых строк.

<img src="https://mintcdn.com/hubtalk/cKl-cjuDGhk4sToG/images/v4_campaign_contacts_upload.png?fit=max&auto=format&n=cKl-cjuDGhk4sToG&q=85&s=419205b282fba4f1b2df34fe6b73e69e" alt="Блоки «Загрузка контактов» и «Результаты импорта»" width="1440" height="900" data-path="images/v4_campaign_contacts_upload.png" />

## Требования к файлу контактов

Принимаются **CSV** и **XLSX**. Устаревший **XLS не поддерживается** — пересохраните файл. Лимиты: до **50 000 строк** и до **10 МБ**; файл сверх лимита **отклоняется целиком, а не обрезается**.

* **Номер телефона** — единственная обязательная колонка. Платформа находит её по названию (`phone`, `phone_number`, `mobile`, `cell`, `tel` и похожим), а если узнаваемого заголовка нет — определяет по содержимому. Строки с нечитаемым номером не отбрасываются молча: они попадают в отчёт импорта с номером строки.
* **Имя** читается из колонки `name` / `full_name` либо собирается из `first_name` и `last_name`.
* **Любые другие колонки** становятся переменными звонка: сумма задолженности, номер договора, дата платежа.

<Tip>
  **Скачайте образец файла из формы создания кампании.** Образец собран **под конкретного агента** — в нём уже стоят те колонки, которые агент использует в промптах. Это самый быстрый способ не получить пустые переменные в разговоре, поэтому берите образец для того агента, с которым будете работать.
</Tip>

**Повторяющиеся номера.** Один человек может встретиться в файле несколько раз, и вы выбираете, что с этим делать:

* **Отклонять дубли** (по умолчанию) — остаётся первое вхождение, остальные попадают в отчёт как ошибки. Вариант «громкий»: обычно повторы означают, что выгрузка из вашей системы работает неправильно, и об этом лучше узнать.
* **Оставить первое вхождение** — повторы отбрасываются без ошибок.
* **Оставить последнее вхождение** — если исправленные строки дописываются в конец файла.

При любом варианте **номер попадает в кампанию не более одного раза**. Повторные наборы одного человека возможны только как перезвоны при недозвоне.

<Warning>
  **Почему файл может быть отклонён целиком:** колонка с номерами не найдена или не определяется однозначно; ни одной строки с пригодными данными; превышен лимит 50 000 строк или 10 МБ; неподдерживаемый формат (включая XLS) или повреждённый файл; для кампаний в США — нет ни `contact_zip`, ни `contact_state`. Точная причина указана в сообщении при загрузке.
</Warning>

<img src="https://mintcdn.com/hubtalk/cKl-cjuDGhk4sToG/images/v4_campaign_sample_file.png?fit=max&auto=format&n=cKl-cjuDGhk4sToG&q=85&s=45c7540877ee8d79ba389ac351d55db5" alt="Блок загрузки контактов: лимиты файла и кнопка скачивания образца под конкретного агента" width="1440" height="900" data-path="images/v4_campaign_sample_file.png" />

## Долить звонки в идущую кампанию

Обычная кампания закрывается сама, как только очередь опустела, и номера в неё после этого не принимаются. Если номера будут приходить партиями, кампанию создают **открытой к добавлению звонков**: опустевшая очередь её не завершает — завершают только дата окончания или отмена.

В такую кампанию контакты доливаются прямо из кабинета, уже на ходу:

* **партия принимается целиком или не принимается вовсе.** Половина файла не заедет: либо все строки прошли, либо отклонён весь файл с причинами;
* **у каждой партии своя аттестация.** Подпись под первым файлом не распространяется на следующий — право звонить подтверждается для каждой партии отдельно;
* **партия видна в карточке кампании отдельной строкой**, так что «сколько было изначально и что долили потом» не превращается в одну кучу.

<Note>
  **У открытой кампании дата окончания обязательна** и не может быть дальше 30 суток: кампания без очереди и без даты не завершилась бы никогда. Те же партии можно слать [через Web API](/ru/v4/web-api) — механизм один и тот же.
</Note>

## Хранение файлов

Загруженные файлы сохраняются: подпись аттестации указывает на конкретный документ, и файл всегда можно скачать в том виде, в каком кампания была запущена.

Полный срок хранения отсчитывается **с запуска кампании** и настраивается для организации. Файл кампании, которая так и не была запущена, хранится недолго — по умолчанию две недели. Хранение можно отключить полностью: тогда останутся только сведения о файле и его контрольная сумма, но вы потеряете возможность предъявить сам файл, под которым подтверждали право звонить. По истечении срока файл удаляется, и это фиксируется: сведения о нём и дата удаления сохраняются.

## Проверка по реестру «не звонить»

Загруженный файл сверяется с реестром «не звонить», и блок **Совпадения с реестром «не звонить»** показывает результат проверки целиком:

* **проверено читаемых строк** — сколько строк файла имели читаемый телефон и были сверены;
* **не проверено строк** — телефон не прочитан; эти строки не считаются чистыми и названы отдельно;
* **совпало строк · подавлено контактов** — два разных числа: один номер мог встретиться в файле несколько раз;
* таблица совпадений с колонками **строка**, **номер**, **имя**, **причина** и **в реестре с** — с полными цитатами, а не намёками. Если совпадений много, превью урезается, и тогда рядом появляется кнопка **Скачать точный список** (CSV или XLSX).

При нулевом результате блок не молчит, а сообщает, что совпадений нет и сколько строк проверено.

<img src="https://mintcdn.com/hubtalk/cKl-cjuDGhk4sToG/images/v4_campaign_dnc_screen.png?fit=max&auto=format&n=cKl-cjuDGhk4sToG&q=85&s=ae2c0e6984f32f6fbdafe6f3f33ec2fd" alt="Блок совпадений с реестром «не звонить» до запуска: две находки с цитатами и выбор решения" width="850" height="330" data-path="images/v4_campaign_dnc_screen.png" />

Перед запуском требуется решение: **блокировать запуск** (по умолчанию) или **пропустить совпавшие и запустить кампанию без них**. Решение пишется в аудит кампании — кто, когда, сколько контактов и по какому файлу; новая загрузка обнуляет прежнее решение. Если набираемых контактов не осталось, пропуск недоступен.

Сам файл не изменяется: строки остаются на месте, а платформа отказывает в наборе.

После запуска экран **заморожен** и помечен «На момент запуска» — основание, на котором кампания пошла в набор, не пересчитывается задним числом.

<img src="https://mintcdn.com/hubtalk/cKl-cjuDGhk4sToG/images/v4_campaign_dnc_frozen.png?fit=max&auto=format&n=cKl-cjuDGhk4sToG&q=85&s=89ec66a5d6df6f3485d359713b583c28" alt="Тот же блок после запуска: пометка «На момент запуска» и замороженный список совпадений" width="1135" height="264" data-path="images/v4_campaign_dnc_frozen.png" />

Сами этапы подавления — **на запуске** и **во время кампании** — считаются в блоке «Состояние планировщика» на карточке кампании, рядом со строкой «Исключено политикой».

<img src="https://mintcdn.com/hubtalk/cKl-cjuDGhk4sToG/images/v4_campaign_scheduler_state.png?fit=max&auto=format&n=cKl-cjuDGhk4sToG&q=85&s=6749dad0f49c09d750897dbe7d7526c3" alt="Состояние планировщика: контакты по состояниям, удержания и этапы подавления DNC" width="1135" height="263" data-path="images/v4_campaign_scheduler_state.png" />

Кабинет и [Web API](/ru/v4/web-api) выполняют эту проверку одним и тем же кодом, поэтому результат и его след одинаковы независимо от того, откуда запущена кампания. Роль Member видит экраны кампаний и проверки в режиме чтения.

## Контакты кампании

В таблице **«Контакты кампании»** находятся контакты, загруженные в кампанию. Доступен поиск по номеру телефона, а в таблице отображаются общее количество, телефон, имя, часовой пояс, состояние и число попыток.

<img src="https://mintcdn.com/hubtalk/cKl-cjuDGhk4sToG/images/v4_campaign_contacts_table.png?fit=max&auto=format&n=cKl-cjuDGhk4sToG&q=85&s=b498d688a097026c6fb4ed2b537f39cc" alt="Таблица «Контакты кампании»" width="1440" height="900" data-path="images/v4_campaign_contacts_table.png" />
