Интеграции и каналы: техническая часть
Техническое подключение WhatsApp, Messenger, Instagram, Telegram, SMS и почты: адреса обратных вызовов, проверка подписей, правила платформ, доставка интеграций и состояние отдельных провайдеров.
Каналы приносят сообщения из других сервисов в ту же панель операторов, что и чат сайта; интеграции отправляют события другим сервисам или получают от них знания. Здесь описана техническая часть. Работа с ними в аккаунте описана в Руководстве.
Состояние: каналы и большинство интеграций проверены с имитацией ответов провайдеров, но ещё не с каждым настоящим аккаунтом. Подписанный вебхук готов (с указанным там ограничением); для остальных провайдеров после включения проверьте журнал интеграции. Считайте их бета-версией.
Общие правила
- Адреса обратных вызовов имеют вид
https://reactive.chat/kanal/<kanal>/<SITE_KEY>. Ключ сайта находится в аккаунте в Проект → Установка. - Каждый входящий маршрут проверяет подпись провайдера. Без секрета провайдера ничего не принимается.
- Учётные данные хранятся зашифрованными и отдельно от остальной конфигурации.
- Ответы команды отправляются провайдеру через исходящую очередь; зависшая платформа не задерживает чат.
- Длина сообщений: входящие сообщения длиннее лимита тарифа сокращаются и помечаются
[...](Ограничения). - Вложения из каналов (почта, фотографии Telegram) проходят ту же проверку, что в виджете (тип, размер, квота). Отклонённые файлы появляются в тексте как «[Вложение не принято: …]» на языке проекта по умолчанию (de, en, pl, иначе английский).
WhatsApp, Messenger, Instagram
Настраиваются в аккаунте в Интеграциях. Нужно собственное приложение в Meta Developer Dashboard; сообщения не проходят через наш аккаунт.
- Callback URL:
https://reactive.chat/kanal/whatsapp/SITE_KEY,…/kanal/messenger/SITE_KEYили…/kanal/instagram/SITE_KEY - Verify Token: длинная случайная строка, которую вы вводите одинаково в Meta и у нас (сравнение с постоянным временем).
- App Secret: используется для проверки подписи каждого обратного вызова. Без App Secret входящий маршрут ничего не принимает.
- Access Token: используется для отправки от вашего имени.
Правила платформ, из-за которых доставка может молча не состояться:
- WhatsApp: в течение 24 часов после последнего сообщения клиента можно отвечать свободно, затем только одобренным шаблоном (тип UTILITY, ровно одно место для подстановки
{{1}}). Укажите его имя в конфигурации; вне этого окна свободные сообщения не отправляются. - Instagram: клиент должен написать первым.
- Messenger: из тегов сообщений остаётся только
HUMAN_AGENT; остальные отклоняются.
Meta ожидает ответ на обратный вызов за пять секунд; наш входящий маршрут только принимает и ставит в очередь.
Telegram, SMS, электронная почта
Эти каналы относятся к проекту и настраиваются в Проект → Каналы.
- Telegram: собственный бот. При сохранении токена бота мы сами регистрируем адрес
https://reactive.chat/kanal/telegram/SITE_KEYчерезsetWebhook, со случайнымsecret_token, который должен быть в каждом обратном вызове. По умолчанию ассистент тоже отвечает. - SMS: через ваш аккаунт Twilio (интеграция Twilio). Для номера в поле «A message comes in» укажите
https://reactive.chat/kanal/sms/SITE_KEYкак адрес; проверяетсяX-Twilio-Signature. По умолчанию ассистент тоже отвечает. - Электронная почта: ящик проверяется через IMAP каждую минуту, ответы идут через ваш SMTP (иначе через наш сервис отправки с
Reply-To). При включении старые письма не забираются. Привязка к разговору черезIn-Reply-To/References, иначе по отправителю и теме за последние 30 дней. Не принимаются: автоответы об отсутствии, отчёты доставки, списки рассылки, письма со спам-меткой, свыше 20 писем от отправителя в час (300 на проект). По умолчанию ассистент не отвечает на почту; если включён, его ответы содержатAuto-Submitted: auto-replied.
Известный пробел: если доставка провайдеру окончательно не удалась (заблокированный номер, закрытое окно), причина есть в журнале интеграции, но пока не в разговоре.
Интеграции
Интеграции включаются в аккаунте в Интеграциях. У каждой свои учётные данные (ключ, токен, адрес или вход у провайдера). События (conversation.created, message.created, handoff.requested, csat.submitted, fehlerfall.erstellt) идут через очередь с повторами:
- до пяти повторов с растущими интервалами (от 1 с до чуть более 10 минут);
- предохранитель для каждого провайдера и рабочего пространства: после 5 ошибок за 60 секунд — пауза 30 секунд;
- события старше часа больше не доставляются;
- чат никогда не ждёт интеграцию.
Провайдеры в коде:
- События в собственные системы: вебхуки (подписанные, см. Вебхуки), Zapier, Make, n8n (через REST hooks)
- Чат команды: Slack, Microsoft Teams, Discord
- Заявки и CRM: Zendesk, Freshdesk, HubSpot, Pipedrive, Jira, Linear, GitHub
- Магазины: Shopify, WooCommerce, Shopware, Stripe
- Знания: обход сайта, WordPress, Notion, Confluence, Google Drive
- Аналитика и ошибки: Google Analytics 4, Matomo, Plausible, Sentry
- Встречи: Cal.com
- Каналы: WhatsApp, Messenger, Instagram, Telegram, Twilio, электронная почта
Регистрировать своих провайдеров нельзя. Для собственных подключений используйте вебхуки, серверный API или MCP.
Функции магазина в чате (например, «Добавить в корзину» для WooCommerce, Shopify и Shopware) включаются reactive.chat для отдельных проектов; они работают только на зарегистрированном хосте магазина и не имеют собственного JavaScript API.
Мобильные приложения
Для приложений нет нативного SDK, но есть страница встраивания для WebView: Мобильные приложения.
Далее: Мобильные приложения
Обновлено: