1.9 KiB
1.9 KiB
Исходный код затупса
Прошлая история была удалена
Запуск
cp config.example.py config.py
Далее заполнить конфиг
uv run main.py
Запускает два процесса:
eventloop(./event/__init__.py:run) для отправки уведомлений и различных cron-like задачmainloop(./bot/__init__.py:run) сам бот
Решение проблем
- Если не работает рассылка с json то надо создать папку
./tempруками - Оно вообще не запустится без бекенда расписания, при желании его можно зареверсить из этого исходного кода, либо я когда-нибудь сделаю версию без парсеров
Карта и навигатор
Карта использует статичную светлую тему и не зависит от Telegram theme
переменных. Вкладка «Навигатор» отправляет в бот проверенный JSON-запрос
route.request через Telegram.WebApp.sendData. Обработчик находится в
bot/navigator.py, а протокол — в models/navigator.py.
Скомпилированный граф встроен в web/map/data/navigator.json: этот файл
одновременно читают бот и WebView. calculate_route строит путь без сетевых
запросов; внешний API навигатора используется только как эталон при проверке.
UI получает номера этажей и индексы точек и рисует маршрут по координатам из
того же manifest. SVG этажей содержат соответствующую группу #Точки.