Бот для уборки системных сообщений в ТГ

Почти за год работы бот-платформы в мессенджере Telegram набралось много интересных которые могут делать то же самое, что и некоторые отдельные приложения. А некоторые боты предлагают действительно эксклюзивные функции, которых нигде больше не найдешь. Мы собрали самых интересных и удобных ботов Telegram в одной статье.

Telegram-канал создателя Трешбокса про технологии

Информационные боты

Информационные — это те боты, которые рассылают новые статьи с крупных порталах, сообщают о погоде или курсах валют.

Самые интересные и удобные боты в Telegram Самые интересные и удобные боты в Telegram

Поддерживается русский язык. Вся информация подается в одном сообщении с наглядными смайлами Emoji. Задать локацию можно простой отправкой своего местоположения боту. Weatherman автоматически каждый день уведомляет о погоде сообщениями.

Telegram бот для удаления системных сообщений о вступлении в группу без программирования и Python

Среди сугубо-новостных ботов стоит отметить:

Самые интересные и удобные боты в Telegram Самые интересные и удобные боты в Telegram

Если вы любитель почитать учебную или даже научную литературу прямо на телефоне или планшете — воспользуйтесь этим ботом, и тогда вы определенно найдете что-то стоящее.

Самые интересные и удобные боты в Telegram

RubBot показывает курса рубля к доллару, рубля к евро, а также цену нефти Brent. Вместе с курсом указывается понизился или повысился он сегодня и насколько.

Самые интересные и удобные боты в Telegram Самые интересные и удобные боты в Telegram

Самые интересные и удобные боты в Telegram Самые интересные и удобные боты в Telegram Самые интересные и удобные боты в Telegram

Контент-боты

Многие боты ориентированы только поиск или прямое скачивание контента.

Самые интересные и удобные боты в Telegram Самые интересные и удобные боты в Telegram

Для музыки предусмотрены специальные опции — можно выбрать только скачивание аудио-дорожки отдельно.

Самые интересные и удобные боты в Telegram

Работает аналогичным образом: отправляем ссылку и ответ бот присылает фото или видео, которые можно быстро и очень просто сохранить.

Самые интересные и удобные боты в Telegram Самые интересные и удобные боты в Telegram

Отправляем название нужной песни или исполнителя — в ответ получаем список список из композиций. Каждую можно прослушать прямо внутри Telegram или скачать на компьютер или смартфон / планшет.

Еще по теме:  Куда скачиваются архивы из Телеграмма

Самые интересные и удобные боты в Telegram Самые интересные и удобные боты в Telegram

Эти два бота поддерживают функции обновленной платформы Bot Platform 2.0, например — это возможность поделиться контентом в чатах, удобные кнопки для отправки команд и другие.

Самые интересные и удобные боты в Telegram Самые интересные и удобные боты в Telegram

Игры

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

Самые интересные и удобные боты в Telegram

Бот поддерживает русский язык и имеет удобную интеграцию с Emoji.

Самые интересные и удобные боты в Telegram

Бот присылает флаг, а в ответ нужно отправить название государства.

Самые интересные и удобные боты в Telegram

Управление очень простое — игровое поле находится на кастомной клавиатуре бота, и оно обновляется с каждым отправленным сообщением.

Самые интересные и удобные боты в Telegram Самые интересные и удобные боты в Telegram

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

Утилиты

В отдельную категорию мы отобрали боты, которые выполняют какие-то простые, но важные функции. Проще говоря — утилиты.

Список ботов-утилит в Telegram, которые сделают вашу жизнь проще:

Самые интересные и удобные боты в Telegram Самые интересные и удобные боты в Telegram Самые интересные и удобные боты в Telegram

Какие боты вам нравятся больше всего? Каких еще стоило бы добавить в эту статью?

Материалы по теме:

  • Как сохранить историю в Telegram, которую запретили скриншотить
  • Как получать донаты в Telegram, публикуя платные фото и видео
  • Топ-8 напоминалок для Android: программы для напоминания важного и не очень
  • 9 сторонних клиентов Telegram для Android, во всём лучше оригинального
  • Как прочитать удалённые сообщения из ВКонтакте, WhatsApp и других мессенджеров на Android

