Код бота размещён на GitHub
Группа для тестов unitestgroup
Функционал:
- Новый участник группы, который подключается самостоятельно, в течении заданного времени должен ввести ключевую фразу или цифры с изображения, отправив команду /captcha, иначе будет исключён из группы.
Все сообщения нового участника, не прошедшего проверку, удаляются автоматически.
При проверке нового участник используется спам фильтр из файла spam_new_members.txt. - Отправка статистики работы бота по команде /get_stat или /statistics и расписанию.
По команде /get_stat <дней> или /statistics <дней> отправляется статистика, за указанное количество дней. - Если ответить на сообщение текстом @ban, /ban или bban, создаётся опрос блокировки участника группы.
При блокировке удаляются сообщения за последние 2-е суток.
С целью защиты от атак, функцией могут воспользоваться только участники, состоящие в группе больше 30 дней.
Блокировка возможно только участника, состоящего в группе меньше 7 дней. - Если ответить на сообщение текстом @mute, /mute или mmute <число_часов>, участник временно лишается возможности отправлять сообщения в чат.
Если не указать <число_часов>, блокировка будет выполнена на 24 часа.
Функцию могут использовать только основатель группы и администраторы с правом блокировать участников группы.
Блокировка снимается, если ответить текстом unmute или umute на сообщение блокированного участника. - При обнаружении в тексте сообщения ключевых спам фраз из файла spam.txt, автор сообщения блокируется и его сообщения за последние 2-е суток удаляются.
- Отправляются кнопки со ссылками, если сообщение содержит ключевую фразу:
/help /start /inf - Отправляется ссылка, если сообщение содержит ключевую фразу:
облако, форум, uni сайт, сайт uni, магазин uni, uni интернет - Отправляется сообщение при обнаружении строк voron или ворон.
- Участники группы с именами, не содержащими символы кириллицы, латиницы или цифры, периодически получают информационное сообщение.
- Информационные сообщения от бота не будут следовать друг за другом. Задан минимальный промежуток между повторами в десять сообщений.
- Сообщения со "здоровенными" ссылками aliexpess удаляются и отправляются сообщения с "нормальными" ссылками.
- Сообщения с упоминанием b&r или br3d удаляются автоматически.
- Сообщения с матом удаляются автоматически.
Получить текст сообщения можно отправив команду /cens лично боту. - Все голосовые сообщения удаляются автоматически.
- Для моделей в формате STL и STEP отправляются изображения-миниатюры.
В параметрах задано ограничение на размер файла модели (5 Мб). - Бот обслуживает только разрешённые группы. При обнаружении присутствия в чужой группе, бот ругается и выходит из группы.
- Бот сохраняет историю действий в файл и базу данных.
- Служебные команды:
/get_chat_id id чата /get_stat или /statistics статистика за 7 дней /get_stat <дней> статистика за указанное количество дней /test raw сообщения <ответ на сообщение> /test raw сообщения /member_id <id_пользователя> ... информация о пользователе по id /ban_id <id_пользователя> ... блокировка участника по id /unban_id <id_пользователя> ... разблокировка участника по id - Служебные команды лично боту
/get_log файл log /get_log <N> N последних строк log /get_log <N> <ключевая_фраза> N последних строк log с ключевой фразой