=== NotifyKit — заявки Contact Form 7 в чат MAX ===
Contributors: notifykit
Tags: contact form 7, max, messenger, forms, leads
Requires at least: 6.2
Tested up to: 6.9
Requires PHP: 7.4
Stable tag: 1.0.10
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: notifykit-for-max-cf7

Пересылает заявки из Contact Form 7 в групповой чат MAX через официальный Bot API. Бесплатно, без VPN, неофициальная интеграция.

== Description ==

**NotifyKit — уведомления о новых заявках с сайта сразу в чат MAX.**

NotifyKit — независимый (неофициальный) плагин, не связанный с командой мессенджера MAX (правообладатель — VK) и не связанный с проектом Contact Form 7. Плагин пересылает заявки из форм Contact Form 7 в чат мессенджера MAX через официальный MAX Bot API (`https://botapi.max.ru`). Команда видит каждую заявку в реальном времени, не перегружая почтовый ящик.

Если вы раньше использовали Telegram-боты для уведомлений о заявках, этот плагин закроет ту же задачу, но для MAX — российского мессенджера, доступного без VPN и ограничений.

**Кому подойдёт:**

* Клиники, салоны, сервисы — заявки сразу видит весь ресепшн в общем чате
* Интернет-магазины, сайты услуг — менеджеры реагируют быстрее, не ждут письма
* Агентства и фрилансеры — клиентские заявки в отдельном чате команды
* Любые сайты на WordPress + Contact Form 7, работающие с русскоязычной аудиторией

**Основные возможности:**

* Пересылка заявок из Contact Form 7 в групповой чат MAX
* Мгновенные push-уведомления членам команды в чате
* Настройка отдельного чата для каждой формы
* Гибкий шаблон сообщения с подстановкой полей формы
* Автоматический поиск и подстановка Chat ID — не надо искать вручную
* Пошаговый мастер настройки прямо в админке WordPress
* Журнал отправок с кодами ошибок
* Токен бота шифруется в базе (AES-256-GCM)

