Главная · Справка · Бот сообщества ВКонтакте молчит: чеклист
Бот сообщества ВКонтакте молчит: чеклист
У бота ВКонтакте две стороны, которые ломаются независимо: настройки сообщества (события не доходят до ЧБТ) и сценарий с тарифом (события доходят, ответа нет). Первый шаг — понять, на какой стороне обрыв, затем пройти чеклист этой стороны. Всё вместе — две минуты.
Шаг 0. Где обрыв: тест за 30 секунд
- С личной страницы (не от имени сообщества) откройте сообщения сообщества и отправьте любой текст, например «тест».
- В кабинете ЧБТ откройте раздел «Диалоги».
- Сообщение появилось, ответа нет → события доходят, подключение работает. Смотрите чеклист «Сторона ЧБТ» ниже.
- Сообщения нет → ВКонтакте не отправляет события или ЧБТ их отбрасывает. Смотрите чеклист «Сторона ВКонтакте».
Дополнительно нажмите «Проверить сценарий» в редакторе: тест-чат работает без ВКонтакте. Если там бот отвечает, а в сообществе нет, — сценарий исправен, дело в подключении.
Сторона ВКонтакте: события не доходят
Все пункты — в «Управлении» сообщества, нужны права администратора.
- «Сообщения» → «Сообщения сообщества: Включены». Выключены — у людей нет кнопки «Написать», Callback API не отправляет ничего.
- «Работа с API» → «Callback API» → адрес сервера. Должен быть
https://app.chbt.io/webhook/vk/ID_канала— адрес показывается в «Каналах» после подключения. Если канал в ЧБТ удаляли и создавали заново, ID сменился, и старый адрес ведёт в пустоту: скопируйте новый и подтвердите сервер ещё раз. - Статус сервера — «подтверждён». Не подтверждается — «Строка, которую должен вернуть сервер» из VK не совпадает с полем «VK: строка подтверждения» в ЧБТ. Сравните посимвольно, лишний пробел ломает проверку. Поле в ЧБТ правится только пересозданием канала — после него обновите адрес (п. 2).
- Вкладка «Типы событий». Отмечено «Входящее сообщение» (
message_new) — без него бот не узнаёт о сообщениях. Для кнопок-веток отмечено событие нажатия callback-кнопки (message_event) — иначе кнопка «крутится» и ничего не происходит. - «Секретный ключ». Строка в VK и поле «VK: секретный ключ» в ЧБТ совпадают. При несовпадении ЧБТ отвечает VK «ok» и молча отбрасывает запрос — со стороны ВКонтакте всё выглядит доставленным. Либо одинаковый секрет в обоих местах, либо пустой в обоих.
- «Версия API». Выберите самую новую версию из списка — ответы ЧБТ отправляет по версии 5.199. На версиях ниже 5.103 входящее сообщение приходит в старом формате, без поля
messageвнутри события, и ЧБТ его пропускает — тишина без ошибок.
Сторона ЧБТ: событие пришло, ответа нет
- Права ключа доступа. Ключ создан в «Работа с API» → «Ключи доступа» с отмеченным «Сообщения сообщества». Без этого права событие доходит, а отправка ответа отклоняется: в «Диалогах» у ответа бота пометка «не доставлено». Поле токена в канале ЧБТ не редактируется, поэтому: создайте новый ключ с этим правом, подключите VK-канал в ЧБТ заново и впишите новый адрес в Callback API (п. 2). Старый канал удаляйте с оглядкой: вместе с ним из «Диалогов» пропадёт его переписка, контакты и теги останутся.
- Сценарий включён и есть вход для VK. «Сценарии» → на карточке сценария плашка «Включён», а не «Черновик»; включается он переключателем на карточке. Во ВКонтакте клиенты не набирают
/start: триггер «Команда (/start)» срабатывает на кнопку «Начать», а она появляется, когда в «Настройках для бота» включены «Возможности ботов» и отмечено «Добавить кнопку «Начать»». Текст «здравствуйте, сколько стоит» ловят только «Ключевые слова» или «Любое сообщение» — без них бот отвечает на кнопку и молчит на слова. - Лимит Бесплатного тарифа. 30 диалогов в месяц на бота по всем каналам вместе. Признак — новым собеседникам бот отвечает одной фразой «Лимит диалогов на бесплатном тарифе исчерпан» вместо сценария; с теми, кто уже писал в этом месяце, разговор продолжается. Тариф — в подзаголовке «Обзора», снимается в «Оплате»: Базовый — 650 ₽/мес.
- Диалог у оператора. Если в сценарии сработал блок «Оператор», бот в этом диалоге молчит намеренно, пока в «Диалогах» не нажать «Вернуть боту». Так бывает и с собственным тестовым диалогом владельца: после проверки блока «Оператор» диалог остаётся у оператора.
Ещё один случай вне чеклиста — пользователь запретил сообщения от сообщества. Бот ответить не может: в «Диалогах» у ответа бота появится пометка «не доставлено», а при наведении на неё — текст ошибки от ВКонтакте. Проверяйте с другой страницы.
Симптом → куда смотреть
| Симптом | Вероятная причина | Пункт |
|---|---|---|
| Сервер в Callback API не подтверждается | Строка подтверждения не совпадает или адрес с чужим ID | 2, 3 |
| В «Диалогах» пусто, сервер подтверждён | Не отмечено «Входящее сообщение», секрет не совпал или старая версия API | 4, 5, 6 |
| Сообщение в «Диалогах» есть, ответа нет | Ключ без права на сообщения, сценарий выключен, лимит | 7, 8, 9 |
| Отвечает на «Начать», молчит на текст | Нет триггера «Любое сообщение» / «Ключевые слова» | 8 |
| Кнопка «крутится», ответа нет | Не отмечено событие callback-кнопки или сценарий выключен | 4, 8 |
| Новые собеседники получают одну фразу про лимит | Исчерпаны 30 диалогов Free | 9 |
| Молчит только у одного человека | Диалог у оператора или запрет сообщений от сообщества | 10 |
С какого аккаунта тестировать
Пишите сообществу с личной страницы — своей или коллеги. Ответы администратора из интерфейса ВКонтакте событий боту не создают, и сценарий их не видит. Для чистого теста нужна страница, которая сообществу ещё не писала: так проверяются и кнопка «Начать», и первое сообщение.
Как настраивалось подключение по шагам — в инструкции по подключению ВКонтакте; полный путь от ключа доступа до первого сценария с объяснением каждой настройки — в статье бот ВКонтакте для сообщества. Что бот умеет в этом канале — на странице чат-бота ВКонтакте. Аналогичные чеклисты: Telegram и MAX. Если сообщество ещё без бота — подключите его бесплатно: ВКонтакте входит в Бесплатный тариф.
Частые вопросы
Поменял ключ доступа — что обновить в ЧБТ?
Поле токена в канале не редактируется: подключите VK-канал в «Каналах» заново с новым ключом. У нового канала другой ID, поэтому в Callback API замените адрес сервера и подтвердите его ещё раз. Старый канал можно удалить, но вместе с ним из «Диалогов» пропадёт его переписка; контакты и теги останутся.
Бот отвечает на кнопку «Начать», но не на текст. Это поломка?
Нет. Кнопка «Начать» запускает триггер «Команда (/start)», а для обычного текста нужен триггер «Любое сообщение» или «Ключевые слова». Добавьте его в сценарий — во ВКонтакте люди пишут словами, а не командами.
В ВКонтакте написано «доставлено», а в ЧБТ ничего нет. Почему?
Так выглядит несовпадение секретного ключа: ЧБТ отвечает VK «ok» и отбрасывает запрос. Впишите одинаковый секрет в Callback API и в поле «VK: секретный ключ» — или оставьте пустым в обоих местах.