Карма-бот в Telegram

Для работы действия нужно настроить интеграцию с telegram

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

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

Допустим, у вас чат автоматизации и за помощь другим вы раздаете шоколадки (можно заменить на другую игровую валюту).

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

Команда «Бонус за спасибо»

В примере команды мы будем выдавать бонус-шоколадку за «спасибо»

1) Событие «Написал сообщение в Telegram» с текстом под регулярку: спс|пасиб|благодар|обнять|обнимаю|жму руку|шоколад|мерси|секнс|

Пояснение: команда сработает, если пользователь ввел один из ключевиков в ответ на сообщение, но упоминания вида: спасибо @son_of_sky, работать не будут.

Пример события
Пример события

2) Добавляем условие: числовая переменная %mention% больше 0 и числовая переменная %chat_id% меньше 0
Пояснение: ID игрока в Telegram будет всегда больше 0, а ID чата всегда будет меньше 0

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

3) Для того, чтобы не позволять выдавать шоколадку себе, необходимо условие: числовая переменная %mention% не равна %orig_subs_id%

и в реакции на невыполнение пишем текст:

%first_name%, ах ты шалунишка!
Тебе надо плёткой по попке, а не шоколадку.
Снимай штаны!

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

Пояснение: мы проверяем ID игрока в Telegram чтобы было неравно ID игрока, который запустил команду, иначе ругаем пользователя.

Действия:

1) Для того, чтобы выдать шоколадку упоминаемому игроку и все последующие действия выполнялись для «упоминаемого» пользователя добавляем действие: «Сменить исполнителя» с переключателем на игрока в Telegram и с ID равной %mention%. Мы же помним, что в %mention% содержится ID «упоминаемого» игрока?

Пример действия
Пример действия

2) Для того, чтобы хранить количество шоколадок с помощью действия «Изменить поле профиля игрока» с переключателем увеличить как число на записываем в поле dark_chocoувеличение количества шоколадок на 1

Пример действия
Пример действия

3) В действии «Отправить сообщение в Telegram» отправляем текстом с форматированием Markdown со значением:

Кто тут у нас такой сладенький?
А, это [%first_name%](tg://user?id=%player.tg_id%). Дарю тебе 1 шоколадку.
У тебя сейчас шоколадок: %player.dark_choco%
Пример действия
Пример действия

4) Не забываем для корректности, как рекомендует Олександр, сменить исполнителя обратно на того, кто запустил команду %orig_subs_id%:

Пример действия
Пример действия

Тестируем.

Попытка выдать себе шоколадку не удалась
Попытка выдать себе шоколадку не удалась
Выдача шоколада работает
Выдача шоколада работает

Запрет добавления бота в каналы / группы

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

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

1) Открываем BotFather по ссылке https://t.me/BotFather

2) Пишем команду /mybots и получаем список ботов

Получаем список ботов
Получаем список ботов

3) Находим нашего бота, в примере это @andreyGbot_bot и выбираем его в списке.

4) Открываем настройки выбрав Bot Settings

Выбор настроек
Выбор настроек

5) Здесь выбираем Allow Groups

Открываем настройки группы
Открываем настройки группы

6) Вы увидите примерно такой текст, который гласит, что бота можно добавлять в группы:

Groups are currently enabled for bot andreyGBot @andreyGBot_bot
Disabling groups will forbid users to add andreyGBot to groups.

Нам это не нужно, поэтому кликаем на кнопку Turn Groups Offи выключаем эту возможность. Для включения делаем все аналогичное.

Выключаем добавление в группу.
Выключаем добавление в группу.

Пробуем добавить бота.

Запрет работает.
Запрет работает.

Все отлично работает.

Автор настройки Никита Кузнецов

Творческих взлётов и успешного внедрения.

Вернуться к списку инструкций
1000 views·23 shares