> ## 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.

# 25. «Не звонить»

> Реестр отказов от звонков, проверка файла перед запуском и как это влияет на набор.

# Комплаенс обзвона: «Не звонить»

<Info>
  **Цель модуля:** знать, где живёт отказ клиента от звонков, как доказать, что список проверен, и как это влияет на набор.
</Info>

<Frame caption="/dnc — реестр номеров, которым звонить нельзя: поиск, период, источник записи и история по конкретному номеру.">
  <img src="https://mintcdn.com/hubtalk/cKl-cjuDGhk4sToG/images/tutorial/tut-51-dnc.webp?fit=max&auto=format&n=cKl-cjuDGhk4sToG&q=85&s=60acc0a7e75dccbab7d5cc5f9d07304b" alt="Раздел «Не звонить»: реестр, история номера, настройки захвата" width="1280" height="566" data-path="images/tutorial/tut-51-dnc.webp" />
</Frame>

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

<Info>
  **Формат записи не важен:** `+7 701 555 01 02` и `77015550102` — один и тот же человек. **Записи не удаляются:** снятие номера — это отдельная запись, и вся история по номеру сохраняется, поэтому всегда видно, когда номер попал в реестр, по какой причине и когда был снят.
</Info>

Реестр читается заново на каждом тике набора. Отсюда два следствия, о которых чаще всего спрашивают:

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

Никакое правило повторов и никакой пресет стратегии обойти этот запрет не могут.

## Проверка файла: что видно до запуска

Загруженный файл проверяется по реестру, и экран проверки отвечает на вопрос «что именно было проверено» — а не только «сколько совпало».

| Строка экрана                                    | Что означает                                                                                                                |
| ------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------- |
| **Проверено читаемых строк: N**                  | Столько строк файла имели читаемый телефон и были сверены с реестром.                                                       |
| **Не проверено строк: M — телефон не прочитан**  | Эти строки сверить было нельзя. **Это не «чисто»** — платформа честно называет их отдельно, а не приписывает к проверенным. |
| **Совпало строк: X · подавлено контактов: Y**    | Строк файла и уникальных контактов — это разные числа: один номер мог встретиться в файле несколько раз.                    |
| **Совпадений нет · проверено читаемых строк: N** | Экран не молчит и при нулевом результате: отсутствие совпадений — тоже результат проверки.                                  |

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

<Frame caption="Экран проверки до запуска: две находки с цитатами причин и датой попадания в реестр, под таблицей — выбор решения.">
  <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" />
</Frame>

<Warning>
  **Выгрузка идёт на языке вашего кабинета.** Шапка, названия листов, сводка и значения ячеек — источник записи, действие, исход — переводятся вместе с интерфейсом. Переключателя языка у выгрузки нет: язык берётся из кабинета. Если вы разбираете этот файл скриптом, проверьте его на выгрузке того языка, на котором работаете.
</Warning>

<Info>
  **Файл не изменяется.** Строки остаются на месте, а платформа отказывает при наборе. Поэтому «убрать совпавшие» — это правка вашего файла, а не действие платформы.
</Info>

## Решение и его след

Перед запуском экран требует решения:

* **Блокировать запуск — уберу совпавшие из файла** (по умолчанию);
* **Пропустить их и запустить кампанию без них.**

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

<Warning>
  **После запуска экран заморожен.** Он получает пометку **«На момент запуска»** и не пересчитывается: то, на основании чего кампания пошла в набор, не меняется задним числом. Подавление показывается двумя этапами — **на запуске** и **во время кампании**, — чтобы новые записи реестра не смешивались с исходной проверкой.
</Warning>

<Info>
  **Кабинет и Web API проверяют одинаково.** Оба пути пересчитывают проверку одним и тем же кодом, а переход в набор фиксирует состав экрана, все совпадения, отметку импорта и аттестацию одной транзакцией. Внешнему интегратору можно обещать тот же уровень соответствия правилам, что и в кабинете. Роль **Member** видит экраны кампаний и проверки в режиме чтения.
</Info>

## Что важно для профиля kz

<Info>
  Автоматический захват из разговора включается только под американским профилем рынка (`us_tcpa`): вкладка **Захват** с триггер-фразами организации и классификацией моделью в организации профиля `kz` просто отсутствует. В нашем профиле реестр ведётся вручную — значит нужен простой процесс: наблюдатель «клиент просит не звонить» ([модуль 19](/ru/v4/tutorial/observers)) ставит пометку, ответственный раз в день переносит такие номера в реестр.

  Раздел **Правила обзвона** и справочник ZIP — тоже часть американского пакета. Временны́е ограничения в KZ-кампаниях задают **окно обзвона организации** (по умолчанию 08:00–21:00, меняет только администратор платформы) и рабочие часы кампании, которые могут это окно лишь сузить — см. [модуль 23](/ru/v4/tutorial/campaign).
</Info>

<Frame caption="/rules — как выглядит этот раздел без американского пакета: платформа честно перечисляет, чего не хватает (профиль организации, версия правил, справочник ZIP). Для казахстанских кампаний ставить пакет не нужно.">
  <img src="https://mintcdn.com/hubtalk/cKl-cjuDGhk4sToG/images/tutorial/tut-52-calling-rules.webp?fit=max&auto=format&n=cKl-cjuDGhk4sToG&q=85&s=e0ee707b88a335650d5bb62cce4abc44" alt="Экран «Правила обзвона» с сообщением о неустановленном американском пакете" width="1180" height="162" data-path="images/tutorial/tut-52-calling-rules.webp" />
</Frame>
