@bot.message_handler(func=lambda m: True)
def echo_all(message):
bot.reply_to(message, "так и так, я уведомительный бот, для обратной связи обратитесь туда-то и туда-то")
Для этого предполагаю такую логику: когда пользователь логинится система проверяет нет ли среди сессий данный майл и, если есть, удалять все сессии и разлогинить кроме этой, новой. Однако не могу найти где можно выбрать не текущую сессию, а остальные.
@app.route("/login")
def login():
email = request.form.get('email')
code = uuid4().hex
session['email'] = f'{email}_{code}'
fake_db.query.filter_by(email=email).update({'code': code})
@app.route("/manager")
def manager():
user = session['email']
email, code = user.split('_')
if fake_db.query.filter_by(email=email, code=code).first()
return user
else:
session.pop('email')
return 'logout'
Например добавить еще одно поле с комметарием к дню рождения тоже в кавычках. Например
text = '/event add birthdays "День рождения" "2022.09.30" "Сидорова не приглашать!"'
result = text[:text.find(' "')].split(' ') + [i.replace('"','') for i in text[text.find('"'):].split('" "')]
print(result) #['/event', 'add', 'birthdays', 'День рождения', '2022.09.30', 'Сидорова не приглашать!']
from aiogram import types from aiogram.dispatcher import FSMContext from aiogram.dispatcher.filters.builtin import CommandStart import logging import markups as nav from time import time from aiogram import Bot, Dispatcher, executor, types from aiogram.contrib.middlewares.logging import LoggingMiddleware import sqlite3 import cursor as cursor from sqlite3 import connect from aiogram import Bot, Dispatcher, executor import aiogram import logging import math import requests import os #import time import asyncio import random from time import time from aiogram import Bot, Dispatcher, executor, types from aiogram.contrib.fsm_storage.memory import MemoryStorage from aiogram.contrib.middlewares.logging import LoggingMiddleware from aiogram.types import CallbackQuery, ReplyKeyboardRemove, ReplyKeyboardMarkup, KeyboardButton, InlineKeyboardMarkup, InlineKeyboardButton, ChatMember from aiogram.types import InlineQuery, \ InputTextMessageContent, InlineQueryResultArticle from asyncio import sleep from contextlib import suppress from aiogram.utils.exceptions import (MessageToEditNotFound, MessageCantBeEdited, MessageCantBeDeleted, MessageToDeleteNotFound) from aiogram.types.chat_permissions import ChatPermissions from aiogram.dispatcher.middlewares import BaseMiddleware from aiogram.utils.exceptions import Throttled from aiogram.types.chat_join_request import ChatJoinRequest from aiogram.types.update import base, fields, Update from aiogram.types.chat_member_updated import ChatMemberUpdated from aiogram.types.chosen_inline_result import ChosenInlineResult from aiogram.types.inline_query import InlineQuery from aiogram.types.message import Message from aiogram.types.poll import Poll, PollAnswer from aiogram.types.pre_checkout_query import PreCheckoutQuery from aiogram.types.shipping_query import ShippingQuery from aiogram.utils import helper, deprecated from aiogram.utils.mixins import ContextInstanceMixin, DataMixin from aiogram.dispatcher.filters import Command, ContentTypeFilter, ExceptionsFilter, FiltersFactory, HashTag, Regexp, \ RegexpCommandsFilter, StateFilter, Text, IDFilter, AdminFilter, IsReplyFilter, ForwardedMessageFilter, \ IsSenderContact, ChatTypeFilter, MediaGroupFilter, AbstractFilter #from data import config from threading import Thread import schedule from aiogram import Dispatcher from aiogram import executor from datetime import datetime