Добавлено использование переменной окружения TIMEZONE для корректного определения временной зоны в обработке дат и времени
All checks were successful
Deploy bot / build-deploy (push) Successful in 34s

This commit is contained in:
Dmitry
2025-12-13 09:10:57 +03:00
parent 440fcc0f6a
commit 1b568a5ac6
2 changed files with 9 additions and 3 deletions

11
main.py
View File

@@ -1,6 +1,7 @@
import os
import asyncio
from datetime import datetime
from zoneinfo import ZoneInfo
from dotenv import load_dotenv
from aiogram.client.default import DefaultBotProperties
from aiogram.enums import ParseMode
@@ -23,6 +24,10 @@ TELEGRAM_TOKEN = os.getenv("TELEGRAM_TOKEN")
TRILIUM_URL = os.getenv("TRILIUM_URL")
TRILIUM_TOKEN = os.getenv("TRILIUM_TOKEN")
INBOX_NOTE_ID = os.getenv("INBOX_NOTE_ID")
TIMEZONE = os.getenv("TIMEZONE", "UTC") # Переменная окружения для timezone
# Получаем объект timezone
tz = ZoneInfo(TIMEZONE)
# создаем Trilium API клиент
ea = ETAPI(server_url=TRILIUM_URL, token=TRILIUM_TOKEN)
@@ -85,11 +90,11 @@ async def cmd_daily(message: Message, state: FSMContext):
async def process_daily_text(message: Message, state: FSMContext):
"""Обработка текста для дневной заметки"""
text = message.text
today = datetime.now().strftime("%Y-%m-%d")
today = datetime.now(tz).strftime("%Y-%m-%d")
try:
existing_content = ea.get_day_note(today)
timestamp = datetime.now().strftime("%H:%M")
timestamp = datetime.now(tz).strftime("%H:%M")
new_content = f"{existing_content}<p><strong>{timestamp}</strong>: {text}</p>"
ea.set_day_note(today, new_content)
@@ -141,7 +146,7 @@ async def handle_text_to_inbox(message: Message, state: FSMContext):
lines = text.split("\n", 1)
title = lines[0][:100] # заголовок = первая строка
content = lines[1] if len(lines) > 1 else "" # остальное — тело заметки
timestamp = datetime.now().strftime("%Y-%m-%d %H:%M")
timestamp = datetime.now(tz).strftime("%Y-%m-%d %H:%M")
# title = text[:50] + "..." if len(text) > 50 else text
try: