hkarel / Telebot

Телеграм бот для борьбы со спамом

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Telebot

Telebot - это программная реализация Телеграм-бота для борьбы со спамом в групповых чатах. Telebot был создан как дополнение к ботам проекта TgDev. На данный момент бот может удалять сообщения по двум признакам: 1) Наличие в сообщении http(s)-ссылки; 2) Соответствие сообщения заданному регулярному выражению.

Telebot - реализован как Linux-сервис. У бота отсутствует механизм конфигурирования посредством телеграм-команд, все управление осуществляется через файл конфигурации /etc/telebot/telebot.conf. Файл конфигурации записан в yaml-нотации.

Подключение Telebot в Телеграм

Подключение Telebot в Телеграм осуществляется через бот-аккаунт, который создается при помощи специального телеграм-бота @BotFather. После создания бота в диалоге с @BotFather нужно ввести команду /setprivacy, затем выбрать нового бота и установить для него значение DISABLE. Если этого не сделать бот не сможет видеть сообщения других пользователей.

Чтобы связать Telebot с бот-аккаунтом потребуется выполнить следующие шаги:

  1. В файле конфигурации telebot.conf в секции bot параметру id присвоить идентификатор бот-аккаунта.
  2. Создать приватный ключ и сертификат для безопасного обмена данными с сервисом Телеграм. Процесс создания ключа и сертификата описан в telebot.conf в секции webhook.

Сборка проекта Telebot

Система сборки ориентирована на Linux системы с пакетным менеджеров DPKG.

  1. Установить систему сборки QBS:
    sudo add-apt-repository ppa:mardy/qbs-on-lts
    sudo apt-get update
    sudo apt-get install qbs
  2. Запустить сборочный скрипт:
    ./qbs-build

Запуск ./qbs-build с ключом -h покажет возможные варианты использования сборочного скрипта. Вначале работы сборочный скрипт проверяет наличие необходимых зависимостей и в случае отсутствия предлагает их установить. При запуске скрипта с ключом -D будет создан deb-пакет. Сгенерированный deb-пакет сохраняется в директорию packages.

About

Телеграм бот для борьбы со спамом

License:GNU General Public License v3.0


Languages

Language:C++ 93.1%Language:Shell 3.8%Language:QML 3.1%