Номер Coexistence как канал WhatsApp Cloud в Chatwoot
Для канала WhatsApp Cloud Chatwoot запрашивает три значения: id аккаунта WhatsApp Business (WABA id), phone number id и токен доступа. Номер Coexistence предоставляет все три. Создайте канал с этими данными, затем укажите в качестве адреса вебхука номера URL вебхука Chatwoot с тем же токеном верификации, и команда сможет отвечать и из Chatwoot, и с телефона.
WABA id, phone number id и токен доступа: именно это запрашивает ручная настройка WhatsApp Cloud в Chatwoot.
Chatwoot обрабатывает это событие Coexistence, поэтому ответы, отправленные из приложения WhatsApp Business, появляются в диалоге.
Meta позволяет бизнес-номеру иметь собственный callback URL вебхука, который заменяет адрес по умолчанию у приложения.
Как подключить номер Coexistence к Chatwoot?
В двух местах, в таком порядке.
В Chatwoot добавьте канал (inbox), выберите WhatsApp, затем провайдера WhatsApp Cloud с ручной настройкой. Введите номер, phone number id, id аккаунта WhatsApp Business (WABA id) и токен доступа. Все эти данные показывает панель управления EasyCoexistence для подключения, а ассистенту их возвращает get_api_credentials. После этого Chatwoot покажет URL вебхука и токен верификации вебхука для канала.
В EasyCoexistence укажите этот URL как адрес вебхука номера и введите тот же токен верификации. Meta отправит запрос верификации в Chatwoot, Chatwoot ответит на него, и с этого момента каждое сообщение на номер приходит в канал. Между ними ничего не работает, так что поддерживать сценарий не нужно.
Видны ли в Chatwoot ответы, отправленные с телефона?
Да. На номере Coexistence ответ, набранный в приложении WhatsApp Business, передаётся Meta как событие smb_message_echoes. Задача вебхука в Chatwoot распознаёт это поле и записывает сообщение как исходящее в нужном диалоге. Исходный код прямо описывает этот случай: бизнес отвечает и из Chatwoot, и из приложения, а сообщения синхронизируются в Chatwoot.
Благодаря этому разделение работает на практике. Владелец может по-прежнему отвечать постоянным клиентам с телефона, команда ведёт общий ящик за компьютером, и каждый видит, что отправил другой, без пересылки скриншотов.
Сообщения из Chatwoot уходят через Cloud API с того же номера, поэтому на телефоне они тоже видны.
Почему в канале Chatwoot не должно быть секрета приложения?
Потому что доставки подписаны секретом, которого у вас нет. Meta подписывает каждый вебхук секретом того приложения, которому принадлежит подписка. Это приложение EasyCoexistence, и его секрет никому не передаётся.
В текущем исходном коде Chatwoot заголовок X-Hub-Signature-256 в канале WhatsApp Cloud с ручной настройкой проверяется только тогда, когда в нём сохранён секрет приложения или когда канал создан через встроенную регистрацию (embedded signup) самого Chatwoot. Ручной канал без секрета приложения принимает доставки, а канал с любым заполненным секретом отклоняет каждую как неавторизованную.
Защитой здесь служит токен верификации. Выберите длинное случайное значение: именно по нему Chatwoot отличает запрос верификации от Meta от чужих запросов.
Чего Chatwoot не может на этом номере?
Принимать вебхуки одновременно в другом месте. Meta направляет вебхуки номера в один адрес, поэтому пока он занят Chatwoot, сценарий n8n не получит те же события. Если нужны оба, направьте адрес на собственный небольшой ретранслятор, который пересылает каждую доставку и в Chatwoot, и в сценарий.
Ограничения Coexistence действуют так же, как везде: API отправляет до 20 сообщений в секунду, свободный текст уходит только в течение 24 часов после последнего сообщения клиента, а всё остальное после этого покрывают шаблоны.
Приложение WhatsApp Business по-прежнему нужно открывать хотя бы раз в 14 дней, и EasyCoexistence следит за этим.
Распространённые ошибки
- Заполнить секрет приложения в канале Chatwoot. Доставки подписаны секретом приложения EasyCoexistence, поэтому Chatwoot отклонит каждую как неавторизованную.
- Использовать в EasyCoexistence токен верификации, отличающийся от показанного в Chatwoot. Верификация Meta не пройдёт, и канал не получит ни одного сообщения.
- Выбрать встроенную регистрацию Chatwoot вместо ручной настройки. Она подключает номер через собственное приложение Meta у Chatwoot, то есть создаёт отдельное подключение.
Подключите номер на easycoexistence.com, скопируйте его данные в канал WhatsApp Cloud в Chatwoot и укажите Chatwoot как адрес вебхука. От US$ 9 за номер в месяц, до US$ 1 по мере добавления номеров, первые 3 дня бесплатно.
Часто задаваемые вопросы
Работает ли это в Chatwoot на собственном сервере?
Да. URL вебхука использует ваш собственный домен Chatwoot вместо app.chatwoot.com, остальная настройка такая же.
Нужно ли мне собственное приложение Meta для Chatwoot?
Нет. Номер подключается через EasyCoexistence, который предоставляет данные доступа и маршрутизирует вебхуки. Руководство Chatwoot описывает создание приложения Meta лишь потому, что исходит из того, что у вас его нет.
Можно ли подключить к Chatwoot несколько номеров?
Да. Создайте по одному каналу WhatsApp Cloud на каждый номер и укажите для каждого номера в качестве адреса вебхука URL и токен верификации его собственного канала.
Видит ли EasyCoexistence переписку?
Нет. Meta доставляет вебхуки прямо в Chatwoot, а EasyCoexistence никогда не хранит содержимое переписки.
Читайте дальше
Готовы начать?
Настройте WhatsApp Coexistence за несколько минут, а не месяцев. Приложение продолжит работать на телефоне.
Начать бесплатный пробный периодПроверено по состоянию на