예제 #1
0
async def main():
    # Настройка логирования в stdout
    logging.basicConfig(
        level=logging.INFO,
        format="%(asctime)s - %(levelname)s - %(name)s - %(message)s",
    )
    logger.error("Starting bot")

    # Парсинг файла конфигурации
    config = load_config("config/bot.ini")

    # Объявление и инициализация объектов бота и диспетчера
    bot = Bot(token=config.tg_bot.token)
    dp = Dispatcher(bot, storage=MemoryStorage())

    # Регистрация хэндлеров
    register_handlers_common(dp, config.tg_bot.admin_id)
    register_handlers_drinks(dp)
    register_handlers_food(dp)

    # Установка команд бота
    await set_commands(bot)

    # Запуск поллинга
    # await dp.skip_updates()  # пропуск накопившихся апдейтов (необязательно)
    await dp.start_polling()
예제 #2
0
async def main():
    # Настройка логирования в stdout
    logging.basicConfig(
        level=logging.INFO,
        format="%(asctime)s - %(levelname)s - %(name)s - %(message)s",
    )
    logger.error("Starting bot")

    # Парсинг файла конфигурации
    config = load_config("config/bot.ini")

    # Объявление и инициализация объектов бота и диспетчера
    bot = Bot(token=config.tg_bot.token)
    print((await bot.get_me()).username)
    # В реальных условиях вместо MemoryStorage лучше взять что-то другое
    dp = Dispatcher(bot, storage=MemoryStorage())

    # Регистрация хэндлеров
    register_add_links_handlers(dp)
    register_manage_links_handlers(dp)
    register_handlers_common(dp)
    register_inline_handlers(dp)

    # Установка команд бота
    await set_commands(bot)

    # Запуск поллинга
    # await dp.skip_updates()  # пропуск накопившихся апдейтов (необязательно)
    await dp.start_polling()
예제 #3
0
async def main():

    logging.basicConfig(
        level=logging.INFO,
        format="%(asctime)s - %(levelname)s - %(name)s - %(message)s",
    )
    logger.error("Starting bot")

    config = load_config("config/bot.ini")

    bot = Bot(token=config.tg_bot.token)
    dp = Dispatcher(bot, storage=MemoryStorage())

    register_handlers_anketa(dp)

    await set_commands(bot)

    await dp.start_polling()
예제 #4
0
파일: common.py 프로젝트: zero-klou/yadisk
from aiogram import Dispatcher, types, Bot
from aiogram.dispatcher import FSMContext
from aiogram.dispatcher.filters.state import StatesGroup, State
from aiogram.types import ContentType
import yadisk
import datetime
import os
from app.config_reader import load_config
import sqlite3

config = load_config("config/bot.ini")
bot = Bot(token=config.tg_bot.token)

class SendFiles(StatesGroup):
    waiting_for_send = State()
    sended = State()

class SQLighter():
    def __init__(self, database_file):
        self.connection = sqlite3.connect(database_file)
        self.cursor = self.connection.cursor()
        print('Соединение установлено')
        db_version = self.cursor.execute('select sqlite_version();').fetchall()
        print(f'Версия базы данных: {db_version}')
        self.cursor.close()

    def close_db(self):
        self.cursor.close()
        self.connection.close()
        print('Соединение закрыто')