Оперативная связь с клиентом - залог успешной продажи, клиента нужно брать максимально быстро.

В этой статье я разберу свой путь, поиска лучшего чата для сайта и почему мне пришлось сделать свой, предоставлю проект - Вы сможете установить его на свой сайт и получить функциональный чат для сайта бесплатно.

Поиск лучшего

Мне нужен был онлайн чат для своего сайта, задача оперативно отвечать клиентам и забирать их на продажу. Без вот этого, сообщите все контакты, потом только напишите нам в чат и так далее.

Я изучил слабые и сильные места аналогов, и сделал свое бесплатное решение и потом всё разрослось.. Решение бесплатное и будет обновляться по мере предложений в общем чате. Нужна интеграция с CRM? Социальными сетями? Пишите, реализую в свободное время.

https://t.me/chateedze - проект и общение по сервису, предложения / улучшения.

Сильные и слабые стороны сервисов онлайн чатов

Начну с сильных сторон, которые лично мне пригодились для моего онлайн чата, я взял подписку (черно-зеленого сервиса) и стал анализировать продажи:

Сильные стороны

  • активные приглашения и кнопки быстрого начала чата - да, это действительно подталкивает клиента на диалог, задать вопрос и оформить заказ. система сама якобы от себя пишет клиенту с вопросом, уточнением, как бы подогревает его на контакт;

  • мобильное приложение - да, это удобно. В дороге получить пуш и ответить клиенту;

  • смотреть онлайн на каких страницах клиенты - возможность начать диалог;

  • шаблонные ответы - действительно полезно, например скинуть доступные контакты для связи, прайс или ответить на частые ответы;

  • видеть, что печатает клиент - чтобы подготовить оперативный ответ.

Звонки, видеозвонки, каналы: MAX, Telegram, VK, Viber, Email - для своих проектов. считаю лишним, хотя тут как говорится все зависит от ниши. И пока это не реализовывал.

Слабые стороны

  • невозможность кастомизации - доработки под свой проект (пользуйтесь тем что есть);

  • в бесплатной версии логотип сервиса чата - не солидно, нужно платить за тариф (не везде);

  • недоступность чата в России - например плагин Tawk.To Live Chat в тестах у меня не работал, видимо адреса блокируются, к тому же если взять российские онлайн сервисы, не факт что они не попадут под санкции (сегодня / завтра);

  • платный функционал = платный тариф - (хотя, как разработчик я не вижу трудности в реализации);

  • сталкивался с тем что в одном из сервисе, часто слетала авторизация и нужно входить повторно..

Начало

Я решил сделать онлайн чат Chateedze для сайта, который успешно будет работать на обычном хостинге. Своя админка, кастомные настройки и интересный функционал.

Системные требования

  • Любой домен (адрес сайта)

  • PHP 7.4+ (лучше 8.x)

  • MySQL 5.7+ или MariaDB 10.3+

  • Расширения: PDO, pdo_mysql, json

  • Права на запись в config/ и uploads/

Обычно на хостингах это по умолчанию всё есть.

Функционал онлайн чата

Продукт бесплатен, нужны будут дополнения пишите в наш чат по продукту - сделаем чат лучше. Ниже я постараюсь показать основные настройки со скриншотами.

Посмотреть весь функционал чата

Диалоги

Основная страница веб-панели, открывайте нужный диалог и общайтесь с клиентом

Удалить чат может только администратор.

Заметка уведомит в тг, если настроено уведомление в канал.

Рабочий чат

Вы можете общаться с сотрудниками в рабочем чате

Посетители онлайн

Вы можете посмотреть в реальном времени где находятся Ваши пользователи и начать диалог с ними, например полезно если пользователь находится на странице оформления заказа:

Профиль

Здесь оператора или администратор, настраивает свой профиль (график, браузерное уведомление, смена пароля)

Кнопки старта

Приготовьте стартовый кнопки (частые вопросы, на которые у Вас есть ответы), можете тестировать A / B тесты (в блоке "Отчёт" будет статистика) - разный текст, по разному может восприниматься аудиторий.

 Быстрый контакт

