Add README with setup, config and cron instructions
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -1,15 +1,82 @@
|
||||
# ogaracheck
|
||||
# ogaraCheck
|
||||
|
||||
To install dependencies:
|
||||
Automatické sledování denního menu restaurace Ogarova pizza (Otrokovice) s notifikacemi přes Telegram.
|
||||
|
||||
## Co dělá
|
||||
|
||||
- Každých 15 minut od 8:00 do 14:00 (pracovní dny) načte dnešní menu
|
||||
- V 10:00 pošle aktuální menu na Telegram (nebo oznámení "dnes menu není")
|
||||
- Před 10:00 loguje změny v menu do souboru
|
||||
- Po 10:00 posílá na Telegram textové změny i informace o vyprodaných položkách
|
||||
|
||||
## Instalace
|
||||
|
||||
```bash
|
||||
bun install
|
||||
```
|
||||
|
||||
To run:
|
||||
## Konfigurace
|
||||
|
||||
```bash
|
||||
bun run index.ts
|
||||
Vytvoř soubor `config/local.ts` (je gitignored):
|
||||
|
||||
```ts
|
||||
import type { Config } from "./default"
|
||||
|
||||
const localConfig: Partial<Config> = {
|
||||
days: {
|
||||
monday: "https://otrokovice-ogarova-pizza.cz/produkty/118_pondeli",
|
||||
tuesday: "https://otrokovice-ogarova-pizza.cz/produkty/119_utery",
|
||||
wednesday: "https://otrokovice-ogarova-pizza.cz/produkty/120_streda",
|
||||
thursday: "https://otrokovice-ogarova-pizza.cz/produkty/121_-ctvrtek",
|
||||
friday: "https://otrokovice-ogarova-pizza.cz/produkty/122_patek",
|
||||
},
|
||||
telegram: {
|
||||
botToken: "váš-bot-token",
|
||||
chatId: "váš-chat-id",
|
||||
},
|
||||
// devMode: true, // ukládá HTTP debug logy do debug/
|
||||
// silent: true, // potlačí výstup na stdout
|
||||
// overrideTime: "10:00", // simuluje čas pro testování
|
||||
}
|
||||
|
||||
export default localConfig
|
||||
```
|
||||
|
||||
This project was created using `bun init` in bun v1.3.13. [Bun](https://bun.com) is a fast all-in-one JavaScript runtime.
|
||||
## Manuální spuštění
|
||||
|
||||
```bash
|
||||
bun run src/index.ts
|
||||
```
|
||||
|
||||
## Cron
|
||||
|
||||
Přidej do `crontab -e` — každých 15 minut od 8:00 do 13:45 v pracovní dny:
|
||||
|
||||
```cron
|
||||
*/15 8-13 * * 1-5 cd /home/lister/workspace/ogaraCheck && /home/lister/.bun/bin/bun run src/index.ts 2>&1 | systemd-cat -t ogaraCheck
|
||||
```
|
||||
|
||||
Sledování logů:
|
||||
|
||||
```bash
|
||||
journalctl -t ogaraCheck -f
|
||||
journalctl -t ogaraCheck --since today
|
||||
```
|
||||
|
||||
## Struktura projektu
|
||||
|
||||
```
|
||||
config/
|
||||
default.ts # výchozí konfigurace (commitováno)
|
||||
local.ts # lokální přepisy — token, URL (gitignored)
|
||||
src/
|
||||
index.ts # vstupní bod, časová logika
|
||||
fetcher.ts # HTTP klient s cookie jar a dev logováním
|
||||
parser.ts # cheerio parser + detekce dostupnosti menu
|
||||
differ.ts # porovnání stavu menu mezi spuštěními
|
||||
logger.ts # zápis změn do logs/YYYY-MM-DD.log
|
||||
telegram.ts # odesílání zpráv přes Telegram Bot API
|
||||
logs/ # denní logy textových změn (gitignored)
|
||||
state/ # stav mezi spuštěními — reference, lastKnown (gitignored)
|
||||
debug/ # HTTP debug logy při devMode: true (gitignored)
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user