Skip to content

3ndetz/Ordos

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The Ordos Bot

Brief functionality:

Discord Telegram
Automatic voice moderation Quest game bot

Discord videodemo

(это видео со звуком, не забудьте размутить)

VoiceModerLight.mp4

Кратко

Ordos — многофункциональный бот. В репозиторий включен игровой квест-бот для Telegram и бот-модератор для Discord. Discord сразу запустить не получится (см. инструкцию запуска).

Telegram Discord
image image
Что делают 2 разных бота в 1 репозитории?

Изначально планировалось, что будет игровой бот, который будет поддерживать как Discord, так и Telegram, но по итогу я ограничился лишь одним ботом для игр. Соответственно, базу для обоих ботов я уже написал, но в Discord-бота попросту не успел внедрить функционал. Далее я делал ВКР по теме, связанной с модерацией голосовых чатов, и поэтому использовал Discord-базу для его создания. Выложить на GitHub всё это я решился только недавно ну и у меня не было много лишнего времени, чтобы заморачиваться над разделением репозиториев) Поэтому вот так.

Использование Discord-бота

Ordos (греч.) — порядок

Демо — см. видео

Команды и описание:

Бот автоматически модерирует один из голосовых чатов на серверах Discord. Список запрещенных слов можно настроить индивидуально для каждого сервера. Есть функция определния токсичного поведения.

Презентация с защиты

Ссылка на эту презентацию (pdf)

Документация (Google Docs)

Запущенный экземпляр от автора:

Не на постоянном хосте, может быть отключен

Ссылка для добавления бота к себе на сервер

Использование Telegram-бота

Запущенный экземпляр:

Не на постоянном хосте, может быть отключен

Telegram @the_ordos_bot

Пара скриншотов работы квеста в Telegram-боте

image

image

image

image

Для запуска своих экземпляров

Для запуска ботов нужно создать папку config в корне и в неё поместить config.py. Что писать в конфиг читайте далее.

Telegram (игровой квест-бот)

Получите токен от Telegram @BotFather и внесите его в config.py.

config.py run command
tgbot_token (string, BotFather token) python bot/telegram_bot.py

Discord (модератор голосовых каналов)

Предварительно нужно реализовать интерфейс STT ресивера аналогично примеру STT_Process_examples/docker_reciever.py

STT ресивер к репозиторию не прилагается, это отдельный скрипт (могу отдельно залить на GitHub или Docker если вдруг кому-то понадобится...). Заливаю отдельно, т.к. в рамках ВКР я использовал STT Nvidia NEMO с Docker'a, соответственно у меня скрипт аж на другой системе (Docker -> Windows WSL -> Linux Docker NEMO Image), а этот интерфейс позволяет с помощью SyncManager общаться двум Python-процессам в рамках одной сети.

config.py dsbot_token stt_connect_key run command
(string, Discord Dev token) bytes string b'key' for connect to stt reciever python bot/discord_bot.py

Запуск обоих сразу

config run command
настроить оба python main.py

Releases

No releases published

Packages

No packages published

Languages