feat(jivo-bot): статья «Откуда берутся заявки и законно ли это» (формулировка владельца)

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

+ otkuda-zayavki.md: источник данных (операторы связи), согласие абонента как
основание, 152-ФЗ, никаких «слитых» баз; практика для клиента (звонить можно
и нужно быстро, вежливо завершать при отказе); честная оговорка «заявка —
интерес, не гарантия продажи»; юрвопросы → живой специалист.

Границы держатся (проверено живьём): «какой конкретно оператор — Билайн? МТС?» →
эскалация; «эти номера только мне достаются?» → эскалация (эксклюзивность —
жёсткая стоп-тема). Поставщик и модель распределения не раскрываются.

TDD: тест на РЕАЛЬНОЙ базе знаний (3 формулировки вопроса → статья про операторов).
42/42 зелёные.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Дмитрий
2026-07-12 11:18:11 +03:00
parent 340375a47f
commit d6526bdadf
2 changed files with 49 additions and 0 deletions
+35
View File
@@ -0,0 +1,35 @@
---
title: Откуда берутся заявки и законно ли это
topics: откуда заявки, откуда номера, где вы берёте номера, откуда данные, законно ли, 152-фз, персональные данные, согласие абонента, операторы связи, база номеров, спам, легально, откуда телефон клиента, как вы находите клиентов
---
Заявки формируются на основе данных, которые нам передают операторы связи. Мы получаем
контакты только тех абонентов, которые дали оператору согласие на передачу своих данных
третьим лицам и на получение рекламных предложений. Абонент без такого согласия
к нам не попадает — никогда.
Проще говоря: человек сам заранее разрешил, чтобы ему звонили с предложениями по темам,
которые ему интересны. Мы видим, что он интересуется услугой в вашей нише — по тому
источнику, который вы указали в проекте (сайт, телефон или СМС-отправитель), — и передаём
вам его контакт.
Законность: обработка персональных данных ведётся в соответствии с Федеральным законом
№ 152-ФЗ «О персональных данных». Основание передачи — согласие самого абонента, которое
он дал своему оператору связи. Никаких «слитых» или купленных на стороне баз мы
не используем.
Что это значит для вас на практике:
- Человеку можно звонить: он согласие давал и рекламные предложения ждёт.
- Звоните быстро — интерес живой, и чем раньше вы наберёте, тем выше шанс на сделку.
- Представляйтесь и говорите по существу предложения. Если человек скажет, что ему
неинтересно или просит больше не звонить — просто вежливо завершите разговор
и отметьте заявку статусом «Не реализовано».
- Свои обязательства перед клиентом (как вы храните его контакт и что предлагаете)
вы выполняете сами — как и при любом другом источнике клиентов.
Заявка — это интерес человека, а не гарантированная продажа: результат зависит и от
скорости звонка, и от вашего разговора. Отслеживать это помогают воронка и конверсия
в дашборде.
Если у вас юридические вопросы по обработке данных или нужен договор — напишите
в поддержку, ответит живой специалист.
@@ -60,6 +60,20 @@ it('на РЕАЛЬНОЙ базе знаний «зачем нужна Лиде
->and(mb_strtolower($hits[0]->title))->toContain('сервис');
});
it('«где вы берёте эти номера» → статья о происхождении данных и согласии абонента', function () {
// Живой урок 12.07.2026 (формулировка владельца): номера передают операторы связи,
// и только по тем абонентам, кто дал согласие на передачу данных третьим лицам
// и на рекламные предложения. Раньше бот эскалировал этот частый вопрос.
KnowledgeChunk::query()->delete();
$this->artisan('help:rebuild-knowledge')->assertExitCode(0);
foreach (['а где вы берёте эти номера?', 'откуда у вас данные людей', 'это законно вообще?'] as $q) {
$hits = app(KnowledgeSearch::class)->search($q, 3);
expect($hits)->not->toBeEmpty()
->and(collect($hits)->pluck('content')->implode(' '))->toContain('оператор');
}
});
it('на вопрос не по теме возвращает пусто', function () {
expect(app(KnowledgeSearch::class)->search('какая погода в москве', 3))->toBeEmpty();
});