def middlewares_setup(dispatcher: Dispatcher): logger.info("Configure middlewares") dispatcher.middleware.setup(LoggingMiddleware("bot")) dispatcher.middleware.setup(ACLMiddleware())
import aiohttp from aiogram import Bot, Dispatcher, executor, types from aiogram.contrib.middlewares.logging import LoggingMiddleware from aiogram.utils.executor import start_webhook from exceptions import NotCorrectMessage from expenses import (add_expense, get_today_statistics, get_month_statistics, last, delete_expense) from categories import Categories from .settings import (API_TOKEN, HEROKU_APP_NAME, WEBHOOK_URL, WEBHOOK_PATH, WEBAPP_HOST, WEBAPP_PORT) bot = Bot(token=API_TOKEN) dp = Dispatcher(bot) dp.middleware.setup(LoggingMiddleware()) @dp.message_handler(commands=['start', 'help']) async def send_welcome(message: types.Message): """Отправляет приветственное сообщение и помощь по боту""" await message.answer("Бот для учёта финансов\n\n" "Добавить расход: 250 такси\n" "Сегодняшняя статистика: /today\n" "За текущий месяц: /month\n" "Последние внесённые расходы: /expenses\n" "Категории трат: /categories") @dp.message_handler(lambda message: message.text.startswith('/del')) async def del_expense(message: types.Message):
def setup(dp: Dispatcher): dp.middleware.setup(i18n.i18n) dp.middleware.setup(client_middleware.ClientMiddleware()) dp.middleware.setup(LoggingMiddleware())
def setup(dp: Dispatcher): logger.info("Configure middlewares...") dp.middleware.setup(ThrottlingMiddleware()) dp.middleware.setup(LoggingMiddleware()) logger.info("Middlewares are successfully configured")
from aiogram import executor, types, Dispatcher, filters from models import * from config import bot from aiogram.contrib.middlewares.logging import LoggingMiddleware from lang import Lang from utils.graber import swaps_worker import re import logging logging.basicConfig(format='%(asctime)s %(message)s', level=logging.INFO) log = logging.getLogger() dp = Dispatcher(bot) logger_middleware = LoggingMiddleware() dp.middleware.setup(logger_middleware) @dp.message_handler(lambda x: x.reply_markup) async def pass_msg_with_btns(message): pass @dp.message_handler(commands=['live', 'blive']) async def live_handler(message: types.Message): try: _, pair = message.text.split() if match := re.match(r"0x\w{40}", pair): live_obj = await LiveGate.create(chat_id=message.chat.id, active=True) live_obj.pair = match.group(0)
def register_middlewares(dp: Dispatcher): dp.middleware.setup(AuthMiddleware()) dp.middleware.setup(LoggingMiddleware())
def register(dispatcher: Dispatcher, session: orm.Session) -> None: dispatcher.middleware.setup(LoggingMiddleware("bot")) dispatcher.middleware.setup(ACLMiddleware(session))
from aiogram.types import Message, ContentTypes from aiogram.utils import executor from config import TOKEN BOT_DIR = Path(__file__).resolve().parent STICKERS_DIR: Path = BOT_DIR / "stickers" STICKERS_DIR.mkdir(exist_ok=True) logging.basicConfig(level=logging.DEBUG) bot = Bot(TOKEN) dp = Dispatcher(bot) logging_middleware = LoggingMiddleware() dp.middleware.setup(logging_middleware) @dp.message_handler() async def echo_message(message: Message): return await message.answer(message.text) # await bot.send_message() @dp.message_handler(content_types=ContentTypes.PHOTO) async def echo_photo(message: Message): return await message.answer_photo( message.photo[-1].file_id, caption=f"You wrote: {message.caption!r}", )
from aiogram.contrib.middlewares.logging import LoggingMiddleware from aiogram.dispatcher import FSMContext from aiogram.dispatcher.filters.state import State, StatesGroup from aiogram.types import * from aiogram.utils.helper import HelperMode from config import settings from crypto.btc import make_keys logging.basicConfig(level=logging.INFO) logger = logging.getLogger('bot') bot = Bot(token=settings.telegram.token, parse_mode=types.ParseMode.HTML) storage = RedisStorage2() dp = Dispatcher(bot, storage=storage) dp.middleware.setup(LoggingMiddleware(logger)) class SwapStates(StatesGroup): mode = HelperMode.snake_case START = State() ASK_SOURCE = State() ASK_DEST = State() ASK_DEST_ADDRESS = State() CONFIRM = State() FINISHED = State() @dp.message_handler(content_types=types.ContentTypes.STICKER, state='*') async def handle_sticker(message: types.Message, state: FSMContext):
bp_user = os.environ['BP_USER'] # # mqtt # url = os.environ.get("CLOUDAMQP_URL") # params = pika.URLParameters(url) # connections = pika.BlockingConnection(params) # channel = connections.channel() # # channel.exchange_declare("test_exchange") # # channel.queue_declare("mqtt-subscription-ESP8266qos0", auto_delete=False) # channel.queue_bind("mqtt-subscription-ESP8266qos0", "test_exchange", "led_on_off") bot = Bot(token=telegram_token) storage = MemoryStorage() dispatcher = Dispatcher(bot, storage=storage) dispatcher.middleware.setup(LoggingMiddleware()) CLIENT = redis.from_url(redis_url) @dispatcher.message_handler(commands=["start"]) async def send_welcome(message: types.Message): logging.warning("Starting connection.") await types.ChatActions.typing(0.5) await message.reply("Hello, i'm GladOS. beep boop...\n", reply_markup=markup) @dispatcher.message_handler(Text(equals="weather")) async def weather_worker(message): await types.ChatActions.typing(0.5) await message.reply(weather.get_weather(weather_token))
from aiogram.contrib.middlewares.logging import LoggingMiddleware from misc import disp disp.middleware.setup(LoggingMiddleware(__name__)) """ Logging middleware is used to log bot-related events """
from aiogram import Bot, Dispatcher from aiogram.contrib.fsm_storage.memory import MemoryStorage from aiogram.contrib.middlewares.logging import LoggingMiddleware from aiogram.types import ParseMode from aiogram.utils.executor import Executor import sentry_sdk from core import config from core.packages import PackagesLoader from mixpanel import Mixpanel logging.basicConfig(level=logging.INFO) log = logging.getLogger('{{cookiecutter.bot_name}}') loop = asyncio.get_event_loop() bot = Bot(config.bot_token, parse_mode=ParseMode.HTML, validate_token=False) storage = MemoryStorage() dp = Dispatcher(bot, storage=storage, loop=loop) runner = Executor(dp, skip_updates=config.skip_updates) loader = PackagesLoader() dp.middleware.setup(LoggingMiddleware('bot')) mp = Mixpanel(config.mixpanel_key) if config.sentry_url: sentry_sdk.init(config.sentry_url)
def setup(dispatcher: Dispatcher, config: Config): logger.info("Configure middlewares...") dispatcher.middleware.setup( DBMiddleware(tg_client_config=config.tg_client)) dispatcher.middleware.setup(ConfigMiddleware(config)) dispatcher.middleware.setup(LoggingMiddleware())