daysandbox_bot telegram bot

Daysandbox Bot - простой но эффективный анти-спам бот. Идея простая: ссылки, пересланые сообщения и картинки удаляются от новых пользователей, зашедших в чат менее 24 часов назад. Этот подход позволяет автоматически удалять довольно большУю часть спама, поступающего в чат. Недостаток метода в том, что спам не будет удалён, если спам бот подождёт сутки, а затем уже отправит сообщение. Вы можете настроить список доменов, ссылки на которые не будут блокироваться даже от новых пользователей. Также есть возможность вносить пользователей в белый список, чтобы они могли отправлять ссылки сразу после входа в чат. По-умолчанию, бот не удаляет картинки и видео от новых пользователей. Эту найстройку нужно включать вручную. Также можно настроить удаление всех сообщений от новых пользователей в течении заданного времени.

Типы сообщений, которые Daysandbox Bot, считает спамом:

  • сообщение, пересланное из другого чата
  • сообщение, содержащее ссылку @username на канал или группу. Если такая ссылка указывает на пользователя, она не будет удалена
  • сообщение с прикреплённой кнопкой
  • медиа сообщения (не удаляются по-умолчанию). Медиа - это аудио, игры, GIF, документы, фотографии, видео, контакты, гео-позиции

Установка

Следуйте этим шагам:

  • Добавьте в @daysandbox_bot в качестве администратора в чат
  • Дайте боту разрешение на удаление сообщений. Никаких других разрешений не требуется
  • Необязательный шаг: настройте белый список доменов.
  • Необязательный шаг: включите удаление мультимедийных сообщений от новых пользователей

Команды

  • /daysandbox set notify_actions = yes - настроить бота писать сообщения в чат о каждом удаленном спам-сообщении
  • /daysandbox set notify_actions = no - настроить бота не показывать информационные сообщения о том, что он удалил спам-сообщение
  • /daysandbox set remove_media = yes - настроить бота для удаления мультимедийных сообщений от новых пользователей (по умолчанию НЕТ)
  • /daysandbox set remove_media = no - настроить бота, чтобы он НЕ удалял мультимедийные сообщения от новых пользователей
  • /daysandbox set safe_hours = X - установить безопасный период на X часов. Значение X должно быть числом в диапазоне 0 <X <720. Другими словами, безопасный период должен быть больше нуля и меньше или равняться одному месяцу.
  • /daysandbox set mute_hours = X - удалять вообще все соообщения от нового пользователя, в течении указанного количества часов. По умолчанию это ноль часов, т.е. настройка отключена. Допустимое значение для этой опции находится в диапазоне от 0 до 720.
  • /daysandbox config - отображать конфигурацию бота для текущего чата
  • /daysandbox check - проверить, правильно ли установлен бот
  • /daysandbox reload_admins - попросить бота перезагрузить админ ID текущего чата. Список администраторов собирается один раз и кешируется. Используйте эту команду для обновления кэшированных данных.
  • /daysandbox add domain-whitelist FOO - указать боту никогда не блокировать ссылки, содержащие FOO. FOO может быть именем домена или именем пользователя группы /канала. Используйте "@" чат, чтобы указать имена пользователей групп /каналов. Пример: /daysandbox add domain-whitelist google.com или/daysandbox add domain-whitelist @ tgdev_en.
  • /daysandbox remove domain-whitelist FOO - удалить FOO из списка доменов /групп /каналов, которые никогда не должны блокироваться. Пример: /daysandbox remove domain-whitelist yahoo.com
  • /daysandbox ad user-whitelist USER - указать боту не блокировать сообщения от пользователя. Имя пользователя USER должно начинаться с символа "@". Пример: /daysandbox add user-whitelist @ foobar
  • /daysandbox remove user-whitelist USER - удалить ПОЛЬЗОВАТЕЛЯ из белого списка. Пример: /daysandbox remove user-whitelist @ foobar
  • /daysandbox set lang = <lang-code> - настроить язык уведомлений. Допустимые значения для этих настроек: en и ru.

Все эти команды нужно вводить в чате, который вы хотите настроить (где установлен бот).

Вопросы и ответы

Как проверить, работает ли бот?

Сначала выполните инструкции по установке. Затем введите в чат эту команду: /daysandbox check. Устраните все проблемы, о которых говорит бот.

Можно ли сделать так, чтобы бот не удалял сообщения, отправленные админом?

Бот не удаляет сообщения админов. Если удаляет, перезагрузите список админов командой /watchdog reload_admins

Бот не удаляет спам

Бот удаляет ссылки только от новых пользователей. Если пользователь находится в чате более 24 часов, бот не будет удалить любое сообщение от такого пользователя. Также бот не обрабатывает сообщения от пользователей, которые были в чате. в момент добавления бота в чат. Это потому, что бот не может узнать время присоединения старых пользователей, он может сделать это только для новых пользователей, которые присоединяются к чату, в котором бот уже работает.

Бот не работает

Оно работает. Ежедневно @daysandbox_bot удаляет около 50 тысяч спам-сообщений.

Бот по ошибке забанил какого-то пользователя в моей группе

Бот Daysandbox никого не банит.

Как разрешить новым пользователям сразу публиковать ссылки

Если вы хотите, чтобы новый пользователь публиковал ссылки немедленно (и не дожидаясь безопасного периода), добавьте его имя пользователя в белый список пользователей с помощью команды /daysandbox add user-whitelist @ username.

Как разрешить новым пользователям размещать ссылку на определенный домен

Если вы хотите, чтобы @ daysandbox_bot теперь блокировал ссылки на собственный домен или группу телеграмм, добавьте это имя пользователя домена /группы в белый список с помощью команды/daysandbox add domain-whitelist FOO, где FOO - это имя домена или имя пользователя (с начальным знаком "@" ) группы /канала.

Бот не удаляет ссылки от админов

Бот не удаляет сообщения админов, это нельзя изменить.