Вы можете сделать кастомные страницы на сайте, для вызова виджета (чата), клиент по клику напишет в чат заготовленное сообщение - это поможет понять чем он интересуется и оперативно подготовить ответ:

Пример реализации:

Приглашения

На мой взгляд самое полезный функционал, отправляйте сообщения клиенту, как бы вовлекая его в чат, проводите A / B тесты, оставляйте лучшие варианты взаимодействия. Я могу точно сказать, что шанс продажи с уведомлением - больше, хотя кого то это может и раздражать (например сам я такое не люблю).

Триггеры - когда показать приглашение:

  • По времени - клиент провёл на странице N секунд (например, 30).

  • По URL - только на указанных страницах (фрагмент пути или полный URL).

  • Exit-intent - курсор ушёл к закрытию вкладки (уход со страницы).

  • Повторный визит - человек уже был на сайте раньше.

  • Скролл % - прокрутил страницу до заданного процента.

  • Неактивность - долго не двигал мышью/не скроллил.

Код установки

Страница показывает как легко и просто установить виджет чата на Ваш сайт, делается это простым скриптом:

Вот пример установки виджета в Блог на Wordpress через виджеты:

Быстрые ответы

Шаблонные ответы по вашим командам, например: !contact /price !shop и так далее:

Пример кнопок при общении с клиентом:

Операторы

На этой странице администратор может добавить в систему новых администраторов и операторов. А так же настроить им уведомления в Telegram (личный канал по ID) и Ntfy (об этом подробнее ниже)

Уведомления

На этой странице вы можете настроить разные типы уведомлений о новом сообщении:

Браузерное уведомление

Telegram и Ntfy

Как подключить оповещения в закрытый канал Telegram

  1. Создайте бота через @BotFather и скопируйте токен.

  2. Создайте закрытый канал и добавьте бота администратором (по @username).

  3. Напишите любое сообщение в канал и перешлите его боту @idbot.

  4. Скопируйте ID чата (обычно начинается с -100) и вставьте выше.

Как подключить оповещения в закрытый канал Ntfy

  1. Установите приложение ntfy на телефон (Android / iOS).

  2. Придумайте длинный topic - это как пароль, например chat-x7k9m2-private.

  3. В приложении нажмите «Subscribe» и введите тот же topic.

  4. Вставьте topic выше, включите галочку и нажмите «Отправить тест».

  5. Можно использовать свой сервер ntfy вместо ntfy.sh.

Важный момент

По закону ⁠152-ФЗ «О персональных данных», любые персональные данные граждан России при их сборе должны обязательно записываться, накапливаться и храниться на серверах, которые физически находятся на территории РФ. Первичная база данных должна быть в России.

Если Вы используете topic (название комнаты) легкий, то другой так же может прослушивать и смотреть что там, учтите это. Максимальная длина названия комнаты 64 символа, буквы, цифры.

Использую Ntfy, так как он корректно работает с блокировками, его сервер не блокируют (хотя бы пока что).

Что считать первичной базой? Если админка в чате, то сервер должен быть в РФ, а дублирование в Telegram и Ntfy - второстепенное. Но вы можете бесплатно развернуть Ntfy у себя на сервере и использовать личный сервер который будет рассылать пуши.

Вообще связка Telegram и Ntfy удобна, я её использую для мониторинга клиентских прокси-серверов (VPS) и мониторинг их сайтов на наличие 500 ошибок.

Как выглядят уведомления в Telegram и Ntfy

Функции чата

В этом разделе можете настроить включить нужные настройки:

Поведение виджета и логика обработки диалогов - не внешний вид, а «как работает».

Каждый блок ниже - отдельная функция. Включайте только то, что нужно вашему бизнесу.

  • Форма перед чатом - имя и телефон до первого сообщения; галочка 152-ФЗ обязательна для юрлиц.

  • Обратный звонок - кнопка «Перезвоните мне»; номер попадает в диалог и уведомления.

  • Автоназначение - новый диалог сразу получает свободный оператор (round-robin по нагрузке).

  • Галочки прочтения - ✓ доставлено, ✓✓ прочитано (как в мессенджерах).

  • Просрочка ответа - если оператор молчит N секунд, клиенту уходит автоответ с Telegram или вашим текстом.

  • Сценарий по умолчанию - автозапуск воронки из раздела «Сценарии» при каждом новом обращении.

