Событие «Добавился в беседу или покинул ее»

Полный пример настройки бота для вашего сообщества

Важно! ВКонтакте отвечает, что событие в беседах сообществ отключено и включать не планируют. Приглашайте пользователя вручную. Оставили только события chat_invite_user и chat_kick_user, которые реагируют на добавление пользователя руками админа, и удаление и

ВНИМАНИЕ! Есть особенности бесед сообществ — тех, где создатель-владелец — само сообщество.
Сообщество-владелец НЕ ПОЛУЧАЕТ уведомлений Callback API о самостоятельном вступлении и выходе. Поэтому сообщество-владелец НЕ может приветствовать вступивших в беседу и прощаться с вышедшими. Для таких сообществ событие НЕ СРАБОТАЕТ!
В качестве welcome-бота добавьте в беседу другое сообщество (например, персонаж для приветствий) и дайте ему права «Администратор» или «Доступ ко всей переписке». В событии выбирайте Бота — сообщество.

Полезная информация:

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

Например: если Вы добавите нашего бота к себе, тогда на его использование тратятся мили у нас (вы не платите), а если сделан Кощей в аккаунте Андрея и включено: «добавление в беседу» для всех, то придется платить владельцу аккаунта — Андрею.

Для выключения возможности добавления сообщества в беседу:

  • переходим в УправлениеСообщенияНастройки для ботов и снимаем галочку: «Разрешать добавлять сообщество в беседы»
Запрещаем добавлять сообщества в беседы
Запрещаем добавлять сообщества в беседы

Вариант 2 (менее радикальный):

Для того, чтобы разрешить добавлять бота-сообщество в беседу только администраторам нужно сделать следующее:

  • переходим в УправлениеМеню находим пункт «Добавить в беседу» и в настройках видимости ставим галочку: «Только администраторы», т.е. кнопку для добавления в беседу видят только администраторы сообщества.
Приложение будет доступно только администраторам
Приложение будет доступно только администраторам

Рассмотрим событие подробнее:

Демонстрация события «Добавился в беседу/Удалился из беседы»
Демонстрация события «Добавился в беседу/Удалился из беседы»

Cобытие срабатывает, когда вызывается событие, указанное в параметре 1, в беседе с сообществом, указанным в параметре 2, методом, указанным в параметре 3 и имеет следующие значения:

  • Добавился в беседу — срабатывает, когда подписчик добавляется в беседу.
  • Покинул беседу — срабатывает, когда подписчик покинул беседу.
  • Сменил название беседы — срабатывает, когда подписчик сменил название беседы.
  • Закрепил сообщение в беседе — среагирует, когда подписчик закрепит сообщение.
  • Открепил закрепленное сообщение в беседе — аналогично сработает, когда подписчик открепил сообщение.
  • Сменил аватар беседы — реакция будет, если произойдет смена аватара беседы.
  • Удалил аватар беседы — событие сработает, если будет удаление аватара.

Параметр 2 — указывает для какого именно сообщества выполняется событие(можно сменить нажав на соответствующую сноску).

Параметр 3 имеет следующие параметры:

  • любым методом — событие сработает, когда его запустит подписчик или Администратор.
  • самостоятельно — событие выполнится, когда его запустит подписчик.
  • действием администратора — событие будет исполнено, когда его запустит Администратор.

Для реакции на добавление именно в нужную беседу воспользуйтесь переменной %peer_id%. Смотрите раздел «Переменные для условий и действий»

Пример условия:
Пример условия:

Для того, чтобы узнать ID бота относительно беседы можно воспользоваться следующей командой:

Настройка команды для получения ID беседы для бота

Важно! В данной команде происходит получение ID беседы для вашего бота. В примере персонажа зовут Батя и ему выдан доступ к переписке.

Событие и условия:

1) Сообщение: «Написал сообщение» с текстом равным: Батя

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

@id%vk_id%(%first_name%), я разговариваю только с {gender}сыном|дочерью{/gender}.
Пример события
Пример события
Пример условия:
Пример условия:

Действия:

1) «Отправить сообщение» в беседу %peer_id% с текстом:

@id%vk_id%(%first_name%), {gender}сынок|дочка{/gender}, я тут!
Корректное приветствие от бота
Корректное приветствие от бота

2) «Отправить сообщение» cотрудникам в ответ:

Мой ID беседы  = %peer_id%
Получаем ID бота в сообщения сообщества.
Получаем ID бота в сообщения сообщества.

Тестируем.

Ответ в беседе
Ответ в беседе
ID беседы тоже получен
ID беседы тоже получен
Чужой игрок не пройдет
Чужой игрок не пройдет

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

Переменные для условий и действий

  • %peer_id% — содержит ID беседы для бота.
  • %is_conv% — если беседа = 1. Полезно для условия Переменная содержит.
  • %body_2% — при использовании события «Добавился в беседу / исключен из беседы» содержит ID исключающего (например администратора, если удалили, или подписчика, если ушел сам).
  • %object_id% — ID сообщения написанного в беседу.

На этом все! Успехов в освоении Автопилота.

Вернуться на главную страницу инструкций.
2372 views·35 shares
2372 views