Плагин требует, чтобы был установлен и активен плагин [Contact Form 7](https://wordpress.org/plugins/contact-form-7/).

**Плагин полностью бесплатный.** Если он оказался полезен — вы можете [поддержать автора](https://notifykit.grast.tech/#support) и помочь развитию (поддержка WPForms, Gravity Forms, WooCommerce и других источников событий).

== Installation ==

1. Загрузите папку плагина в `/wp-content/plugins/notifykit-for-max-cf7/` или установите через раздел «Плагины» в админке WordPress.
2. Активируйте плагин.
3. Убедитесь, что Contact Form 7 установлен и активен (плагин его требует).
4. В меню админки откройте **MAX Messenger** → вкладка **Инструкция** — там пошаговое руководство: регистрация на business.max.ru, создание бота, групповой чат, добавление бота в чат и получение chat_id.
5. На вкладке **Настройки** вставьте токен бота и нажмите **Сохранить токен**.
6. Нажмите **Получить список чатов** — первый чат, в котором состоит бот, автоматически подставится как чат по умолчанию.
7. Нажмите **Отправить тестовое сообщение**, чтобы убедиться, что всё работает.
8. Откройте любую форму Contact Form 7 — в редакторе формы появится новая вкладка **MAX-мессенджер**, где можно задать отдельный Chat ID или свой шаблон сообщения для этой формы.

== Frequently Asked Questions ==

= Как получить токен бота MAX? =

Зарегистрируйтесь на [business.max.ru](https://business.max.ru/self), создайте бота, пройдите модерацию и скопируйте токен из раздела «Интеграция» в карточке бота. В плагине есть встроенная пошаговая инструкция (меню админки: **MAX Messenger → Инструкция**).

= Как найти chat_id? =

Добавьте бота в групповой чат, откройте настройки плагина и нажмите **Получить список чатов** — плагин получит все чаты, в которых состоит бот, и автоматически подставит первый из них как чат по умолчанию. Заранее писать в чат не нужно — MAX Bot API возвращает все чаты с участием бота.

= Как добавить несколько форм в разные чаты? =

У каждой формы Contact Form 7 появляется отдельная вкладка «MAX-мессенджер» в редакторе формы. Там можно указать свой Chat ID и свой шаблон сообщения — только для этой формы.

= Как выглядит сообщение в чате? =

Плагин берёт шаблон из настроек писем Contact Form 7 (вам не придётся настраивать заново) или использует свой шаблон. В сообщение попадают все заполненные пользователем поля формы, с подписями на русском.

= Безопасно ли хранить токен бота в базе? =

Токен шифруется алгоритмом AES-256-GCM с ключом, производным от констант `AUTH_KEY` и `SECURE_AUTH_KEY` из вашего `wp-config.php`. Плагину нужно расширение OpenSSL для PHP — без него плагин откажется сохранять токен, а не запишет его в открытом виде. Для дополнительной безопасности можно задать константу `CF7_MAX_TOKEN` в `wp-config.php` — плагин возьмёт её и не будет писать токен в базу.

= Что будет, если MAX API недоступен? =

Ошибка записывается в журнал отправок (меню админки: **MAX Messenger → Журнал**). Email-уведомления Contact Form 7 продолжают работать как обычно — они никак не зависят от MAX. Таймаут HTTP-запроса короткий (по умолчанию 8 секунд, настраивается фильтром `cf7_max_request_timeout`), поэтому медленный API не блокирует отправку формы.

= Работает ли плагин в режиме мультисайта? =

Да, активируйте по отдельности на каждом сайте. Сетевая активация тоже работает, но у каждого сайта будут свои токен и настройки.

== External services ==

Плагин подключается к **MAX Messenger Bot API** (`https://botapi.max.ru`), который предоставляет команда мессенджера MAX (группа компаний VK).

**Какие данные и когда отправляются:**

* Когда посетитель отправляет форму Contact Form 7 на вашем сайте, плагин делает один HTTPS-запрос на `https://botapi.max.ru/messages` с текстом сообщения (собирается по вашему шаблону из данных формы — имя, e-mail, телефон и любые другие поля, которые вы собираете) и целевым `chat_id`. IP-адрес и User-Agent посетителя отправляются только если в шаблоне используются плейсхолдеры `[_remote_ip]` или `[_user_agent]`.
* Когда администратор нажимает **Проверить бота** в настройках, делается запрос к `https://botapi.max.ru/me` (возвращает имя/юзернейм бота, данных посетителей нет).
* Когда администратор нажимает **Получить список чатов** в настройках, делается запрос к `https://botapi.max.ru/chats` (возвращает список чатов с участием бота, данных посетителей нет).
* Когда администратор нажимает **Отправить тестовое сообщение** в настройках, в выбранный чат уходит статичное тестовое сообщение (название сайта + фиксированный текст). Данных посетителей нет.

Токен бота, который вы указываете, отправляется в заголовке `Authorization` каждого запроса. Он хранится зашифрованным в базе данных (или как константа в `wp-config.php`, если вы так настроите).

**Документация сервиса, условия использования и политика конфиденциальности:**

* Документация API: https://dev.max.ru/docs-api
* Условия использования MAX Messenger: https://max.ru/legal/terms
* Политика конфиденциальности MAX Messenger: https://max.ru/legal/privacy

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

== Privacy ==

Плагин не сохраняет и не передаёт никаких данных автору плагина. Все данные формы уходят напрямую с вашего сайта WordPress к MAX Bot API под вашим собственным токеном бота.

Что плагин хранит у себя:

* Зашифрованный токен бота в опции `cf7_max_settings`.
* Журнал отправок в собственной таблице `{prefix}cf7_max_log` (каждая запись: время, уровень, событие, ID формы, chat_id, HTTP-код, короткое сообщение). Сами данные из формы в журнал не записываются — только метаданные доставки. Размер журнала ограничен (по умолчанию 100 записей), старые записи удаляются автоматически.

При удалении плагина (не деактивации, а полном удалении) плагин убирает свои опции, таблицу журнала и метаданные форм. Никаких данных не остаётся.

== Screenshots ==

1. Заявка с сайта в групповом чате MAX — оформленное сообщение со всеми полями формы Contact Form 7 (имя, телефон, e-mail и т. д.).
2. Страница настроек плагина в админке WordPress — поле для токена, выбор чата по умолчанию и переключатель отправки для вкладки «MAX-мессенджер».

== Changelog ==

= 1.0.10 =
* Plugin name, short description and tags adapted for the primary Russian-speaking audience.

= 1.0.9 =
* External services and Privacy sections translated to Russian; added a "free plugin · support the author" note in the description.

= 1.0.8 =
* Russian captions for the listing screenshots; minor FAQ cleanup.

= 1.0.7 =
* Refined the changelog wording.

= 1.0.6 =
* Cleaned up the plugin listing — Description, Installation and FAQ are now in Russian (with a short English non-affiliation disclaimer); duplicate English copies removed.

= 1.0.5 =
* Added screenshots to the plugin listing.

= 1.0.4 =
* Full Russian translation bundled.

= 1.0.3 =
* Updated project website URL.

= 1.0.2 =
* Updated plugin name and metadata.

= 1.0.1 =
* Link previews in MAX messages are disabled by default so the submission page URL is not previewed in the chat (can be re-enabled in advanced settings).
* Field labels in `[all-fields]` are now inherited from the CF7 mail template — messages to MAX show readable labels (Имя, Телефон, etc.) instead of raw field names.

= 1.0.0 =
* Initial release.
* Sends Contact Form 7 submissions to a MAX Messenger chat via the official Bot API.
* Per-form chat ID and message template, plus a global default chat.
* Step-by-step guided settings page.
* Submission log.
* Bot token encrypted at rest.

== Upgrade Notice ==

= 1.0.10 =
Russian-first plugin name and short description for better discoverability in the WordPress.org directory.

= 1.0.9 =
External services and Privacy sections are now in Russian.

= 1.0.8 =
Screenshot captions are now in Russian.

= 1.0.7 =
Cosmetic changelog wording fix.

= 1.0.6 =
Plugin listing reorganised: Description, Installation and FAQ are now Russian-first.

= 1.0.5 =
Adds screenshots to the plugin listing.

= 1.0.4 =
Full Russian translation bundled.

= 1.0.2 =
Plugin name and metadata updated.

= 1.0.1 =
Link previews are now disabled by default; field labels in messages now match the CF7 mail template.

= 1.0.0 =
Initial release.
