import telebot from .__events__ import Event, Time, addEvent from models.user import getAllUsers from models.bot import bot from utils.calendar import ICS class CalendarFile(Event): weekdays = [6] time = [Time(21, 0)] sleep = 60*61 @staticmethod def execute() -> None: for user in getAllUsers(): if 'week_file' not in user.notifications: continue try: ics = ICS(user) except ValueError: continue path = ics.save() bot.send_document( user.id, telebot.types.InputFile(path, f'Расписание.ics'), caption='''\ Расписание на следующую неделю файлом
Как использовать файл? 1. Загрузи файл Расписание.ics и открой его 2. Телефон предложит открыть календарь - согласись 3. В приложении календаря появятся новые события, найди кнопку "Добавить все", если это не произошло автоматически
''' ) addEvent(CalendarFile)