Telegram bot + Mini App (WebApp)
- Map: auto-request geolocation on view enter (no manual click needed) - Map: pulse animation on 'Share location' button (calls attention) - Map: better error message on permission denied (with link to settings) - Map: 'loading...' state on radius change - Chat: ✓ / ✓✓ read marks on own messages (from m.read_at) - Chat: WS handler for 'message_read' event (real-time update) - Chat: enterkeyhint='send' on input (mobile keyboard send button) - Chat: send on Enter key (no shift) - CSS: btn-pulse animation - CSS: read-tick styles |
||
|---|---|---|
| public | ||
| README.md | ||
BuhApp Telegram WebApp
Mini App (WebApp) для Telegram, открывается по кнопке в боте @BuhAppBot.
Запуск
Статика (HTML/JS) раздаётся с https://app.buhapp.mygoodservice.ru/.
Структура
buhapp-telegram/
├── public/
│ ├── index.html — главная страница (карта/чаты/профиль/настройки)
│ ├── login.html — онбординг (если запустили без Telegram)
│ ├── css/
│ │ └── app.css — стили
│ └── js/
│ ├── api.js — HTTP клиент + TG SDK
│ ├── tg.js — обёртки Telegram WebApp SDK
│ ├── app.js — главный контроллер
│ └── views/
│ ├── map.js
│ ├── chats.js
│ ├── chat.js
│ ├── profile.js
│ ├── review.js
│ └── settings.js
└── README.md
Telegram Bot
- Создай бота через @BotFather →
/newbot - Установи WebApp URL:
/setdomain→app.buhapp.mygoodservice.ru - Скопируй токен →
TELEGRAM_BOT_TOKENв.envбэкенда
Деплой
Все файлы из public/ монтируются в nginx (location /).
Бэкенд читает initData от Telegram и авторизует через POST /api/v1/auth/telegram.