152-ФЗ и SLA

152-ФЗ - персональные данные

Федеральный закон № 152-ФЗ регулирует сбор и хранение персональных данных (ФИО, телефон, email, IP, переписка). В чате это включается блоком «Согласие» ниже.

  • Включить GDPR/152-ФЗ - перед отправкой формы или сообщения клиент ставит галочку согласия.

  • Текст согласия - что именно подтверждает пользователь (ссылка на политику обязательна).

  • Политика - публикуется на /privacy.php; можно вставить свой текст или пример.

  • Версия политики - при смене текста увеличьте версию: старые согласия не будут считаться актуальными.

  • Срок хранения - через N дней можно автоматически удалять данные неактивных посетителей (кнопка «Очистить просроченные»).

  • Журнал - фиксирует факт согласия, отзыва или удаления данных.

Без включения 152-ФЗ формы всё равно работают, но для коммерческих сайтов в РФ согласие рекомендуется.

SLA - контроль скорости первого ответа

SLA (Service Level Agreement) - норматив времени, за которое оператор должен впервые ответить клиенту после его сообщения.

  • Включить SLA - для каждого нового диалога ставится дедлайн (например, 120 секунд).

  • Таймер - в списке диалогов и в шапке чата оператор видит, сколько времени осталось.

  • Просрочка - диалог подсвечивается красным; уходит уведомление в Telegram/ntfy «SLA просрочен».

  • Эскалация - повторное оповещение администратору (один раз на диалог).

  • Отчёты - число просрочек видно в разделе «Отчёты».

Фоновая проверка SLA работает при heartbeat виджета на сайте. Если посетителей нет - добавьте cron-URL (ниже в форме) раз в минуту.

Соединение c сервером

Выберите нужный режим обновления чата:

Polling - опрос сервера каждые N секунд. Рекомендуется для shared-хостинга (задержка ~2-5 сек).

Long polling - запрос ждёт на сервере до нового сообщения. Быстрее (< 1 сек), но нагружает PHP - только для VPS.

IP за прокси - если сайт за Cloudflare или nginx, включите чтение X-Real-IP / X-Forwarded-For, чтобы в диалогах был реальный IP посетителя.

Настройки

Это главный настройки виджета онлайн-чата

  • Цвета и логотип - под фирменный стиль сайта; превью справа обновляется сразу.

  • Позиция - правый/левый нижний угол; на мобильном можно отдельно.

  • Офлайн и рабочие часы - ночью виджет остаётся, но показывает «оставьте сообщение» или автоответ.

  • Звук и анимация - уведомление посетителю о новом сообщении оператора.

  • Баннер акции - полоска над чатом: «Скидка 10% до пятницы», «Бесплатная доставка».

  • Origins - список доменов, где разрешён виджет.

GeoLite2 - база обновляется самостоятельно, каждые 3 часа при активности админки. Нужна для отображения страны клиента:

Мобильные скриншоты

Установка Chateedze

Посмотреть процесс установки чата для сайта

Опустим процесс создания / покупки домена, Вы может поставить чат на тот же доме. поддомен, что и основной сайт, или же зарегистрировать отдельный.

Скачать архив чата с тг или с Github

Разархивировать архив в нужную папку на сайте, я например создал папку chat и скинул разархивировал всё содержимое

Удаляем архив и переходим по URL (домен.ру/chat), перекинет на страницу установки:

Необходимо создать новую базу данных, в Имя БД ввести её название, пользователь (обычно тоже Имя БД), пароль от БД.

На примере Beget создание БД Mysql

Вводим данные

После этого Вас должно перекинуть на страницу авторизации

авторизуйтесь - должна открыться вот такая страница:

Всё, настраивайте и пробуйте.

Данный чат я использую в своих проектах, он может быть не сразу идеален, но закрывает потребности.

Чего не хватает, Вам как потребителю? Нужна интеграция с CRM?
Все пожелания, критику можете направить в тг чат проекта или написать здесь.

Буду рад, если кто-то будет пользоваться такой бесплатной альтернативой)