Источник: trashbox.ru

Бот для борьбы со спамом в Telegram на Golang

Решением стало написание свое бота, который задавал вопросы по типу:

example

Пользователю нужно ответить правильно, другие сообщения будут удаляться

Как добавить бота в чат?

  1. Добавляете бота в чат:

add-bot-to-chat

  1. После этого добавляете бота как админа в настройках чата:

add-bot-as-admin

  1. Даете боту права доступа на удаление сообщений и бан пользователей:

add-bot-as-admin

Код

Для работы с сообщениями в телеграм я решил использовать библиотеку tucnak/telebot с которой я уже работал раньше и которая кажется мне весьма удобной

Еще по теме:  Как назвать ТГ канал на английском языке с переводом по молодежному

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

В импорты нужно добавить:

import ( tb «gopkg.in/tucnak/telebot.v2» )

И таким образом запускается наш бот

// initialize bot b, err := tb.NewBot(tb.Settings< Token: «YOUR_TOKEN», Poller: , >) if err != nil < fmt.Printf(«error while initializing bot, %v», err) >

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

b.Handle(tb.OnUserJoined, UserJoined(l, b, memoryStorage))

А вот так выглядит сама функция UserJoined :

func UserJoined(l *zap.SugaredLogger, b *tb.Bot, s data.Storage) func(m *tb.Message) < return func(m *tb.Message) < r := rand.New(rand.NewSource(time.Now().UnixNano())) // generating two random small number firstNumber := r.Intn(4) + 1 secondNumber := r.Intn(4) + 1 fistNumberInWords := ntw.IntegerToRuRu(firstNumber) secondNumberInWords := ntw.IntegerToRuRu(secondNumber) username := getUsername(m.Sender) welcomeMessageText := getWelcomeMessageText(username, m.Chat.Title, fistNumberInWords, secondNumberInWords) welcomeMessage, err := b.Send(m.Chat, welcomeMessageText) if err != nil < l.Error(«error while sending welcome message», err) return > s.Add(m.Chat, m.Sender, data.InfoWelcomeMessage: welcomeMessage, RightAnswer: firstNumber * secondNumber>) // Goroutine to delete message after 2 minutes // and block user if he or she still in the list go checkAndBanUser(l, b, welcomeMessage, s, m, username) > >

Она генерирут два случайных числа и конвертирует их в текст. Правильный ответ записывается в память. Затем в горутине ожидается 2 минуты от отправки сообщения, если пользователь так и не решил правильно ответ, то он блокируется и удаляется из чата

Вот так выглядит код для проверки ответа пользователя:

func Text(l *zap.SugaredLogger, b *tb.Bot, s data.Storage) func(m *tb.Message) < return func(m *tb.Message) < info, ok := s.Exist(m.Chat, m.Sender) if !ok < return > if m.Text != strconv.Itoa(info.RightAnswer) < err := b.Delete(m) if err != nil < l.Errorf(«error while deleting (spam) user message: %v», err) > return > // in case of correct answer: s.Remove(m.Chat, m.Sender) // Correct! Tell us about yourself approveMessage, err := b.Send(m.Chat, «Верно! Расскажите нам о себе «) if err != nil < l.Errorf(«error while sending: %v», err) > go deleteWelcomeMessages(l, b, m, approveMessage, info.WelcomeMessage) > >

Еще по теме:  Сменить пароль в Телеграмм айон

Итог работы бота

По итогу бот очень успешно банит других ботов, не давая им написать сообщение с рекламой. Никто не переводит сообщения на английский язык и поэтому не знает что именно нужно делать. Таким образом пока получается блокировать всех ботов, хотя раньше с другими анти-спам ботами 50% просто решали капчу и писали спам

feedback

Исходный код

Исходный код, который деплоится затем на сервер вы можете найти тут:

Вы можете предложить свои изменения и улучшения, код открытый

После мержа код автоматически деплоится в продакшен (если билд пройдет успешно)

Источник: blogpavel.com

Рейтинг
( Пока оценок нет )
Загрузка ...