Compare commits

..

No commits in common. "d2c6b972e57afc7391140af308ca09c546f1d301" and "273c0bf2dadb583ef9142f8f454b5e37be2ba366" have entirely different histories.

4 changed files with 22 additions and 14 deletions

View File

@ -1,24 +1,16 @@
from telebot import TeleBot
from .config import Config, load_config
from .logger import create_logger
from .bot import get_bot
from .i18n import I18N
from .database import get_engine
from .states import get_state_storage
from .handlers import register_handlers
from .middlewares import setup_middlewares
from .filters import add_custom_filters
def create_bot(config: Config, i18n: I18N, engine):
def create_bot(config: Config, i18n: I18N):
state_storage = get_state_storage(config.states)
bot = TeleBot(config.bot.token,
parse_mode=config.bot.parse_mode,
skip_pending=config.bot.skip_pending,
num_threads=config.bot.num_threads,
use_class_middlewares=True,
state_storage=state_storage)
register_handlers(bot)
bot = get_bot(config.bot, state_storage)
setup_middlewares(bot, i18n)
add_custom_filters(bot, config)
return bot
@ -28,8 +20,8 @@ def main():
config = load_config()
# logger = create_logger("mybot", config.log_level)
i18n = I18N(config.i18n)
engine = get_engine(config.database)
bot = create_bot(config, i18n, engine)
# engine = get_engine(config.database)
bot = create_bot(config, i18n)
bot.infinity_polling(
timeout=config.bot.timeout,
long_polling_timeout=config.bot.polling_timeout,

15
mybot/bot.py Normal file
View File

@ -0,0 +1,15 @@
from telebot import TeleBot
from .handlers import register_handlers
from .config import BotConfig
def get_bot(config: BotConfig, state_storage):
bot = TeleBot(config.token,
parse_mode=config.parse_mode,
skip_pending=config.skip_pending,
num_threads=config.num_threads,
use_class_middlewares=True,
state_storage=state_storage)
register_handlers(bot)
return bot

View File

@ -44,7 +44,7 @@ class StateStorageConfig:
@classmethod
def from_env(cls):
return cls(os.getenv("SS_TYPE", "memory"),
return cls(os.getenv("SS_TYPE"),
os.getenv("SS_REDIS_HOST"),
int(os.getenv("SS_REDIS_PORT", 6379)),
int(os.getenv("SS_REDIS_DB", 0)),

View File

@ -15,3 +15,4 @@ def get_state_storage(config: StateStorageConfig):
# states will be defined here