Files
telegram-helper-bot/main.py
2024-07-11 22:59:58 +03:00

54 lines
2.1 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import configparser
import os
import sys
from database.db import BotDB
from helper_bot.helper_bot import TelegramHelperBot
from logs.custom_logger import Logger
#TODO: Добавить проверку можно ли отвечать пользователю? Сейчас если у него скрыто лс, ему похоже не приходят сообщения
#TODO Подумать над реализацией функционала с поступлениями в колледжи
#TODO: Покрыть все логированием и ошибками корректными. Ерроры кидать в чат.
#TODO: Покрыть все тестами
class BaseDependencyFactory:
def __init__(self):
# Загрузка настроек из settings.ini
self.logger = Logger('main')
config_path = os.path.join(sys.path[0], 'settings.ini')
self.config = configparser.ConfigParser()
self.config.read(config_path)
self.BotDB = BotDB()
self.settings = {}
for section in self.config.sections():
self.settings[section] = {}
for key in self.config[section]:
# Преобразование значений в соответствующий тип
if key == 'PREVIEW_LINK':
self.settings[section][key] = self.config.getboolean(section, key)
elif key == 'LOGS' or key == 'TEST':
self.settings[section][key] = self.config.getboolean(section, key)
else:
self.settings[section][key] = self.config.get(section, key)
def get_settings(self):
return self.settings
def get_config(self):
return self.config
def get_database(self):
return self.BotDB
if __name__ == "__main__":
# Запускаем тг бота
bot = TelegramHelperBot(BaseDependencyFactory())
bot.start()
#scheduler = BackgroundScheduler()
#scheduler.add_job(bot.unban_notifier(), 'cron', hour=22, minute=9)
#scheduler.start()